使用rs.insertRow()将JTable中的数据插入到数据库sqlserver
2012-09-25 17:05
447 查看
看代码:
public void click_on_add() {
System.out.println("事件发生中!");
String[] rowValues = { MainWin.fild_num.getText(),
MainWin.fild_type.getText(), MainWin.fild_name.getText(),
MainWin.fild_charge.getText(), MainWin.fild_datap.getText(),
MainWin.fild_data.getText(), MainWin.fild_cmp.getText(),
MainWin.fild_addr.getText(), MainWin.fild_times.getText(),
MainWin.fild_say.getText() };
MainWin.tableModel.addRow(rowValues); // 添加一行
// System.out.println(MainWin.fild_num.getText());
// int rowCount = MainWin.table.getRowCount() + 1; // 行数加上1
try {
ConnDatabase.rs.moveToInsertRow();
//以下更新结果集,这点在插入到数据库中之前很重要
ConnDatabase.rs.updateInt(1, Integer.valueOf(MainWin.fild_num.getText()));
ConnDatabase.rs.updateString(2, MainWin.fild_type.getText());
ConnDatabase.rs.updateString(3, MainWin.fild_name.getText());
ConnDatabase.rs.updateFloat(4, Float.valueOf(MainWin.fild_charge.getText()));
ConnDatabase.rs.updateString(5, MainWin.fild_datap.getText());
ConnDatabase.rs.updateString(6, MainWin.fild_data.getText());
ConnDatabase.rs.updateString(7, MainWin.fild_cmp.getText());
ConnDatabase.rs.updateString(8, MainWin.fild_addr.getText());
ConnDatabase.rs.updateInt(9, Integer.valueOf(MainWin.fild_times.getText()));
ConnDatabase.rs.updateString(10, MainWin.fild_say.getText());
ConnDatabase.rs.insertRow();// 插入到数据库中
} catch (SQLException e) {
e.printStackTrace();
}
}
特别要注意的要点:
必须先更新结果集,在执行rs.insertRow(),否则出现“主键不能为空的”,“com.microsoft.sqlserver.jdbc.SQLServerException: 结果集没有当前行。“等异常。
public void click_on_add() {
System.out.println("事件发生中!");
String[] rowValues = { MainWin.fild_num.getText(),
MainWin.fild_type.getText(), MainWin.fild_name.getText(),
MainWin.fild_charge.getText(), MainWin.fild_datap.getText(),
MainWin.fild_data.getText(), MainWin.fild_cmp.getText(),
MainWin.fild_addr.getText(), MainWin.fild_times.getText(),
MainWin.fild_say.getText() };
MainWin.tableModel.addRow(rowValues); // 添加一行
// System.out.println(MainWin.fild_num.getText());
// int rowCount = MainWin.table.getRowCount() + 1; // 行数加上1
try {
ConnDatabase.rs.moveToInsertRow();
//以下更新结果集,这点在插入到数据库中之前很重要
ConnDatabase.rs.updateInt(1, Integer.valueOf(MainWin.fild_num.getText()));
ConnDatabase.rs.updateString(2, MainWin.fild_type.getText());
ConnDatabase.rs.updateString(3, MainWin.fild_name.getText());
ConnDatabase.rs.updateFloat(4, Float.valueOf(MainWin.fild_charge.getText()));
ConnDatabase.rs.updateString(5, MainWin.fild_datap.getText());
ConnDatabase.rs.updateString(6, MainWin.fild_data.getText());
ConnDatabase.rs.updateString(7, MainWin.fild_cmp.getText());
ConnDatabase.rs.updateString(8, MainWin.fild_addr.getText());
ConnDatabase.rs.updateInt(9, Integer.valueOf(MainWin.fild_times.getText()));
ConnDatabase.rs.updateString(10, MainWin.fild_say.getText());
ConnDatabase.rs.insertRow();// 插入到数据库中
} catch (SQLException e) {
e.printStackTrace();
}
}
特别要注意的要点:
必须先更新结果集,在执行rs.insertRow(),否则出现“主键不能为空的”,“com.microsoft.sqlserver.jdbc.SQLServerException: 结果集没有当前行。“等异常。
相关文章推荐
- mybatis使用数据库id自增长插入数据并获取刚插入的数据的id
- 使用SqlBulkCopy, 插入整个DataTable中的所有数据到指定数据库中
- 【SQL】在数据库中使用单条指令插入多条数据
- python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
- 使用JXL从Excel中提取数据插入到数据库中
- 使用DOS命令无法插入中文数据到数据库的问题
- j2se使用数据模型和JTable完成数据库读取和查询操作
- asp向数据库插入数据的方法rs
- 使用SQLiteOpenHelper插入数据到数据库并读取数据库中的内容
- POI读取excel2007文件的数据,插入数据库的使用方法【经验之谈】
- 使用hibernate插入数据对象不成功,且数据库自增长
- SQL语言使用insert语句向数据库表格中插入或添加新的数据行
- docker(7):使用python 连接数据库,插入并查询数据--link
- 使用SQLiteHelper创建数据库并插入数据 分类: H1_ANDROID 2013-11-05 22:44 1398人阅读 评论(0) 收藏
- 使用SqlServer数据批量插入
- 数据库操作_连接SQL Server数据库示例;连接ACCESS数据库;连接到 Oracle 数据库示例;SqlCommand 执行SQL命令示例;SqlDataReader 读取数据示例;使用DataAdapter填充数据到DataSet;使用DataTable存储数据库表;将数据库数据填充到 XML 文件;10 使用带输入参数的存储过程;11 使用带输入、输出参数的存储过程示;12 获得数据库中表的数目和名称;13 保存图片到SQL Server数据库示例;14 获得插入记录标识号;Exce
- 使用php和mysql,数据库显示插入成功,但是数据表内数据为空
- python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
- 使用Hibernate插入数据后数据库没有记录的解决方法