mysql 预处理语句_预处理语句

MySQL 8.0支持服务器端预处理语句。这种支持利用了有效的客户端/服务器二进制协议。对参数值使用带占位符的预处理语句具有以下好处:每次执行语句时解析语句的开销都较小。通常,数据库应用程序处理大量几乎相同的语句,仅对子句中的文字或变量值进行更改,例如WHERE查询和删除,SET更新和VALUES插入。

防止SQL注入攻击。参数值可以包含未转义的SQL引号和定界符。

应用程序中的预处理的语句

您可以通过客户端编程接口使用服务器端预处理的语句,包括用于C程序的MySQL C API客户端库,用于Java程序的MySQL Connector / J和用于使用.NET技术的程序的MySQL Connector / NET。例如,C API提供了一组函数调用,这些函数构成了其预处理的语句API。请参见“ C API预处理语句”。其他语言接口可以通过在C客户端库中进行链接来为使用二进制协议的预处理的语句提供支持,其中一个示例就是mysqli extension,在PHP 5.0及更高版本中可用。

SQL脚本中的预备语句

提供了预处理的语句的替代SQL接口。此接口的效率不如通过预预处理的语句API使用二进制协议有效,但不需要编程,因为它可以直接在SQL级别使用:如果没有可用的编程接口,则可以使用它。

您可以从任何可以将SQL语句发送到要执行的服务器的程序(例如mysql客户端程序)中使用它。

即使客户端使用旧版本的客户端库,也可以使用它,只要您连接到运行MySQL 4.1或更高版本的服务器即可。

预处理语句的SQL语法旨在用于以下情况:在对预备语句进行编码之前,先对其进行测试。

在无权访问支持它们的编程API时使用预处理的语句。

使用预处理的语句以交互方式解决应用程序问题

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值