嗨,我正试图插入一个表tester3,当我使用语法时,它失败了
insert into tester3 (UN0, UN1) values ( 1, 'jishnu1');
但是
insert into tester3 values ( 1, 'jishnu1');
工作正常.
mydb=# CREATE TABLE tester3
mydb-# (
mydb(# "UN0" integer,
mydb(# "UN1" VARCHAR(40)
mydb(# );
CREATE TABLE
mydb=# insert into tester3 (UN0, UN1) values ( 1, 'jishnu1');
ERROR: column "un0" of relation "tester3" does not exist
mydb=# \d tester3
Table "public.tester3"
Column | Type | Modifiers
--------+-----------------------+-----------
UN0 | integer |
UN1 | character varying(40) |
我想我遗漏了一些非常琐碎的东西,我try 了其他一些列名,其中一些很好用,一些不起作用.我很困惑.PostgreSQL是否对insert查询的第一种语法适用的列名有限制?
Edit :
签出Girdon Linoff answer,正如Frank Heikens指出的,其他没有引号的列名在lower case中.
小写列是PostgreSQL中的标准,也可以不加引号地使用