![](/img/trans.png)
[英]how to use order by clause with union clause in oracle when we need to sort using upper(column name)?
[英]Changed column name to upper case when create a new table through script in Oracle how to resolve this?
我正在使用 Oracle 工具(Oracle SQL 開發人員 - 版本 19.2.1.247)。 當我在 Oracle Db 中創建新表時,它會更改所有大寫的列名,即(CUSTOMERID),但我想保留列名,即(CustomerId)。我正在尋找如何解決這個問題的解決方案。
我做了一些嘗試更改編輯器的格式以及 Tools -> Preference 中的代碼設置,但沒有找到任何合適的東西。
提前致謝。
你應該避免這樣做。 每個 object(表、列、索引、序列、觸發器...)都以大寫形式存儲在 Oracle 字典中。
但是,如果要以小寫形式存儲名稱,則必須使用雙引號
SQL> create table test ( c1 number );
Table created
SQL> select column_name from all_tab_columns where table_name = 'TEST';
COLUMN_NAME
C1
SQL> create table test ( "c1" number );
Table created
SQL> select column_name from all_tab_columns where table_name = 'TEST';
COLUMN_NAME
c1
請記住,如果您以小寫形式存儲值,則任何使用字典的搜索或程序都必須考慮到這一點。 這就是為什么我認為這不是一個好的做法。
Oracle 具有默認功能,它將所有未加引號的表/列標識符轉換為大寫,因此在名稱周圍添加雙引號應該可以解決您的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.