mysql prepare疑问

mysql prepare疑问,第1张

vkn和vsfz都是自定义变量吗?那在使用的时候也要带上@:

set @vsk=concat('select bj from ',@vkn,' where sfz=',@vsfz,'')

好处:

(1)解析查询只有一次

(2)执行一些查询优化步骤只有一次

(3)通过二进制协议发送参数比送他们为ASCII文本更有效

比如DATE,对于准备之后,发送日期只用3个字节如果没有准备,日期必须以字符串的形式发送,需要数据库方再解析,这样需要发送10个字节。

(4)只有参数(不是整个查询文本)需要为每个执行要发送

(5)的MySQL直接存储parameteres到服务器上的缓冲区

(6)安全性也有帮助,就没有必要逃避或引用值。

坏处:

(1)本地到一个连接,以便另一个连接不能再使用

(2)不能使用MySQL查询缓存(5.1版本之前)

(3)不总是更有效,如果你使用它只有一次

(4)存储函数中不能使用(存储过程是可以的)

(5)有可能会导致“泄漏”如果你忘记释放它


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存