菜鸟问个SQL语句 insert 问题

yanzhiren8 2012-10-25 04:12:56
String sql="insert into course(cou_id , cou_name , xuefen , collo_id,dept_id)
select '"+new String(cou_id.getBytes(),"GBK")+"' , '"+new String(cou_name.getBytes(),"GBK")+"' , '"+new String(xuefen.getBytes(),"GBK")+"' , (select collo_id from dept where dept_name='"+new String(dept_name.getBytes(),"GBK")+"' ) , (select dept_id from dept where dept_name='"+new String(dept_name.getBytes(),"GBK")+"'))";
我连接的是sql server 2005 cou_id , cou_name , xuefen 都是自己填写的 collo_id,dept_id是根据下拉菜单选项得出的
这句话有问题吗? 一执行int i=stmt.executeUpdate(sql); 就会发生异常 求指点
...全文
187 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanzhiren8 2012-10-25
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
catch(Exception ea){//该编号课程已经存在
JOptionPane.showMessageDialog(this,"添加失败!!!,该编号的课程已经存在",
"错误",JOptionPane.ERROR_MESSAGE);
}

为啥不把异常信息打印出来,非得”自作聪明“的写什么"添加失败“

ea.printStackTrace();
[/Quote]
谢谢哈 我说怎么没有异常信息呢 问题解决了 的确是语句错误 这回长记性了 嘿嘿
老紫竹 2012-10-25
  • 打赏
  • 举报
回复
catch(Exception ea){//该编号课程已经存在
JOptionPane.showMessageDialog(this,"添加失败!!!,该编号的课程已经存在",
"错误",JOptionPane.ERROR_MESSAGE);
}

为啥不把异常信息打印出来,非得”自作聪明“的写什么"添加失败“

ea.printStackTrace();
yanzhiren8 2012-10-25
  • 打赏
  • 举报
回复
加了values就错了 就会出现 在此上下文中不允许使用子查询。只允许使用标量表达式
aaaabbbccd9876 2012-10-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
仔细看了哈你的values在哪里
[/Quote]哈哈
aimsgmiss 2012-10-25
  • 打赏
  • 举报
回复
仔细看了哈你的values在哪里
yanzhiren8 2012-10-25
  • 打赏
  • 举报
回复
try{ //创建sql语句
String sql="insert into course(cou_id , cou_name , xuefen , collo_id,dept_id) select '"+new String(cou_id.getBytes(),"GBK")+"' ,"+"'"+new String(cou_name.getBytes(),"GBK")+"','"+new String(xuefen.getBytes(),"GBK")+"',(select collo_id " +"from dept where dept_name='"+new String(dept_name.getBytes(),"GBK")+"' ),"+"(select dept_id from dept where dept_name='"+new String(dept_name.getBytes(),"GBK")+"'))";
//执行sql语句
int i=stmt.executeUpdate(sql);
}
catch(Exception ea){//该编号课程已经存在
JOptionPane.showMessageDialog(this,"添加失败!!!,该编号的课程已经存在",
"错误",JOptionPane.ERROR_MESSAGE);
}
执行到int i=stmt.executeUpdate(sql); 就跳到catch里了 但这个编号数据库中根本没有啊
snow-is-my-Love 2012-10-25
  • 打赏
  • 举报
回复
MT 把异常贴出来看看呗

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧