PostgreSQL添加各种约束语法操作
  • 作者:admin
  • 发表时间:2021-05-01 07:51
  • 来源:未知

本文主要介绍PostgreSQL中添加各种约束语法的操作,有很好的参考价值,希望对大家有所帮助。和边肖一起来看看

1.添加主键

1替代表商品添加主键(sid);

2.添加外键

1替换表订单添加外键(goods_id)引用商品(sid)更新级联删除级联;

在更新cascade:时,当参考线更新时,参考线自动更新;

更新限制:时,引用的行禁止更新;

删除时,参考线会删除cascade:参考线也会删除。

在删除限制:上,不能删除被引用的行;

3.删除外键

1替代表订单drop constraint orders _ goods _ id _ fkey;

4.添加唯一约束

1替代表商品添加约束条件unique _ goods _ sid unique(sid);

5.删除默认值

1替换表商品更改列sid删除默认值;

6.修改字段的数据类型

1替换表商品更改列sid类型字符变化;

7.重命名字段

1替换表商品,将列sid重命名为ssid

补充:PostgreSQL——主键约束和唯一性约束的区别

在标引的过程中,遇到了一些问题,在网络上搜索基础知识。我一直以为唯一索引是主键,至少在pg里是这样。

1)主键约束(主键)

1)主键用于唯一标识表中的每条记录,一列或多列可以定义为主键。

2)无法(或难以)更新。

3)主键列上没有两行具有相同的值(即重复的值),因此不允许为空。

4)主要健康可以作为外部健康,唯一指标不允许。

2)唯一性约束

1)唯一性约束用于限制不受主键约束的列上数据的唯一性。它用作访问某一行的可选方式,并且可以在一个表上放置多个唯一性约束。

2)只要是唯一的就可以更新。

3)即表中任意两行在指定列不允许有相同的值,允许为NULL。

4)多个独特的唐山软件开发约束可以放在一个表上。

3)唯一索引

创建唯一索引可确保任何生成重复键值的尝试都会失败。

唯一性约束和主键约束之间的区别:

(1)唯一性约束允许该列为null值,而主键约束更为严格,既不允许重复,也不允许NULL值。

(2)创建唯一性约束和主键约束时,可以创建聚集索引和非聚集索引,但默认情况下,主键约束生成聚集索引,而唯一性约束生成非聚集索引

约束和索引,前者用于检查数据的正确性,后者用于优化数据查询,目的不同。

唯一性约束不同于唯一索引:

(1)创建唯一约束将在Oracle中创建一个约束以及与该约束对应的唯一索引。

(2)创建唯一索引只会创建唯一索引,而不会创建约束。

也就是说,唯一约束是通过创建唯一索引来实现的。