我知道使用netbeans将一行添加到sql数据库中的简单方法.
这是方法:
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/zeeshan",
"root","sHaNi97426");
Statement stmt = (Statement)conn.createStatement();
String insert = "INSERT INTO clients VALUES('"+hostname+"');";
stmt.executeUpdate(insert);
Run Code Online (Sandbox Code Playgroud)
现在,我想在sql数据库中添加多行.例如,在下面给出的代码中:
Process p = Runtime.getRuntime().exec("tasklist.exe");
BufferedReader s = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((s.readLine()) != null) {
System.out.print(s.readLine());
}
Run Code Online (Sandbox Code Playgroud)
我想在sql中添加每一行直到s.readLine()成为null.
请帮助我.
你这样做是错误的!readLine()使用当前的代码,当您调用两次但只在第一次输出时,您最终会丢失备用行。
另外,如果您想在数据库中插入多行,那么您应该查看Batch.
这是 JAVA 文档addBatch():
将给定的 SQL 命令添加到此 Statement 对象的当前命令列表中。可以通过调用方法executeBatch 来批量执行此列表中的命令。
你应该做这样的事情:
String input = null;
while ((input = s.readLine()) != null) {
stmt.addBatch(input);
}
Run Code Online (Sandbox Code Playgroud)
以下是执行批处理的方法:
int[] result = stmt.executeBatch();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
52 次 |
| 最近记录: |