大家帮忙看看这两条SQL语句错在哪里吧,谢谢了!!

RUBY_uu 2006-07-26 11:53:38
第一次我这样写的:
String sql1="insert into guestbook (edit) values ('此帖在'+'"+ adate + "'+'编辑过');

执行页面后出现异常:java.sql.SQLException: ORA-01722: 无效数字

第二次我这样写:
String s = "此帖在";
String s1 = "编辑过";
String sql1 = "insert into guestbook (edit) values ('" + s + "'+'"
+ adate + "'+'" + s1 + "')";
还是出现同样的异常:java.sql.SQLException: ORA-01722: 无效数字

谁能告诉我应该要怎么写呀??

感激不尽!!!
...全文
329 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hefei0603 2006-07-26
  • 打赏
  • 举报
回复
String sql1="insert into guestbook (edit) values ('此帖在'+'"+ adate + "'+'编辑过');
感觉你这句改为:
String sql1="insert into guestbook (edit) values ('此帖在+"+ adate + "+编辑过')";
因为你原来把它放到数据库中执行时sql语句变为(假设adate为:2006-07-26 11:53:33):
insert into guestbook(edit) values('此帖在''2006-07-26 11:53:33''编辑过')
这对于SQL来说是有语法错误的当然编辑失败了。改后:
insert into guestbook(edit) values('此帖在2006-07-26 11:53:33编辑过')
这样才能插入成功。

lzmhehe 2006-07-26
  • 打赏
  • 举报
回复
ps.setString("edit",//这里要怎么写呢??

ps.setString("edit","此帖在'"+adate+ "'编辑过")
RUBY_uu 2006-07-26
  • 打赏
  • 举报
回复
谢谢各位!!
PreparedStatement 要怎么写?

String sql= "insert into guestbook (edit) values(?);

PreparedStatement ps = conn.prepareStatment(sql);
ps.setString("edit",//这里要怎么写呢??


谢谢!!!
dixing 2006-07-26
  • 打赏
  • 举报
回复
SQL语句改为:
String sql="insert into guestbook (edit) values ('此帖在"+adate+ "编辑过')";
这种情况下建议使用PreparedStatement,用起来更加清楚明了!
kevinliuu 2006-07-26
  • 打赏
  • 举报
回复
建议使用PreparedStatement
cathl 2006-07-26
  • 打赏
  • 举报
回复
String sql="insert into guestbook (edit) values ('此帖在'"+adate+ "'编辑过')";
baselive 2006-07-26
  • 打赏
  • 举报
回复
String sql1="insert into guestbook (edit) ";
sql1 = sql1 + " values ('此帖在 " + adate + " 编辑过') ";

这样就可以,把那单引号去掉.
zwb13631438816 2006-07-26
  • 打赏
  • 举报
回复
大家都说了!多看看SQL帮助吧
lean_liao 2006-07-26
  • 打赏
  • 举报
回复
ps.setString(1,"此帖在"+'"+adate+ "'+"编辑过")
lean_liao 2006-07-26
  • 打赏
  • 举报
回复
ps.setString(1,"此帖在'"+adate+ "'编辑过")

81,094

社区成员

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

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