insert into tester3 (UN0,UN1) values ( 1,'jishnu1');
但
insert into tester3 values ( 1,'jishnu1');
工作正常.
mydb=# CREATE table tester3mydb-# (mydb(# "UN0" integer,mydb(# "UN1" VARCHAR(40)mydb(# );CREATE tablemydb=# insert into tester3 (UN0,'jishnu1');ERROR: column "un0" of relation "tester3" does not existmydb=# \d tester3 table "public.tester3" Column | Type | ModifIErs--------+-----------------------+----------- UN0 | integer | UN1 | character varying(40) |
我想我错过了一些非常微不足道的东西,我尝试了其他一些列名称,其中一些工作正常,一些不起作用.我很迷惑. Postgresql对列名的限制是否适用于插入查询的第一种语法?
编辑:
正如Gordon Linoff所建议的那样使用双引号解决了这个问题.
插入tester3(“UN0”,“UN1”)值(1,’jishnu1′);工作良好
并且正如Frank Heikens所指出的其他列名称在没有引号的情况下工作,其中小写.
如果使用双引号定义列,则在引用该列时需要使用它们:Lower case column is the standard within Postgresql and also works without quotes
insert into tester3 ("UN0","UN1") values ( 1,'jishnu1');
我建议你从CREATE table语句中的列名中删除双引号.
总结以上是内存溢出为你收集整理的错误:关系列不存在PostgreSQL,无法运行插入查询全部内容,希望文章能够帮你解决错误:关系列不存在PostgreSQL,无法运行插入查询所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)