java.sql.sqlexception:ora-00936:缺失表达式这个异常是怎么意思?

jojeylin 2008-03-14 10:18:56
java.sql.sqlexception:ora-00936:缺失表达式
这个异常是怎么意思?表达式我写对的啦吖
String sql="insert into ill values(ne,cs,ct,tl,fy,rm,rt,jb)";
...全文
5162 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinslyuzin 2012-03-06
  • 打赏
  • 举报
回复
我也出现这种问题,不知道是否与楼主相同
user.setName("")
改成user.setName("''")
这种问题调试
System.out.println(sql)
把结果copy到命令行
sql>
jinslyuzin 2012-03-06
  • 打赏
  • 举报
回复
我也出现这种问题,不知道是否与楼主相同
user.setName("")
改成user.setName("''")
这种问题调试
System.out.println(sql)
把结果copy到命令行
sql>
Ricky17 2012-02-10
  • 打赏
  • 举报
回复
我也这样。。。
lorizhang 2009-06-15
  • 打赏
  • 举报
回复
应该就是这个问题,我也碰到过的[Quote=引用 8 楼 zero1111 的回复:]
"insert into ill values(ne,cs,ct,tl,fy,rm,rt,jb)";
上面这句应该这么写:String inser_sql="insert into ill values("
+ne","+cs+","+ct+“,"+tl+","+fy+","+rm+","+rt+","+jb+")";
这其中如果是字符串还需加上"'"+ne+"',"+.....;
[/Quote]
lorizhang 2009-06-15
  • 打赏
  • 举报
回复
应该就是这个问题,我也碰到过的
haihongxingzi 2008-11-24
  • 打赏
  • 举报
回复
我的不是这问题!
String sql = "SELECT " + fieldid + "," + fieldmc + " FROM " + tablename + " WHERE jqlx="+jqlx;

这句没错吧?
tttk 2008-03-15
  • 打赏
  • 举报
回复
无言。。。。
jojeylin 2008-03-15
  • 打赏
  • 举报
回复
问题已解决原来是少加了''这个符号还有从JAVA的GUI中写入数据日期格式要加to_date()方法
jojeylin 2008-03-14
  • 打赏
  • 举报
回复
后来我修改过了,去掉了ne....直接用后面的赋值的形式,但就那样报错了,就是缺少表达式
Squall1009 2008-03-14
  • 打赏
  • 举报
回复
i 服了 you
你System.out.println(sql)看下你给数据库执行的是什么好吗?
ne,cs,ct,tl,fy,rm,rt,jb 这些不是列名表名又没有用引号引起来东西数据库无法理解的
jojeylin 2008-03-14
  • 打赏
  • 举报
回复
一样的,我就是用了“+。。+”后就报错,缺少表达式
zero1111 2008-03-14
  • 打赏
  • 举报
回复
"insert into ill values(ne,cs,ct,tl,fy,rm,rt,jb)";
上面这句应该这么写:String inser_sql="insert into ill values("
+ne","+cs+","+ct+“,"+tl+","+fy+","+rm+","+rt+","+jb+")";
这其中如果是字符串还需加上"'"+ne+"',"+.....;
jojeylin 2008-03-14
  • 打赏
  • 举报
回复
谁能告诉我哪里出错了?表达式是没错的吖
Squall1009 2008-03-14
  • 打赏
  • 举报
回复
补上是个好习惯,举手之劳啊
jojeylin 2008-03-14
  • 打赏
  • 举报
回复
不补上好象也没关系的,好象只要写入的类型相同,位置相同就可以了吧
Squall1009 2008-03-14
  • 打赏
  • 举报
回复
String sql="insert into ill values(ne,cs,ct,tl,fy,rm,rt,jb)";
ne,cs这些没有被替换掉啊。

还是用PreparedStatement来做吧,
PS:ill最好把栏位补上
jojeylin 2008-03-14
  • 打赏
  • 举报
回复
String ne="+txtusername.getText()+";
String cs="+csex.getSelectedItem()+";
String ct="+cstatus.getSelectedItem()+";
String tl="+txtusertel.getText()+";
String fy="+txtuserfamily.getText()+";
String rm="+txtroomnumber.getText()+";
String rt="+txtuserbirth.getText()+";
String jb="+txtuserjob.getText()+";
String sql="insert into ill values(ne,cs,ct,tl,fy,rm,rt,jb)";



说是缺少表达式,但我查过,表达式是没错的,不知道是哪出错了,也不知道ILL是不是ORACLE里的关键字
prstat 2008-03-14
  • 打赏
  • 举报
回复

//这是SQL语法错误,我记得sql字符串应以 ;结尾,你加上分号试试
String sql="insert into ill values(ne,cs,ct,tl,fy,rm,rt,jb);";
Squall1009 2008-03-14
  • 打赏
  • 举报
回复
insert into ill values(ne,cs,ct,tl,fy,rm,rt,jb)

ne,cs,ct等是什么类型的?

62,614

社区成员

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

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