不同编程语言中如何开启客户端的PrepareStatement
背景信息
大多数数据库中,依靠服务器端预处理语句可以提高数据库性能。AnalyticDB for MySQL数据库自身具备强大的查询计算能力和计划缓存功能,无需依靠服务器端预处理语句获得大部分性能优势。
AnalyticDB for MySQL数据库目前不支持服务器端预编译协议,大部分开发语言中支持通过配置开启客户端预编译(PrepareStatement),也称之为客户端准备语句仿真或参数插值。
本文将介绍如何在不同编程语言中开启客户端的PrepareStatement。
MySQL Connector/J (JDBC) driver
在MySQL Connector/J (JDBC) driver中开启PrepareStatement时,需要配置useServerPrepStmts=false
参数,详情请参见Configuration Properties for Connector/J。
注意:无需配置
useCursorFetch=true
参数,否则将覆盖useServerPrepStmts=false
参数,无法开启PrepareStatement。
MariaDB Connector/J
在MariaDB Connector/J中开启PrepareStatement时,需要配置useServerPrepStmts=false
参数,详情请参见About MariaDB Connector/J。
Go MySQL driver
在Go MySQL driver中开启PrepareStatement时,需要配置interpolateParams=true
参数,详情请参见Go-MySQL-Driver。
PDO
在PDO中使用PrepareStatement时,需要配置PDO::ATTR_EMULATE_PREPARES=TRUE
参数,详情请参见setAttribute。
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论