我们可以在PostgreSQL中使用“name”作为列名吗?
我已经尝试过,表格成功创建了。当我对表或表数据执行任何操作时会出现任何错误吗?
名称是保留关键字吗?
更新:试过这个
select * from pg_get_keywords()
发现“名字”是无保留的。还想确认我是否可以使用该名称?
答案 0 :(得分:1)
"名称"是对象名称的内部类型
是的 - 你可以:
t=# create table "b@dPract!c3" ("name" text, "date" timestamptz);
CREATE TABLE
t=# insert into "b@dPract!c3" values('wrong',now());
INSERT 0 1
t=# select * from "b@dPract!c3";
name | date
-------+-------------------------------
wrong | 2018-05-09 08:38:53.612212+01
(1 row)
你应该这样做吗?当然不是!使用数据类型名称命名列很容易,但实际上很糟糕