【发布时间】:2015-06-09 08:38:58
【问题描述】:
我尝试了以下代码来拆分 csv 值,现在如何将其插入数据库?我是否已将值保存到单独的变量中以匹配列名?我想不通。
注意:我现在不想使用任何 csv 解析器。我只想手动完成
public static void main(String[] args) throws IOException, ClassNotFoundException, SQLException {
String name;
String email;
String phone;
String ID;
Connection con = OracleDBConnection.getConnection();
String query = "Insert into NEWSTUDENT values(?,?,?,?)";
PreparedStatement st = con.prepareStatement();
st.executeUpdate(query);
try {
BufferedReader bReader = new BufferedReader(new FileReader("1000rows.csv"));
while (bReader != null) {
String read;
try {
read = bReader.readLine();
if (read != null)
{
String[] array = read.split(",+");
for(String result:array)
{
System.out.println(result);
}
}
} catch (IOException ex) {
ex.printStackTrace();
}
finally
{
if (bReader == null)
{
bReader.close();
}
}
}
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}
}
}
输出:
1Kiriti
kiriti@gmail.com
880789939
数据库中的列名:
Name Email Phone ID
【问题讨论】:
-
使用 PreparedStatement
-
为什么没有解析器?是家庭作业吗?如果没有,只需使用解析器。自己编写会在以后遇到错误。