MySQL存储过程中使用动态sql语句

MySQL存储过程中使用动态sql语句,第1张

MySQL的存储过程在5.0后的版本中支持了动态sql语句。也就是说我们可以通过传的参数不同拼接查询不同的表或执行不同的语句。

如:需要根据不同的游戏ID去增加 TGameData_ID 表中玩家对应的金币数。

如:需要根据不同的游戏ID去 TGameData_ID 表中查询玩家对应的金币数,数量足够减去,数量不够不减。

鉴于动态处理语句目前不能在MySQL的触发器或者存储函数中使用, 但是可以在存储过程里面使用。那么我们可以用通用的方法,但是可能要修改应用的部分SQL代码,不过改动量很小。

假如我们要使用表TB, 然后依次关联TB1,TB2,… , TBN进行删除。我们可以把做处理的动态语句写到存储过程里面,然后在对表TB进行写 *** 作(INSERT,UPDATE,DELETE)时, 加上对存储过程的调用即可。

我们来举个例子:

Delete from tb where id = 2本来只有这条语句,可我们修改为:

Delete from tb where id = 2call sp_delete_case()


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

原文地址: http://outofmemory.cn/zaji/8349574.html

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

发表评论

登录后才能评论

评论列表(0条)

保存