Java 如何在数据库sqlite3中插入
我在数据库中插入数据时遇到问题..这是我的代码,看起来Java 如何在数据库sqlite3中插入,java,sql,database,sqlite,sql-insert,Java,Sql,Database,Sqlite,Sql Insert,我在数据库中插入数据时遇到问题..这是我的代码,看起来 rs = stat.executeQuery("Select * from students;"); while (rs.next()) { idNum = rs.getString("idNum"); stat.executeUpdate( "INSERT INTO record VALUES (null,'" + idNum + "','" + descript + "'," +
rs = stat.executeQuery("Select * from students;");
while (rs.next()) {
idNum = rs.getString("idNum");
stat.executeUpdate(
"INSERT INTO record VALUES (null,'" + idNum + "','" + descript +
"'," + value + ",'" + user.getText() + "','" + timeStamp + "')"
);
}//while
如您所见,我想为每个学生插入一个数据rs=stat.executeQuery(“Select*from students;”)
并获取他们所有的学生号idNum=rs.getString(“idNum”)代码>这是学生表中的内容:
idNum..............Name
11000001.........Leonardo
11000002.........David
11000003.........Robert
11000004.........Anna
11000005.........May
现在,当我得到它们的所有idNum时,我希望它们被插入表记录中,如下所示:
idNum.........descript.........amount........blablablabla
11000001.......Fee...............30
11000002.......Fee...............30
11000003.......Fee...............30
11000004.......Fee...............30
11000005.......Fee...............30
idNum.........descript.........amount........blablablabla
11000001.......Fee...............30
问题是只有第一个idNum插入到表记录中,如下所示:
idNum.........descript.........amount........blablablabla
11000001.......Fee...............30
11000002.......Fee...............30
11000003.......Fee...............30
11000004.......Fee...............30
11000005.......Fee...............30
idNum.........descript.........amount........blablablabla
11000001.......Fee...............30
您不应该两次使用同一语句对象stat:一旦重用is来执行更新(在您的例子中是insert),它将关闭正在循环的结果集。使用ArrayList来存储students表中的所有idNum。然后在列表中循环以插入记录表。您可以使用一条语句来复制数据。
(使用参数可以避免包含特殊字符的字符串的格式问题。)
所以我只需要删除这个数据stat.executeUpdate(“插入到记录值中(null、“+idNum+”、“+descript+”、“+value+”、“+user.getText()+”、“+timeStamp+”))代码>ArrayList list=新建ArrayList();而(rs.next()){list.add(rs.getString(“idNum”);}for(int i=0;我编译它时说…Blank.java使用未经检查或不安全的操作,我如何修复它?我想这只是一个警告,因为您没有指定数组集合存储的对象类型谢谢您。我真的非常感谢您……]