Heroku上的Postgres 9.3.2。
可以肯定的是我只是个白痴,但是我似乎无法弄清楚为什么我的语法错误。
db=> \dt List of relations Schema | Name | Type | Owner --------+------------+-------+---------------- public | device | table | admin public | post | table | admin public | user | table | admin (3 rows) // why does this fail? db=> drop table user; ERROR: syntax error at or near "user" LINE 1: drop table user; // does the right thing db=> drop table error; ERROR: table "error" does not exist
User是Postgres中的保留关键字。如果要引用名为 user 的 实际 表,则必须将其用引号引起来: __
User
DROP TABLE "user";
如果可以的话,最好不要使用保留关键字作为表名。通常最终会在以后产生一些奇怪的问题。 Users可能是一个更好的表名。
Users