【问题标题】:Java prepared statement is not working?Java 准备好的语句不起作用?
【发布时间】:2015-04-04 14:18:47
【问题描述】:

我正在编写一个数据库程序。但我坚持使用 Java 准备好的语句。准备好的声明似乎不起作用。我花了几个小时让它工作,但结果还是一样。

 String sql = "INSERT into EDMSDATABASE.MESSAGE (title, subject, description, deadline) VALUES (?, ?, ?, ?)";
            try (
                    PreparedStatement statement = connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
            ) {
                 statement.setString(1, bean.getTitle());
                 statement.setString(2, bean.getSubject());
                 statement.setString(3, bean.getDescription());
                 statement.setString(4, bean.getDeadline());
                  int affectedRow = statement.executeUpdate();            
                  if(affectedRow == 1) return "Success";

              } catch (SQLException e) 
                    { 

            } finally{



        }

注意bean是参数

【问题讨论】:

  • 定义“似乎不起作用”。您期望会发生什么(以及为什么)以及会发生什么?
  • 我正在尝试使用准备好的语句将新记录添加到名为 EDMSDATABASE.MESSAGE 的表中。但它不起作用。见代码 sn-p。
  • 您必须指定参数(标题、主题等)才能工作。阅读setInt(), setString() and the rest。另外,你必须执行它。
  • 您似乎从未真正执行过该语句。
  • 查看更新后的代码sn-p

标签: java sql database derby


【解决方案1】:

您使用的是 1.7 吗?如果不是,请使用版本兼容逻辑。

【讨论】:

  • 你知道哪个版本兼容吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-09
  • 2015-10-11
  • 2018-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多