我是java新手,我正在尝试使用文本文件将数据插入mysql数据库。我的文本文件有5行。我有3个sql insert查询。每个查询将向数据库中插入5行。
示例查询包括:
INSERT INTO `session` (`emp`, `SessionID`, `SessionDate`, `SessionStartTime`, 'SessionEndTime') VALUES (Tyler, NULL, ?, ?, ?);
INSERT INTO `session` (`emp`, `SessionID`, `SessionDate`, `SessionStartTime`,'SessionEndTime') VALUES (MAX, NULL, ?, ?, ?);
INSERT INTO `session` (`emp`, `SessionID`, `SessionDate`, `SessionStartTime`,'SessionEndTime') VALUES (James, NULL, ?, ?, ?);
文本文件示例:
文本文件
下面是我的代码片段。我不知道如何读取文本文件并将其插入数据库。注意,代码只有一个my查询。我正在尝试在添加其他查询之前使一个查询工作。
我正在寻找一些关于阅读文件和日期、开始时间和结束时间的准备语句的建议。
有什么建议吗?
try
{
//Create a mysql database connection
String dbUrl = "jdbc:mysql://localhost:3306/mytest";
String username = "root"; //Database Username
String password = "abcdefg"; //Database Password
Class.forName("com.mysql.jdbc.Driver"); //Load mysql jdbc driver
Connection con = DriverManager.getConnection(dbUrl,username,password); //Create Connection to DB
// mysql query to insert data into session table
String query = " INSERT INTO `session` (`emp`, `SessionID`,
`SessionDate`, `SessionStartTime`) VALUES (Tyler, NULL, ?, ?, ?);
try {
BufferedReader bReader = new BufferedReader(newFileReader("c:/sessionstime"));
String line = "";
while ((line = bReader.readLine()) != null)
{
try
{
if (line != null)
{
String[] array = line.split(",");
for(String result:array)
{
// create mysql insert preparedstatement
PreparedStatement preparedStmt = con.prepareStatement(query);
preparedStmt.setDate (1, sessiondate[0]);
preparedStmt.setTime (2, sessionstarttime[1]);
preparedStmt.setTime (3, sessionendtime[2]);
preparedStmt.addBatch();
// execute the preparedstatement
preparedStmt.executeBatch();
// close database connection
con.close();
}
catch (Exception e)
{
System.err.println("Got an exception!");
System.err.println(e.getMessage());
}
暂无答案!
目前还没有任何答案,快来回答吧!