我试图在postgres表中做一个简单的插入,但是遇到一个错误,我试图插入的值被解释为列名。
INSERT INTO "imageTagBusinessMainCategory" (id, businessMainCategory) VALUES (DEFAULT, "auto dealer")
其中id设置为主键,并且自动递增,而不是null。这些是我在phpPgAdmin中设置表格时打勾的框。
我却收到此错误:
ERROR: ERROR: column "auto dealer" does not exist Query = INSERT INTO "imageTagBusinessMainCategory" (id, businessMainCategory) VALUES (DEFAULT, "auto dealer")
我已经将表名放在双引号中,正如我在这里阅读的那样。
并DEFAULT按照我在这里阅读的方法自动增加ID 。
DEFAULT
有任何想法吗?谢谢!
使用'auto dealer'代替。PostgreSQL解释"为标识符的'引号和字符串的引号。
'auto dealer'
"
'
还:
如果这是一个新项目,那就不要使用大小写混合的表格;这是以后沮丧的原因。不能在SQL语句中使用任何大小写,必须同时引用标识符名称并正确区分大小写。
不需要指定id/ DEFAULT,而只是要求它执行本来应该做的事情。我还没有遇到一个DBMS,该DBMS要求您包括columnName/DEFAULT如果希望它在列中放入默认值,所以我认为这多余的KV对不会使以后阅读您的代码的人更清楚。
id
columnName