| « | 十月 2008 | » | ||||
|---|---|---|---|---|---|---|
| 一 | 二 | 三 | 四 | 五 | 六 | 日 |
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | 31 | ||
今天,同事在用torque生成对应表操作的java类时遇到两个错误:
错误1:
[torque-jdbc-transform] java.sql.SQLException: ORA-00600: internal error code, a
rguments: [ttcgcshnd-1], [0], [], [], [], [], [], []
[torque-jdbc-transform] java.sql.SQLException: ORA-00600: internal error code, a
rguments: [ttcgcshnd-1], [0], [], [], [], [], [], []
错误2:
[torque-jdbc-transform] Building column/table map...
[torque-jdbc-transform] java.sql.SQLException: ORA-01424: missing or illegal character following the escape character
[torque-jdbc-transform] java.sql.SQLException: ORA-01424: missing or illegal character following the escape character
两个错误是分别用不同的jdbc遇到的。
其中第一个错误以前遇到过,是因为用低版本的jdbc连接高版本的数据库造成的,解决这个问题很简单,换成高版本的jdbc就可以。
第二个错误就觉得莫名其妙了,从字面含义上看是因为做模糊查询的时候转义出了问题。
我对java不熟悉,所以只能推测是因为在生成java类的时候用了模糊查询从而导致错误。
发生错误的数据库的版本是10203,但这个jdbc的版本是最新的,用来连接其他数据库(包括9i和10g)都是可以正常生成java类的。
网上查了一下,发现有人遇到类似的问题,是因为10g的recyclebin搞的鬼。
于是在发生错误的数据库查了一下:
SQL> select object_name from user_recyclebin;
OBJECT_NAME
------------------------------
BIN$PvG8uWMHqdHgQAB/AQBO8Q==$0
BIN$PjmFUCSsVwLgQAB/AQA7CA==$0
BIN$PjmFUCSrVwLgQAB/AQA7CA==$0
BIN$PjmFUCSqVwLgQAB/AQA7CA==$0
BIN$PjmFUCS2VwLgQAB/AQA7CA==$0
BIN$PjmFUCS6VwLgQAB/AQA7CA==$0
BIN$PjmFUCS5VwLgQAB/AQA7CA==$0
BIN$PjmFUCTlVwLgQAB/AQA7CA==$0
BIN$PjmFUCTkVwLgQAB/AQA7CA==$0
BIN$PjmFUCTjVwLgQAB/AQA7CA==$0
BIN$PjmFUCTuVwLgQAB/AQA7CA==$0
.....
手工清空回收站:
SQL> purge recyclebin;
Done
再次生成就正常了。
印象中,在10g中遇到过很多次莫名其妙的错误,最后发现都与回收站有关,看来回收站也是有利有弊啊,要权衡使用。
you can disable it
yanggq | 15/11/2007, 22:47