java.sql.SQLException:Operation not allowed after ResultSet closed at com.mysql.jdbc.ResultSet.ch创建表格后,增删查改中增实现不了,报错、、、求指导java.sql.SQLException:Operation not allowed after ResultSet closed代码:private

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/17 02:02:55

java.sql.SQLException:Operation not allowed after ResultSet closed at com.mysql.jdbc.ResultSet.ch创建表格后,增删查改中增实现不了,报错、、、求指导java.sql.SQLException:Operation not allowed after ResultSet closed代码:private
java.sql.SQLException:Operation not allowed after ResultSet closed at com.mysql.jdbc.ResultSet.ch
创建表格后,增删查改中增实现不了,报错、、、求指导
java.sql.SQLException:Operation not allowed after ResultSet closed
代码:private void add() {
\x05\x05try {
\x05\x05\x05db=DbUtil.getInstance();//打开连接
\x05\x05\x05
\x05\x05\x05//构造一个文本框数组,做为弹出对话框的参数
\x05\x05\x05JTextField t[] = new JTextField[18];
\x05\x05\x05
\x05\x05\x05t[0] = new JTextField("输入电影名称:");
\x05\x05\x05t[0].setEditable(false);
\x05\x05\x05t[1] = new JTextField(rs.getString(1));
\x05\x05\x05
\x05\x05\x05t[2] = new JTextField("输入电影类型:");
\x05\x05\x05t[2].setEditable(false);
\x05\x05\x05t[3] = new JTextField(rs.getString(2));
\x05\x05\x05
\x05\x05\x05t[4] = new JTextField("输入语言:");
\x05\x05\x05t[4].setEditable(false);
\x05\x05\x05t[5] = new JTextField(rs.getString(3));
\x05\x05\x05
\x05\x05\x05t[6] = new JTextField("输入上映日期:");
\x05\x05\x05t[6].setEditable(false);
\x05\x05\x05t[7] = new JTextField(rs.getString(4));
\x05\x05\x05
\x05\x05\x05t[8] = new JTextField("输入主演:");
\x05\x05\x05t[8].setEditable(false);
\x05\x05\x05t[9] = new JTextField(rs.getString(5));
\x05\x05\x05
\x05\x05\x05t[10] = new JTextField("输入导演:");
\x05\x05\x05t[10].setEditable(false);
\x05\x05\x05t[11] = new JTextField(rs.getString(6));
\x05\x05\x05
\x05\x05\x05t[12] = new JTextField("输入国家:");
\x05\x05\x05t[12].setEditable(false);
\x05\x05\x05t[13] = new JTextField(rs.getString(7));
\x05\x05\x05
\x05\x05\x05t[14] = new JTextField("输入时长:");
\x05\x05\x05t[14].setEditable(false);
\x05\x05\x05t[15] = new JTextField(rs.getString(8));
\x05\x05\x05
\x05\x05\x05t[16] = new JTextField("输入电影简介:");
\x05\x05\x05t[16].setEditable(false);
\x05\x05\x05t[17] = new JTextField(rs.getString(9));
\x05\x05\x05
\x05\x05\x05
\x05\x05\x05//构造一个确定取消按钮数组,做为选项对话框的参数
\x05\x05\x05String but[] = { "确定","取消" };
\x05\x05\x05//弹出一个带有指定图标的对话框
\x05\x05\x05int go = JOptionPane.showOptionDialog(this,t,"插入信息",
\x05\x05\x05\x05\x05JOptionPane.YES_OPTION,JOptionPane.INFORMATION_MESSAGE,
\x05\x05\x05\x05\x05null,but,but[0]);
\x05\x05\x05
\x05\x05\x05//选择了第一个选项:"确定"
\x05\x05\x05if (go == 0) {
\x05\x05\x05\x05try {
\x05\x05\x05\x05\x05
\x05\x05\x05\x05\x05String FName = t[1].getText();
\x05\x05\x05\x05\x05String Ftype= t[3].getText();
\x05\x05\x05\x05\x05String Flanguage = t[5].getText();
\x05\x05\x05\x05\x05String Fdata = t[7].getText();
\x05\x05\x05\x05\x05String Factor= t[9].getText();
\x05\x05\x05\x05\x05String Factress = t[11].getText();
\x05\x05\x05\x05\x05String country = t[13].getText();
\x05\x05\x05\x05\x05String timelong= t[15].getText();
\x05\x05\x05\x05\x05String Fjianjie = t[17].getText();
\x05\x05\x05\x05\x05
\x05\x05\x05\x05\x05String insertSql = "insert into user.yp (FName,Ftype,Flanguage,Fdata,Factor,Factress,country,timelong,Fjianjie) values('"
\x05\x05\x05\x05\x05\x05\x05+ FName+ "','"+Ftype+ "','"+Flanguage + "','"+Fdata+"','"+Factor
\x05\x05\x05\x05\x05\x05\x05+"','"+Factress+"','"+country+"','"+timelong+"','"+Fjianjie+"')";
\x05\x05\x05\x05\x05
\x05\x05\x05\x05\x05System.out.println("插入语句:" + insertSql);
\x05\x05\x05\x05\x05db.update(insertSql);//执行插入
\x05\x05\x05\x05\x05JOptionPane.showMessageDialog(this,"数据保存成功!");
\x05\x05\x05\x05\x05db.close();//关闭连接
\x05\x05\x05\x05\x05this.select();//插入成功重新调用查询,更新表格数据
\x05\x05\x05\x05\x05
\x05\x05\x05\x05} catch (Exception ee) {
\x05\x05\x05\x05\x05JOptionPane.showMessageDialog(this,"插入数据错误!");
\x05\x05\x05\x05}
\x05\x05\x05}
\x05\x05} catch (Exception ex) {
\x05\x05\x05ex.printStackTrace();
\x05\x05}
\x05}

java.sql.SQLException:Operation not allowed after ResultSet closed at com.mysql.jdbc.ResultSet.ch创建表格后,增删查改中增实现不了,报错、、、求指导java.sql.SQLException:Operation not allowed after ResultSet closed代码:private
关键问题在这里
----------------------------------------------------------
db.close();//关闭连接
this.select();//插入成功重新调用查询,更新表格数据
----------------------------------------------------------
你把 db.close 移到 this.select() 后面就好了

db.close();//关闭连接
this.select();//插入成功重新调用查询,更新表格数据 连接已经关闭就不可以再进行数据查询 你的select方法是否没写连接语句