【问题标题】:SQL Exception thrown at prepared statement在准备好的语句中抛出 SQL 异常
【发布时间】:2017-10-16 19:47:09
【问题描述】:

当到达这一行时,我准备好的语句会停止我的程序,我不确定为什么,因为完全相同的语法适用于另一个表(产品,具有 9 个值)。

仅供参考,订单存在且有 6 列

PreparedStatement statement = 
    connection.prepareStatement("INSERT INTO Order VALUES (?, ?, ?, ?, ?, ?)");

这是在 try/catch 块中,显然我在该语句之后设置了值,但在准备好的语句中抛出了异常。

语法错了吗?或者这是否意味着即使我附上的图片显示了表格也不存在?

【问题讨论】:

  • Order 是 SQL 保留字,所以这可能是您的问题的一部分......

标签: sql sqlite syntax runtime-error


【解决方案1】:

order 是 SQL 中的保留字。如果您想将其用作表名,则需要对其进行转义(用双引号括起来):

PreparedStatement statement = 
    connection.prepareStatement("INSERT INTO \"Order\" VALUES (?, ?, ?, ?, ?, ?)");

【讨论】:

  • 哇,哇。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-15
  • 1970-01-01
相关资源
最近更新 更多