鉴于动态处理语句目前不能在MySQL的触发器或者存储函数中使用,但是可以在存储过程里面使用。那么我们可以用通用的方法,但是可能要修改应用的部分SQL代码,不过改动量很小。
假如我们要使用表TB,然后依次关联TB1,TB2,…,TBN进行删除。我们可以把做处理的动态语句写到存储过程里面,然后在对表TB进行写操作(INSERT,UPDATE,DELETE)时,加上对存储过程的调用即可。
我们来举个例子:
Deletefromtbwhereid=2;本来只有这条语句,可我们修改为:
Deletefromtbwhereid=2;callsp_delete_case();