开发者

PhpPgAdmin Syntax error when creating View

I am attempting to create a View in PhpPgAdmin (PostGreSQL db) which has the following SQL statement:

DELETE FROM myTable WHERE myTable.error IS NULL;

PhpPgAdmin gives me the following error:

ERROR: syntax error at or near "DELETE" at character 59 In statement: CREATE OR REPLACE VIEW "Schema1"."Delete empty errors" AS DELETE FROM myTable WHERE myTable.error IS NULL;

As far as I can tell this SQL statement is valid, and I have delete privileges for the table. Is the DELETE statement not开发者_开发技巧 allowed in Views? Any ideas what I am doing wrong?


Views are used to display the data from SELECT statements only (usually when the SELECT is complex). Views cannot contain DELETES, UPDATES, or INSERTS.

Perhaps you want a function?

EDIT: As OMG Ponies points out, you can have updateable views, but thats where you would issue a DELETE to an existing view and then use a RULE to rewrite the query as a DELETE.

And please, please don't wrap a function call to do a DELETE as a side effect in a view. Its unexpected and Jesus shoots a puppy every time this happens.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜