你好,我正在尝试插入到表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) |
我想我遗漏了一些非常琐碎的东西,我尝试了一些其他的列名,其中一些工作正常,一些不工作。我很困惑。PostgreSQL是否对插入查询的第一个语法工作的列名有限制?
编辑:
在这里检查Girdon Linoff的answer,因为Frank Heikens指出其他不带引号的列名是小写。
小写列是PostgreSQL中的标准列,也可以不使用引号
3条答案
按热度按时间7fyelxc51#
如果使用双引号定义列,则在引用列时通常需要使用双引号:
我建议您删除
CREATE TABLE
语句中列名的双引号。如果名称全是小写,则不需要双引号。
yjghlzjz2#
请尝试在列名中使用双引号
kuarbcqp3#
我有我的故事与我的数据库为Qgis + POSTGRES数据我尝试更新我的表与代码通过Navicate更新“MangLuoi”.“A_Lam_D310”设置“MangLuoi”.“A_Lam_D310”.“Nguon”='Lâm'和错误:SQL]更新“MangLoi”。“A_Lam_D310”设置“MangLoi”。“A_Lam_D310”。“Nguon”='Lâm“
[Err]错误:关系“A_Lam_D310”的列“MangLuoi”不存在行1:更新“芒罗”。“A_Lam_D310”设置“芒罗”。“A_Lam_D310”。...
现在我尝试更新“MangLuoi”。“A_Lam_D310”设置“Nguon”='Lâm'
IT show ok:))通过消息:时间:0.035秒
受影响的行:29
感谢您的分享和解答。