postgre 主键_PostgreSQL:主键

根据PostgreSQL文档,一个表最多只能有一个主键(虽然它可以有许多唯一和非空约束) .

CREATE TABLE products (

product_no integer PRIMARY KEY,

name text,

price numeric

);

那么当你将两列作为主键时会发生什么呢?

CREATE TABLE example (

a integer,

b integer,

c integer,

PRIMARY KEY (a, c)

);

“主”主键是“a”还是只是为a和c设置的唯一/非空约束? postgresql如何知道哪一个是主键?

任何帮助都会很棒 . 谢谢

以下会产生什么?主键是否仍然是a和c的组合,或者是主键,而c只是一个唯一/非空的约束?

CREATE TABLE example (

a integer PRIMARY KEY,

b integer,

c integer,

PRIMARY KEY (c)

);

经过测试,以上产品:

ERROR: multiple primary keys for table "example" are not allowed

LINE 5: PRIMARY KEY (c)

而第三种情况可能与上述情况相同:

CREATE TABLE example (

a integer PRIMARY KEY,

b integer,

c integer PRIMARY KEY

);

经过测试,以上产品:

ERROR: multiple primary keys for table "example" are not allowed

LINE 4: c integer PRIMARY KEY

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值