当前位置: 首页 > 知识库问答 >
问题:

在java中执行多个查询时出错[重复]

夏青青
2023-03-14

在过去的几天里,我无法解决这个问题,我遇到了一个使用Java EE在同一个指令中进行多个查询的问题,

static public void transfer(String sender, String receiver, double amount) {
    try (Connection connection = DriverManager.getConnection(dbURL, dbLogin, dbPassword)) {


        String query = " insert into T_Transactions (sender, receiver, amount, date) values (?, ?, ?, ?) ; update T_Users set balance =? WHERE email = ?";


        Date d = new Date();

        PreparedStatement statement = connection.prepareStatement(query);
        statement.setString(1, sender);
        statement.setString(2, receiver);
        statement.setDouble(3, amount);
        statement.setString(4, new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSSS").format(d));
        statement.setDouble(5, amount);
        statement.setString(6, sender);

        try {
            statement.executeUpdate();
        } catch (Exception e) {
            e.printStackTrace();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

我在mysql中尝试过这个查询,它工作得很好,但每次在代码中使用它时都会遇到以下错误

java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'update T_Users

共有1个答案

谢鸿飞
2023-03-14

我不知道为什么一起试。请分别使用插入和更新。否则就按程序走吧。我的理解是在Mysql和java中执行多个查询是不同的

 类似资料:
  • 我对Neo4J花了不少心思,但对graphql却一筹莫展 我通过运行以下操作创建了graphql模式: 我有一个带有三个标签的节点类型。我尝试在graphiql中运行以下查询,得到了同样的错误。由于堆栈的原因,我想知道graphiql是否在添加meta并移动到了neo4j浏览器--同样的错误。 查询: 错误: 我可能做了一些明显错误的事情,但任何帮助都将是感激的

  • 执行获取HQL查询时出现异常。查询大部分时间都有效,但有时会显示此异常 数据库是MySQL,使用的服务器是JBoss 5.1.0 GA 显示的错误是: 组织。冬眠例外GenericJDBCException:无法在组织上执行查询。冬眠例外SQLStateConverter。在组织中处理非特定异常(SQLStateConverter.java:126)。冬眠例外SQLStateConverter。o

  • 使用执行hql查询时出现错误 我的疑问是 堆栈跟踪是

  • 18/04/25 11:58:34 INFO sparkcontext:Created broadcast 0 from Traceback(最近的调用为last):文件“/users/xxxxx/scripts/hive/hive.py”,第12行,在spark.sql(“select*from pokes”).show()文件“/usr/local/cellar/apache-spark/2.

  • 问题内容: 我想知道是否可以使用JDBC执行类似的操作,因为即使在MySQL查询浏览器中,它当前也提供了异常。 虽然我确实意识到可以拆分SQL查询字符串并执行两次语句,但是我想知道是否有一次性的方法。 问题答案: 我想知道是否可以使用JDBC执行类似的操作。 对的,这是可能的。据我所知,有两种方法。他们是 通过设置数据库连接属性以允许多个查询,默认情况下用分号分隔。 通过调用返回隐式游标的存储过程