**没有主键的表A下存在触发器,for delete类型的。此时删除数据会报错“已更新或者删除的行值要么不能使该行成为唯一行,要么改变了多个行(2行)”。这个问题的解决办法!**

我遇到的这个问题是:在一个表下建立触发器,当删除表中的数据时,触发器判断能否删除,不能删除的给出提示,能删除的,将删除的数据备份到表 DEL_A中,就遇到了 这个问题。
我的方法简单粗暴,就是在表A中加入一列自增主键字段。但是,如果这个表中已经有数据了,你是加不上去的。怎么办呢?
首先,新建一个与表A结构一样的表B,将表A的数据导入表B中
其次,删除触发器,将表A中的数据清空,修改表A的表结构加上 自增主键字段 jlh
再次,将表B中的数据再导入表A中,这时候表A中的每条记录的 jlh 字段是自增的了
最后,将删除的触发器再 写回来。这时候就可以删除了!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值