MySQL 查询中的问题由于 Table 名称 'CASE'
issue in MySQL query due Table name 'CASE'
我已经从 code canyon 安装了一个脚本,它有一个名为 Case 的 table。
当我尝试执行查询时
SELECT COUNT(*) as total FROM case
它显示以下错误
Static analysis:
1 errors were found during analysis.
Unexpected end of CASE expression (near "" at position 0)
SQL query: Documentation
SELECT COUNT(*) as total FROM case
MySQL said: Documentation
#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 'case' at line 1
我知道大小写是 MYSQL 的保留字,但现在我该如何解决这个问题,因为我无法更改 table 名称,也无法将其修改为整个脚本。
case
对于 table 或列名来说是一个非常糟糕的名称。它显然是一个 SQL 关键字。但是,如果您无法修复它,请使用反引号:
select count(*)
from `CASE`
对名称进行转义并告诉 MySQL 将其视为某物的名称,而不是关键字。
我鼓励您弄清楚如何修复数据库。我通常以复数命名 tables -- 例如 cases
。首先,它们 是 复数,因为它们几乎总是不止一行。副作用是复数与更少的关键字冲突。
我已经从 code canyon 安装了一个脚本,它有一个名为 Case 的 table。
当我尝试执行查询时
SELECT COUNT(*) as total FROM case
它显示以下错误
Static analysis:
1 errors were found during analysis.
Unexpected end of CASE expression (near "" at position 0)
SQL query: Documentation
SELECT COUNT(*) as total FROM case
MySQL said: Documentation
#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 'case' at line 1
我知道大小写是 MYSQL 的保留字,但现在我该如何解决这个问题,因为我无法更改 table 名称,也无法将其修改为整个脚本。
case
对于 table 或列名来说是一个非常糟糕的名称。它显然是一个 SQL 关键字。但是,如果您无法修复它,请使用反引号:
select count(*)
from `CASE`
对名称进行转义并告诉 MySQL 将其视为某物的名称,而不是关键字。
我鼓励您弄清楚如何修复数据库。我通常以复数命名 tables -- 例如 cases
。首先,它们 是 复数,因为它们几乎总是不止一行。副作用是复数与更少的关键字冲突。