ZF2中的SQL查询语法错误
问题描述:
我在我的应用程序中使用zend框架2。我想简单地执行这个查询...ZF2中的SQL查询语法错误
$sql = "INSERT INTO tbl_group(group_name, group_order, version_id_fk, group_code)
SELECT group_name, group_order, {$newVersionId}, $this->getServiceLocator()->get('commonService')->randomMD5() FROM tbl_group
WHERE version_id_fk = {$versionArray['version_id_pk']}";
但我发现了这个错误:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')->get('commonService')->randomMD5() FROM tbl_group WHERE version_id_fk ' at line 2
任何人都可以建议我如何解决这一问题?
谢谢!
答
有多个错误,但一个错误消息指的是由于在你的服务定位器调用缺少括号。
它试图执行您的PHP代码为SQL。
{$ this-> getService ...}
你有''。 {RAND()})'在你的查询中。当然,它不能被解析 –