bug with dump sql to recreate view
От | Laura Moloney |
---|---|
Тема | bug with dump sql to recreate view |
Дата | |
Msg-id | 3E916ACE.23011.D261DF@localhost обсуждение исходный текст |
Ответы |
Re: bug with dump sql to recreate view
|
Список | pgsql-bugs |
I have 3 servers running postgres. Two are version 7.1.3 and the other is 7.2.3. I had run pgdump on a database on the 7.1.3 system to create a sql text file of the structure and data. I then ran that sql text file onto the other 7.1.3 system to create the database there. All SQL ran fine except for one statement which creates a view. The sql that created the original view was: CREATE VIEW INCUNRESOLVEDV1 AS SELECT DISTINCT TRACKID FROM INCIDENT WHERE STATUS = 'o' EXCEPT SELECT DISTINCT TRACKID FROM INCIDENT_DETAIL WHERE LOWER(RESOLVEDYN) = 'y' ; The sql that was generated from pgdump was: CREATE VIEW "incunresolvedv1" as SELECT DISTINCT incident.trackid FROM incident WHERE (incident.status = 'o'::"varchar") ORDER BY incident.trackid EXCEPT SELECT DISTINCT incident_detail.trackid FROM incident_detail WHERE (lower((incident_detail.resolvedyn)::text) = 'y'::text) ORDER BY incident_detail.trackid; The error I got when I ran the pgdump sql was: PostgreSQL said: ERROR: parser: parse error at or near "EXCEPT" Your query: CREATE VIEW "incunresolvedv1" as SELECT DISTINCT incident.trackid FROM incident WHERE (incident.status = 'o'::"varchar") ORDER BY incident.trackid EXCEPT SELECT DISTINCT incident_detail.trackid FROM incident_detail WHERE (lower((incident_detail.resolvedyn)::text) = 'y'::text) ORDER BY incident_detail.trackid I found that if I removed the order by clauses, then the sql would execute correctly. I also tried to run the pgdump sql on our 7.2.3 server to see if it had been resolved in a newer release, but the same error occurred. Hope my explanation was clear enough. I can certainly get around it my running the original SQL, but I thought you might be interested in it if in fact it was a bug. Thanks, Laura Laura Moloney Theradex CN5257 Princeton, NJ 08543 (609) 799-7580 (Phone) (609) 799-4148 (Fax) LMOLONEY@THERADEX.COM (email)
В списке pgsql-bugs по дате отправления: