我正在使用带有OJDBC6.jar适配器的oracle 11G。当我试图运行这个非常简单的insert语句时,它抛出了一个无效字符异常。
ActiveRecord::JDBCError: java.sql.SQLSyntaxErrorException: ORA-00911: invalid character
: insert into user_defaults values (8526547125,'H214Qa99547')我的gemfile如下所示:
gem 'activerecord', '4.0.4'
gem 'ActiveRecord-JDBC', '0.5'
gem 'activerecord-jdbc-adapter', '1.3.6'这是在带有OJDBC6.jar的Oracle 11g上
发布于 2014-04-13 17:06:24
这可能与推断的列顺序有关吗?尝试指定列以消除任何歧义:
INSERT INTO user_defaults (user_id, home_office_id)
VALUES (8526547125, 'H214Qa99547')发布于 2014-04-03 15:13:32
之前打印查询
发布于 2014-04-16 02:31:52
我以前也被超范围的ASCII码烧焦过。最好排除这一点,特别是如果你已经尝试了你能想到的所有其他方法。
删除并重新键入整行或多行。在删除该行后,请抵制粘贴该行的诱惑。如果里面有一个不可打印的ASCII字符,它就会把它去掉。
请确保对与SQL语句交互的任何代码行执行此操作,无论是在变量中构建字符串还是实际传递参数以运行查询。
https://stackoverflow.com/questions/22794853
复制相似问题