当我尝试在数据库上运行简单的选择时,收到以下错误:
select count(id) as rows from table-name
Error SQL (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 'rows from table-name' at line 1
当我运行相同的命令时:
select count(id) as `rows` from table-name
它工作正常。
问题是第一个代码正在我的生产环境中运行,我无法更改应用程序的所有 SQL,我相信这与排序规则有关,但我尝试了几个,问题仍然存在。
MySQL version on production is 5.6 and dev is 8.0.3
最佳答案
发生这种情况是因为rows
是MySql中的保留关键字。然而
SELECT COUNT(*) FROM ROWS
在我的系统中运行良好。可能你的本地系统是windows,服务器使用的是linux。
现在更改此设置取决于代码的组织方式。现在开发人员使用框架。所以你已经使用了一个好的 PHP 框架,那么你不必担心,只需用新的值更新表变量值并重命名数据库中的表,一切都会顺利。
如果您无法做到这一点,请将整个代码下载到本地服务器。并使用一些好的编辑器,即 Sublime 。首先查找整个应用程序中使用的 rows
关键字,然后如果您觉得安全,则只需使用查找和替换。砰!并再次上传代码。应该可以再次正常工作。
关于php - 错误 SQL (1064) : You have an error in your SQL syntax; Error after alias,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47167576/