DELETE 语句与 REFERENCE 约束"FK_T_score_T_student_number"冲突。该冲突发生于数据库"xx",表"dbo.T_score", column 'S_number'。
语句已终止。
我想删除xx数据库T_student表内的数据,可是delete的时候,总报上面的错误,是数据表内的数据被锁定不让删除吗??怎么样才能更改一下,请高手们帮忙指教一下,谢谢了,在线昐回....
UPDTAE、INSERT都没有问题!

解决方案 »

  1.   

    先要删除T_score的数据吧。。再删除student
      

  2.   

    先删除dbo.T_score中指定的条件的记录
    然后再删除T_student中指定的条件的记录
    或者将约束FK_T_score_T_student_number先删除
      

  3.   

    外键约束问题先删除与T_student表相关的从表的数据 如T_score
    再删除主表T_student内数据
      

  4.   

    --try
    alter table T_score
    nocheck constraint FK_T_score_T_student_number
      

  5.   

    补充:在T_student中有一个触发器,实现的功能是在T_student表中删除数据时,在T_score搜索对应的学号在自动删除T_score表中对应的记录T_score表中的数据可以delete但现在触发器在T_student表中,所以delete语句先要删除T_student的数据T_student 表中的number字段是主键
      

  6.   

    alter table T_score add foreign key (S_number) references T_student(S_number) on delete cascade
      

  7.   

    用级联怎么写语句啊??试了一下,把T_student中的外键删除了,可以实现上面的效果可是外键删除了,2个表间的对应关系没有了吧????还是有点迷糊,解决一个问题又出来一个问题。才学SQL有很多地方不精,想找个SQL厉害的师傅带带我,方便的朋友请加我QQ:75825016 谢谢了!
      

  8.   

    alter table T_score add foreign key (S_number) references T_student(S_number) on delete cascade 
    这个就是创建级联删除的语句,创建外键的时候.在删除主记录的时候删除对应外键的明细.
    就是说删除这个学生信息的时候同时也删除他的成绩信息.还有级联更新on update cascade.
    学生的ID更改的时候同时也更改成绩单上的学生ID.