SQL 语句删除问题同时删除两个表内关联的数据

SQL 语句删除问题同时删除两个表内关联的数据,第1张

一个sql语句是没办法执行两个删除 *** 作,如果你要实现上面的功能,有以下几个选择:

1.用外键关联删除,把B表的uid设成外键关联A表的ID,并关联删除 *** 作

2.用存储过程,用事务来处理实现;

望采纳!

数据库中删除两张表相同的数据要根据id相同来删除。

解决办法:

1、在设计数据库表时,通过设置级联删除 *** 作来完成。

2、可以写触发器完成 *** 作。

3、先删除主表的数据行,然后根据关联的外键值来删除附表中的相应行数据即可。

具体方法:

作为外键暂且叫它主表,Delete from Main Where id=@id

则要先删除子表当中 Delete from Detail where MainId = @id

为了保证数据完整性,最好将上面的 *** 作包含在一个事务中,如果两个语句影响的行数都大于零,则提交,否则回滚。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10828520.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存