sql server的主键与外键问题

来源:百度知道 编辑:UC知道 时间:2024/05/21 13:58:10
我今天刚学sql server的主键外键,觉得有点不懂的是:书上说他们是强制约束,不能乱改.可如果我要改主键的某列值应该怎么办呢?请大家给我讲讲他们之间的关系到底是怎么样的?主表和子表的关系我也搞不太懂,谢谢大家了~

这么和你说吧,主键具有唯一性,也就是不能重复
外键是和其他表联系的,也就是和其他表的主键相关联,通信.
都可以改
改主键时,要注意唯一,不能出现重复值
改外键值时,将会使这条修改了外键值的记录和其他表失去关联.

诲人不倦:
有表:学生(学号,系代码), 系(系代码,系名,……)
学生表中,学号是主键,系代码是一个属性,但不是主键,而是系表中的主键;那么系代码在学生表中就是外键;
在学生表中插入/修改数据时,系代码的值必须是系表中已存在的值。这就是约束。

可以改,只要不是重复值就行。
主键是一个表实体完整性的保证,就是说用它来保证能够唯一的表示一个实体。所以主键值不能重复。
外键是相对于两个表的。在另一个表中也是主键。用于保证参照完整性——控制两个表中的同一项数据一致。

对于我这个sql高手(呵呵)来说主外健好麻烦,先要把外健表中的关于有主健信息一改,再去改主健列内容,就这样

先删除子表数据,再修改主表数据