Oracle表字段有Oracle關(guān)鍵字出現(xiàn)異常解決方案
一、問(wèn)題由來(lái)
現(xiàn)在進(jìn)行項(xiàng)目改造,數(shù)據(jù)庫(kù)需要遷移,由原來(lái)的使用GBase數(shù)據(jù)庫(kù)改為使用Oracle數(shù)據(jù)庫(kù),今天測(cè)試人員在測(cè)試時(shí)后臺(tái)報(bào)了一個(gè)異常。
把SQL語(yǔ)句單獨(dú)復(fù)制出來(lái)進(jìn)行查詢(xún),還是報(bào)錯(cuò),仔細(xì)分析原因才知道是表中的字段使用了Oracle中的關(guān)鍵字size。
二、問(wèn)題分析
項(xiàng)目中使用的Oracle版本如下:
一般來(lái)說(shuō)建表的時(shí)候是不會(huì)使用關(guān)鍵字的,可是之前的開(kāi)發(fā)人員或者是數(shù)據(jù)庫(kù)運(yùn)維人員可能為了偷懶吧,在那張表中使用四個(gè)Oracle中的關(guān)鍵字,
所以導(dǎo)致查詢(xún)的時(shí)候出現(xiàn)異常。
三、解決方案
找到問(wèn)題的原因后,問(wèn)題就好解決了。詢(xún)問(wèn)了一下開(kāi)發(fā)的同事有沒(méi)有好的解決辦法,有個(gè)同事說(shuō)這種情況可是在查詢(xún)的列中使用雙引號(hào)
將需要查詢(xún)的字段包起來(lái)試一下。我立馬去嘗試,簡(jiǎn)單查詢(xún)時(shí)確實(shí)可行,可是使用分組查詢(xún)查詢(xún)后立馬報(bào)錯(cuò)。下面是查詢(xún)語(yǔ)句:
所以使用雙引號(hào)的方案被否定了,因?yàn)椴还苁褂没蛘呤遣皇褂秒p引號(hào)將關(guān)鍵字包起來(lái),group by 后面都不能跟Oracle的關(guān)鍵字。除了這個(gè)問(wèn)題外,
在新增數(shù)據(jù)的時(shí)候,也是出現(xiàn)各種問(wèn)題,按照常規(guī)的方式不能正常插入,只能按照如下的方式進(jìn)行插入,在新增時(shí)表后面不跟列名:
衡量利弊后,發(fā)現(xiàn)表中字段使用關(guān)鍵字這種方式非常不可取,還是改列名這個(gè)方法最靠譜。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Windows系統(tǒng)下Oracle?12c安裝保姆級(jí)圖文教程詳解
這篇文章主要給大家介紹了關(guān)于Windows系統(tǒng)下Oracle?12c安裝保姆級(jí)圖文教程的相關(guān)資料,Oracle數(shù)據(jù)庫(kù)12c的安裝是一個(gè)復(fù)雜的過(guò)程,但通過(guò)正確的安裝前置條件的準(zhǔn)備,精心的安裝過(guò)程確實(shí)可以讓Oracle?12c穩(wěn)定、高效地運(yùn)行在各類(lèi)操作系統(tǒng)中,需要的朋友可以參考下2023-09-09Oracle 臨時(shí)表空間SQL語(yǔ)句的實(shí)現(xiàn)
臨時(shí)表空間用來(lái)管理數(shù)據(jù)庫(kù)排序操作以及用于存儲(chǔ)臨時(shí)表、中間排序結(jié)果等臨時(shí)對(duì)象,本文主要介紹了Oracle 臨時(shí)表空間SQL語(yǔ)句的實(shí)現(xiàn),感興趣的可以了解一下2021-09-09Oracle服務(wù)端1521端口無(wú)法telnet,服務(wù)名未開(kāi)啟監(jiān)聽(tīng)的解決
這篇文章主要介紹了Oracle服務(wù)端1521端口無(wú)法telnet,服務(wù)名未開(kāi)啟監(jiān)聽(tīng)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12SQL優(yōu)化之針對(duì)count、表的連接順序、條件順序、in及exist的優(yōu)化
這篇文章主要介紹了SQL優(yōu)化之針對(duì)count、表的連接順序、條件順序、in及exist的優(yōu)化,有助于讀者深入理解Oracle的運(yùn)行效率及優(yōu)化策略,需要的朋友可以參考下2014-07-07支持在線寫(xiě)SQL的Oracle學(xué)習(xí)免費(fèi)網(wǎng)站推薦!(個(gè)人常使用)
為了便于在線練習(xí),我們常常需要一個(gè)在線運(yùn)行SQL的功能,下面這篇文章主要給大家推薦介紹了一個(gè)支持在線寫(xiě)SQL的Oracle學(xué)習(xí)免費(fèi)網(wǎng)站(個(gè)人常使用),需要的朋友可以參考下2022-12-12Oracle創(chuàng)建定時(shí)任務(wù)的方法步驟
在日常的數(shù)據(jù)庫(kù)管理中,經(jīng)常會(huì)遇到需要定期執(zhí)行某個(gè)任務(wù)的需求,本文主要介紹了Oracle創(chuàng)建定時(shí)任務(wù)的方法步驟,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02將mysql轉(zhuǎn)換到oracle必須了解的50件事
我其實(shí)是同一天看到Robert Treat幾人整理的”Mysql 遷移到Oracle前需要了解的50件事“與Baron Schwartz的”O(jiān)racle遷移到Mysql之前需要了解的50件事“的,只是Baron Schwartz的這個(gè)列表可能對(duì)大家更加有用處,也就先將其整出來(lái)了.2010-06-06Oracle中XML插入數(shù)據(jù)時(shí)的空格問(wèn)題解決方案
在使用 foreach 或其他循環(huán)結(jié)構(gòu)時(shí),插入數(shù)據(jù)庫(kù)的數(shù)據(jù)前后可能會(huì)出現(xiàn)不必要的空格,這種額外的空格可能會(huì)導(dǎo)致數(shù)據(jù)不一致,影響查詢(xún)結(jié)果,甚至導(dǎo)致應(yīng)用程序的錯(cuò)誤,本文將為您提供一些常見(jiàn)的解決方法和建議,需要的朋友參考下吧2023-08-08