1

我在java中找不到以下查询的正确语法,请帮助我。

String st = "SELECT COUNT('"+id+"') FROM '"+selected_table+"' ";

String st = "SELECT COUNT('"+id+"') FROM '"+selected_table+"'";

我认为错误是如何结束查询......

由于我收到错误检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“客户”附近使用正确的语法

当我选择客户表时

4

4 回答 4

2

您想在对象名称周围使用反引号而不是单引号。

String st = "SELECT COUNT(`"+id+"`) FROM `"+selected_table+"` ";
于 2012-07-25T20:56:31.297 回答
0

表名应该用刻度线 (`) 括起来,而不是单引号 ( ')

String st = "SELECT COUNT('"+id+"') FROM `"+selected_table+"`";
                                         ^ use tick marks   ^
于 2012-07-25T20:56:38.273 回答
0

id和的值是selected_table多少?发送到数据库的实际查询字符串是什么?

此外,使用字符串连接手动构建这样的查询也不是一个好主意。这使得一个错误很容易导致一个巨大的安全漏洞,而且尝试保护这种方法比只做正确的方法要困难得多(也有风险)。

于 2012-07-25T20:57:28.653 回答
0

从您的查询中可以看出,您将 id 和 selected_table 括在单引号中......例如,SELECT COUNT('ID') FROM 'CUSTOMER'这是错误的。应该在 backtics ``或者什么都没有......

于 2012-07-25T20:59:14.337 回答