我有以下代码
try{
sql = "Select Time, Text WHERE Sender =?";
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.setString(1, "ABC");
rs = stmt.executeQuery();
}catch(SQLException){
System.out.println(e.getMessage());
}
并收到以下错误:
您的SQL语法有错误;检查与您的MariaDB服务器版本对应的手册,以便在第1行的'WHERE Sender ='ABC''附近使用正确的语法
我的SQL查询中有一个额外的'
,我该如何解决?
答案 0 :(得分:4)
不是"额外" '
这就是问题所在。实际上,您需要让数据库了解您提供的文本。
问题是您正在发出一个SELECT语句,该语句从您未指定的表中请求字段。您需要添加表名:
Select Time, Text FROM <tablename here> WHERE Sender =?
编辑:显然MariaDB doesn't consider time
and text
as reserved words正如@Andreas在对此答案的评论中指出的那样。