Java:将数据插入MySQL时出错

时间:2017-09-22 10:53:38

标签: java mysql

我使用eclipse将数据插入MySQL,它只插入数据的最后一行。

String countryCodeSql = "INSERT INTO session" + "(sessionTimestamp,countryCode,countryName,visitorID)" + "VALUES ('"+timeStamp+"','"+countryCode+"','" + countryName+"','" + visitorID+"')";
myStat.executeUpdate(countryCodeSql);

这些是我的代码行,但我认为它应该正常工作,因为下面的代码工作并插入了数据。

String timeStampSql = "INSERT INTO conversation" + "(timestamp)" + "VALUES ('" +timeStamp+"')";
myStat.executeUpdate(timeStampSql); 

1 个答案:

答案 0 :(得分:0)

当数据是动态数据时,您可以使用preparedStatement在数据库中插入数据。这是一个例子:

Connection connection = DriverManager.getConnection(DATABASE_URL,USERNAME,PASSWORD);

String query = "INSERT INTO session (sessionTimestamp,countryCode,countryName,visitorID) values(?,?,?,?)";

PreparedStatement preparedStmt = connection.prepareStatement(query);
            preparedStmt.setString (1, timeStamp);
            preparedStmt.setString (2, countryCode);
            preparedStmt.setString (3, countryName);
            preparedStmt.setString (4, visitorID);

preparedStmt.execute();