共計 934 個字符,預計需要花費 3 分鐘才能閱讀完成。
本篇內容介紹了“數據庫中創建數據對象時加雙引號存在的問題分析”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
問題
一位開發的同事在 oracle 中創建表空間 A,然后創建用戶 user_a 并指定表空間為 A 時,提示表空間不存在。
看了他創建表空間的語句之后,發現 sql 語句類似如下:
CREATE TABLESPACE a DATAFILE
/u01/app/oracle/oradata/100G/orcl/users01.dbf SIZE 5242880
AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M;
原因分析
由于這個創建表空間的語句是應用程序自動生成的,同時表空間名稱是加了雙引號的,在雙引號下名稱的大小寫是敏感的;
也就是說 create tablespace a XXX 與 create tablespace a XXX 在數據庫中其實是不同的兩個對象。
oracle 默認創建的對象是大寫的,以下兩個語句等價的:
CREATE TABLESPACE A DATAFILE
/u01/app/oracle/oradata/100G/orcl/users01.dbf SIZE 5242880
AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M;
CREATE TABLESPACE a DATAFILE
/u01/app/oracle/oradata/100G/orcl/users01.dbf SIZE 5242880
AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M;
但是以上語句與下面的是不一樣的:
CREATE TABLESPACE“a”DATAFILE
/u01/app/oracle/oradata/100G/orcl/users01.dbf SIZE 5242880
AUTOEXTEND ON NEXT 1310720 MAXSIZE 32767M;
“數據庫中創建數據對象時加雙引號存在的問題分析”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!