我已经为插入构建了mysql PDO语句,如下所示:
insert into user (id_user, email, password, name, uuid) values (:id_user, :email, :password, :name, uuid() )
注意:最后一个uuid()没有冒号,因为我需要Mysql在插入时执行函数
这将返回异常:
SQLSTATE[HY093]:无效的参数编号:绑定变量的数量与令牌的数量不匹配
如何使用PDO传递mysql内部函数"uuid()"
?
感谢
占位符不是INSERT查询语法的一部分,正如您可能认为的那样。
当使用PDO准备的语句时,的SQL语法保持完全相同While占位符只能用于表示外部数据。
因此,只要您的SQL查询中有四个占位符,您就必须将个 而任何内部函数都不需要"传递"到任何地方或绑定它。它已经就位,与任何PDO代码都没有关系。