我正在处理jsp代码,数据库连接有问题。我的数据库中有两个表,ANNSECSEC_ID表和primary key表中分别是auto incrementSEC。我想在代码中使用此查询

(SELECT
   DATE,
   MESSAGE
FROM ANN
WHERE ANN.SEC_ID = SEC.SEC_ID;)

但是当我运行我的程序时
此错误:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException

最佳答案

问题是把桌子连起来。您可以使用以下选项:

SELECT
   A.DATE, # Assuming both DATE and MESSAGE are in ANN table
   A.MESSAGE
FROM
   ANN AS A
   JOIN SEC AS S ON (A.SEC_ID = S.SEC_ID);

(为了提高性能和可读性,我使用了alias)
记住你也可以:
SELECT
   A.DATE, # Assuming both DATE and MESSAGE are in ANN table
   A.MESSAGE
FROM
   ANN AS A, SEC AS S
WHERE A.SEC_ID = S.SEC_ID;

但这是记忆不足。从数据库检索的行数为:
ANN中的行数*秒中的行数
这显然不是你想要的。如果每个表中有几千行,那么即使是MySQL

关于mysql - 错误:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24928499/

10-09 16:02