我正在阅读MYSQL refman-5.6.pdf。我很困惑。
mysql_stmt_bind示例代码仅显示? sytnax。同时Connector / J示例包含:
//
// Alternatively, set a parameter using
// the parameter name
//
cStmt.setString("inputParameter", "abcdefg");
如果命名参数不是Connector / J的扩展函数,那么MYSQL命名参数的正确语法是什么?
答案 0 :(得分:0)
CallableStatement 还支持按名称设置参数:
因此,这特定于CallableStatement
,用于调用存储过程,并且特定于MySQL的JDBC实现。这不是JDBC规范的标准。
此扩展程序仅适用于CallableStatement
,而不适用于PreparedStatement
。
重新评论:
是的,这是正确的,MySQL不支持命名参数,只支持位置参数。
像Connector / J CallableStatement和PHP的PDO库这样的客户端接口实际上需要做一些额外的工作来模仿命名参数。