1. 程式人生 > 資料庫 >Oracle表字段有Oracle關鍵字出現異常解決方案

Oracle表字段有Oracle關鍵字出現異常解決方案

一、問題由來

現在進行專案改造,資料庫需要遷移,由原來的使用GBase資料庫改為使用Oracle資料庫,今天測試人員在測試時後臺報了一個異常。

Oracle表字段有Oracle關鍵字出現異常解決方案

把SQL語句單獨複製出來進行查詢,還是報錯,仔細分析原因才知道是表中的欄位使用了Oracle中的關鍵字size。

二、問題分析

專案中使用的Oracle版本如下:

Oracle表字段有Oracle關鍵字出現異常解決方案

一般來說建表的時候是不會使用關鍵字的,可是之前的開發人員或者是資料庫運維人員可能為了偷懶吧,在那張表中使用四個Oracle中的關鍵字,

所以導致查詢的時候出現異常。

三、解決方案

找到問題的原因後,問題就好解決了。詢問了一下開發的同事有沒有好的解決辦法,有個同事說這種情況可是在查詢的列中使用雙引號

將需要查詢的欄位包起來試一下。我立馬去嘗試,簡單查詢時確實可行,可是使用分組查詢查詢後立馬報錯。下面是查詢語句:

Oracle表字段有Oracle關鍵字出現異常解決方案

所以使用雙引號的方案被否定了,因為不管使用或者是不使用雙引號將關鍵字包起來,group by 後面都不能跟Oracle的關鍵字。除了這個問題外,

在新增資料的時候,也是出現各種問題,按照常規的方式不能正常插入,只能按照如下的方式進行插入,在新增時表後面不跟列名:

Oracle表字段有Oracle關鍵字出現異常解決方案

衡量利弊後,發現表中欄位使用關鍵字這種方式非常不可取,還是改列名這個方法最靠譜。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。