使用JDBC在MyQSL中插入多个数据(List)

时间:2017-04-19 09:44:13

标签: java mysql jdbc

我正在尝试从最后2小时开始我不知道出了什么问题。也让我知道如何测试连接是否成功..它现在是..但我仍然想知道..

错误:

  

您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以便在'?,?)'

附近使用正确的语法

我的代码:

IndexWriter

3 个答案:

答案 0 :(得分:0)

为什么使用Statement和Prepared语句。您正在使用Statement执行操作。因此它没有价值。删除声明

stmt = conn.createStatement();

并执行以下操作

PreparedStatement preparedStmt = conn.prepareStatement(sql);
        preparedStmt.setString(1, element.getName());
        preparedStmt.setString(2, element.getPgurl());
        //stmt.executeUpdate(sql);
        preparedStmt .executeUpdate(sql);

答案 1 :(得分:0)

  1. 您在stmpreparedStmt之间混合,必须执行preparedStmt而不是stm

  2. 当您想要将多个语句作为一个单元执行时,另一件事就是使用语句批处理,例如:

  3. PreparedStatement preparedStmt; String sql; conn.setAutoCommit(false); for (MedicineName element : medicineName) { sql = "insert into medicinename (name, pgurl) values (?, ?)"; System.out.println(conn); preparedStmt = conn.prepareStatement(sql); preparedStmt.setString(1, element.getName()); preparedStmt.setString(2, element.getPgurl()); preparedStmt.addBatch(sql); } preparedStmt.executeBatch(); conn.commit();

答案 2 :(得分:0)

使用

window.