Oracle中表字段有使用Oracle關鍵字的一定要趁早改!!!


一、問題由來

現在進行項目改造,數據庫需要遷移,由原來的使用GBase數據庫改為使用Oracle數據庫,今天測試人員在測試時后台報了一個異常。

 

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

二、問題分析

項目中使用的Oracle版本如下:

 

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

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

三、解決方案

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

將需要查詢的字段包起來試一試。我馬上進行測試,簡單查詢時確實可行,可是使用分組查詢查詢后立馬報錯。下面是查詢語句:

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

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

 

 衡量各種利弊后,發現表中字段使用關鍵字這種方式非常不可取,還是修改列名這個方法最靠譜。Oracle中關鍵字可以參考

這篇文章:https://blog.csdn.net/hsg77/article/details/23855261


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM