日期:2014-05-18  浏览次数:20656 次

外键约束,导致不能修改表怎么办
我有两个表,
stuinfo(学生信息表):
学号(主键),姓名,性别,班级,专业

grade(学生成绩表):
学号(从信息表引用学号),姓名,科目,成绩
学号和科目组成复合主键

现在我要用改一个学生的学号。
语句如下:
update stuinfo
set stuid='045'
where stuid = '013'


它报错说:
消息 547,级别 16,状态 0,第 1 行
UPDATE 语句与 REFERENCE 约束"FK__grade__stuID__108B795B"冲突。该冲突发生于数据库"grade",表"dbo.grade", column 'stuID'。
语句已终止。


怎么改学号呢?

------解决方案--------------------
你要先删掉grade表中的stuid = '013'的记录
才能执行你的修改
------解决方案--------------------
就是要先删掉约束