都是平時所遇到的一些oracle錯誤,在此記錄,以備日後查詢!<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
也許錯誤原因不至這些,還望各位指正補充。
ORA-01017:invalid username/password;logon denied
比較簡單,一看就知,用戶名或密碼錯誤
可當初怎麼也沒弄明白,明明用戶、密碼都沒問題呀,我還專門用Enterprise Manager Console確認了幾次!
再後來細查之下,才發現創建用戶時多加了兩引號(''),唉,超鬱悶,不細心呀!
java.sql.SQLException: Exhausted Resultset
用盡結果集,if(rs.next()){...}
java.sql.SQLException: ORA-00600: 內部錯誤代碼,參數: [ttcgcshnd-1], [0], [], [], [], [], [], []
不能用oralce8的jdbc調用oracle9,一句話,版本問題!更正:替換classes12.jar
ora-12535 : TNS:operation timed out
防火牆開了,導致客戶端與服務端連接不上。
java.sql.SQLException: ORA-00933: SQL command not properly ended
檢查sql語句是否正確,跑一遍SQL就知道問題所在了
ORA-00936: missing expression
跟上面一樣咯,檢查SQL吧
ORA-01441:要減小列長度,則要修改道感必須爲空(empty)
Oracle數據庫字段長度由大改小,就會報此錯
曾經看過一個感覺很好的解決辦法(記不清哪看到的了),如下:
ALTER TABLE tableName ADD a VARCHAR2(50)
UPDATE tableName SET a = sbbh
ALTER TABLE tableName DROP COLUMN sbbh
ALTER TABLE tableName ADD sbbh VARCHAR(50)
UPDATE tableName SET sbbh = a
ALTER TABLE tableName DROP COLUMN a
java.sql.SQLException: ORA-01438: 值大於此列指定的允許精確度
插入的值對於表中某列來講太大.由精度,可判斷該錯誤是一個有關數字列的問題
java.sql.SQLException: ORA-01000: 超出打開遊標的最大數
好好查查程序吧,conn.createStatement()和conn.prepareStatement()就相當於打開了一個cursor,
遊標超過範圍就出這問題嘍!加大遊標當然也可解決,但治標不治本,還是看看哪沒關閉statement吧
可別寫到循環裏去了,不停地開啊開,最後就死掉了