Search Postgresql Archives

Re: drop table if exists <VIEW_NAME>;

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/19/2012 07:54 PM, Marc Mamin wrote:
hello,

I've found a small logical issue while writing a migration script:

create table vtest (foo int);

create view vtest_v as select * from vtest;

drop table  if exists vtest_v;

ERROR:  "vtest_v" is not a table

drop view  if exists vtest;

ERROR:  "vtest" is not a view

this may be seen as a nice hint, but in my own opinion

DROP ... IF EXISTS should not throw an error for objects that do not exist.

... but they do exist. There is another object with that name. It isn't clear if the script author's intention is to DROP the object despite the type mismatch, or to ignore it because it's not the type of object they specified to drop.

When something is ambiguous or unclear, PostgreSQL will tend to report an error for safety.

--
Craig Ringer


--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux