一个字符串类型的变量,保存sql,执行时总是说 ORA-00911: 无效字符,为什么????????????????????????????????

zhengg21 2005-03-03 05:56:45
一个字符串类型的变量,保存sql,执行时总是说 ORA-00911: 无效字符,为什么?
String sql = "";
{
此处给sql赋值,组合成一个update的sql语句
}
通过 statement 执行,总是提示 ORA-00911: 无效字符 ,
但是把它拷贝出来在数据库工具中执行是可以的,为什么?到底是什么看不见的字符导致错误?
怎么解决?
...全文
2071 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
fog628 2005-03-05
  • 打赏
  • 举报
回复
把你在程序中生成的SQL帖出来看看啊
唯为 2005-03-05
  • 打赏
  • 举报
回复
不要慌乱。
300行代码都是事务的话,先执行一半看出问题不,找出出问题的一半sql,然后再排除1/4,……把错误确定在十几二十行中(如果高兴可以试到是哪一条出了问题),仔细检查一下。在数据库里可以执行在代码里不行有时候是夹参数的时候出的错。
congbailing_914 2005-03-05
  • 打赏
  • 举报
回复
看看你的输入法,可能在你输入字符串的时候,你用的是智能输入法,那么其中就有可能有特殊字符出现!
farmer0512 2005-03-04
  • 打赏
  • 举报
回复
是类型为Char的字段长度的问题,oracle8i的在入库数据是中文,而且和该字段长度刚好相等,比如Char(4)你入库两个汉字就可能出现911错误。你可以用其他数据库工具测试你的sql语句看看。
FaneAnn 2005-03-04
  • 打赏
  • 举报
回复
把你的
String sql = "";
{
此处给sql赋值,组合成一个update的sql语句
}
这个代码贴出来看看
zhengg21 2005-03-04
  • 打赏
  • 举报
回复
我的sql是可以在 命令行工具中执行的,语法没有问题的。
fog628 2005-03-04
  • 打赏
  • 举报
回复
回复人: zhengg21(很努力)
感谢上面两位仁兄的帮助,但是我的sql语句是正确的,复制到sqlplus 中执行是正确的。

=================================================
是啊,在sqlplus中要分号,但用JDBC就不能有了,你去掉分号试试,

以前我也遇过和你一样的问题。
superfishmanweb 2005-03-04
  • 打赏
  • 举报
回复
你是用jdbc的吗,你试一下把execute,try出来看看有没有什么错误的提示,如日期就不可以直接用,要用todate或{d}
itjourney 2005-03-04
  • 打赏
  • 举报
回复
sql语句里面是否有引号"?
zhengg21 2005-03-04
  • 打赏
  • 举报
回复
感谢上面两位仁兄的帮助,但是我的sql语句是正确的,复制到sqlplus 中执行是正确的。
zhoujie_java 2005-03-04
  • 打赏
  • 举报
回复
ORA-00911: invalid character.
Cause: Special characters are valid only in certain places. If special characters
other than $, _, and # are used in a name and the name is not enclosed in double ...



贴出来一部分,知道错误了吧!
farmer0512 2005-03-04
  • 打赏
  • 举报
回复
另外可能的话就是外键的问题了,oracle的外键很严的,如果出错也会抛出911,你检查SQL代码看看。另,300多行你要执行的是一个事务吧,看看是到哪一行抛出异常。
zhengg21 2005-03-04
  • 打赏
  • 举报
回复
生成SQL 的代码非常复杂,如果都贴出来有300行还多,
上面的建议我都试过了,还是不可以呀?
急死我了
fog628 2005-03-03
  • 打赏
  • 举报
回复
你的DB是不是Oracle啊,

应该是你的SQL语句后有一个分号
qjhaaaaa 2005-03-03
  • 打赏
  • 举报
回复
sql的值错了
里面可能有'或者其他的非法字符

62,635

社区成员

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

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