oracle關鍵字作為字段名使用方法


有時我們在定義字段名及別名時所用名與oracle關鍵字同名,這時該如何處理呢?
其實很簡單,只要在此關鍵字加上"",如"group"

SQL> DROP TABLE k;
Table dropped
-- 建立表K,字段名為UID(oracle關鍵字)
SQL> CREATE TABLE k(UID INT);
CREATE TABLE k(UID INT)
ORA-00904: : invalid IDENTIFIER
-- 字段名加""表創建成功
SQL> CREATE TABLE k("UID" INT);
Table created
--插入一些數據
SQL> INSERT INTO k VALUES(1);
1 row inserted
SQL> INSERT INTO k VALUES(2);
1 row inserted
SQL> INSERT INTO k VALUES(3);
1 row inserted
-- 查詢時加不加""都正常(似乎不太符合規范)
SQL> SELECT UID FROM k;
UID
----------
5
5
5
SQL> SELECT "UID" FROM k;
UID
---------------------------------------
1
2
3

-- update時必須加上""
SQL> UPDATE k SET UID=5 WHERE UID=3;
UPDATE k SET UID=5 WHERE UID=3
ORA-01747: invalid user.table.column, table.column, or column specification
SQL> UPDATE k SET "UID"=5 WHERE "UID"=3; 

1 row UPDATED
總結:oracle可以在"關鍵字"的形式引用關鍵字作為字段名與查詢語句的別名。如果不是特殊情況最好不要使用,以免引起代碼編寫過程中的錯誤。


免責聲明!

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



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