java.sql.SQLException: Operation not allowed after ResultSet closed at com.mysql.jdbc.ResultSet.ch
创建表格后,增删查改中增实现不了,报错、、、求指导java.sql.SQLException:OperationnotallowedafterResultSetclose...
创建表格后,增删查改中增实现不了,报错、、、求指导
java.sql.SQLException: Operation not allowed after ResultSet closed
代码:private void add() {
try {
db=DbUtil.getInstance();//打开连接
//构造一个文本框数组,做为弹出对话框的参数
JTextField t[] = new JTextField[18];
t[0] = new JTextField("输入电影名称:");
t[0].setEditable(false);
t[1] = new JTextField(rs.getString(1));
t[2] = new JTextField("输入电影类型:");
t[2].setEditable(false);
t[3] = new JTextField(rs.getString(2));
t[4] = new JTextField("输入语言:");
t[4].setEditable(false);
t[5] = new JTextField(rs.getString(3));
t[6] = new JTextField("输入上映日期:");
t[6].setEditable(false);
t[7] = new JTextField(rs.getString(4));
t[8] = new JTextField("输入主演:");
t[8].setEditable(false);
t[9] = new JTextField(rs.getString(5));
t[10] = new JTextField("输入导演:");
t[10].setEditable(false);
t[11] = new JTextField(rs.getString(6));
t[12] = new JTextField("输入国家:");
t[12].setEditable(false);
t[13] = new JTextField(rs.getString(7));
t[14] = new JTextField("输入时长:");
t[14].setEditable(false);
t[15] = new JTextField(rs.getString(8));
t[16] = new JTextField("输入电影简介:");
t[16].setEditable(false);
t[17] = new JTextField(rs.getString(9));
//构造一个确定取消按钮数组,做为选项对话框的参数
String but[] = { "确定", "取消" };
//弹出一个带有指定图标的对话框
int go = JOptionPane.showOptionDialog(this, t, "插入信息",
JOptionPane.YES_OPTION, JOptionPane.INFORMATION_MESSAGE,
null, but, but[0]);
//选择了第一个选项:"确定"
if (go == 0) {
try {
String FName = t[1].getText();
String Ftype= t[3].getText();
String Flanguage = t[5].getText();
String Fdata = t[7].getText();
String Factor= t[9].getText();
String Factress = t[11].getText();
String country = t[13].getText();
String timelong= t[15].getText();
String Fjianjie = t[17].getText();
String insertSql = "insert into user.yp (FName,Ftype,Flanguage,Fdata,Factor,Factress,country,timelong,Fjianjie) values('"
+ FName+ "','"+Ftype+ "','"+Flanguage + "','"+Fdata+"','"+Factor
+"','"+Factress+"','"+country+"','"+timelong+"','"+Fjianjie+"')";
System.out.println("插入语句:" + insertSql);
db.update(insertSql);//执行插入
JOptionPane.showMessageDialog(this, "数据保存成功!");
db.close();//关闭连接
this.select();//插入成功重新调用查询,更新表格数据
} catch (Exception ee) {
JOptionPane.showMessageDialog(this, "插入数据错误!");
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
} 展开
java.sql.SQLException: Operation not allowed after ResultSet closed
代码:private void add() {
try {
db=DbUtil.getInstance();//打开连接
//构造一个文本框数组,做为弹出对话框的参数
JTextField t[] = new JTextField[18];
t[0] = new JTextField("输入电影名称:");
t[0].setEditable(false);
t[1] = new JTextField(rs.getString(1));
t[2] = new JTextField("输入电影类型:");
t[2].setEditable(false);
t[3] = new JTextField(rs.getString(2));
t[4] = new JTextField("输入语言:");
t[4].setEditable(false);
t[5] = new JTextField(rs.getString(3));
t[6] = new JTextField("输入上映日期:");
t[6].setEditable(false);
t[7] = new JTextField(rs.getString(4));
t[8] = new JTextField("输入主演:");
t[8].setEditable(false);
t[9] = new JTextField(rs.getString(5));
t[10] = new JTextField("输入导演:");
t[10].setEditable(false);
t[11] = new JTextField(rs.getString(6));
t[12] = new JTextField("输入国家:");
t[12].setEditable(false);
t[13] = new JTextField(rs.getString(7));
t[14] = new JTextField("输入时长:");
t[14].setEditable(false);
t[15] = new JTextField(rs.getString(8));
t[16] = new JTextField("输入电影简介:");
t[16].setEditable(false);
t[17] = new JTextField(rs.getString(9));
//构造一个确定取消按钮数组,做为选项对话框的参数
String but[] = { "确定", "取消" };
//弹出一个带有指定图标的对话框
int go = JOptionPane.showOptionDialog(this, t, "插入信息",
JOptionPane.YES_OPTION, JOptionPane.INFORMATION_MESSAGE,
null, but, but[0]);
//选择了第一个选项:"确定"
if (go == 0) {
try {
String FName = t[1].getText();
String Ftype= t[3].getText();
String Flanguage = t[5].getText();
String Fdata = t[7].getText();
String Factor= t[9].getText();
String Factress = t[11].getText();
String country = t[13].getText();
String timelong= t[15].getText();
String Fjianjie = t[17].getText();
String insertSql = "insert into user.yp (FName,Ftype,Flanguage,Fdata,Factor,Factress,country,timelong,Fjianjie) values('"
+ FName+ "','"+Ftype+ "','"+Flanguage + "','"+Fdata+"','"+Factor
+"','"+Factress+"','"+country+"','"+timelong+"','"+Fjianjie+"')";
System.out.println("插入语句:" + insertSql);
db.update(insertSql);//执行插入
JOptionPane.showMessageDialog(this, "数据保存成功!");
db.close();//关闭连接
this.select();//插入成功重新调用查询,更新表格数据
} catch (Exception ee) {
JOptionPane.showMessageDialog(this, "插入数据错误!");
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
} 展开
2个回答
展开全部
关键问题在这里
----------------------------------------------------------
db.close();//关闭连接
this.select();//插入成功重新调用查询,更新表格数据
----------------------------------------------------------
你把 db.close 移到 this.select() 后面就好了
----------------------------------------------------------
db.close();//关闭连接
this.select();//插入成功重新调用查询,更新表格数据
----------------------------------------------------------
你把 db.close 移到 this.select() 后面就好了
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询