Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Bagaimana cara membuat nama tabel Oracle tidak peka huruf besar-kecil?

[TL;DR] Hal paling sederhana untuk dilakukan adalah tidak pernah menggunakan tanda kutip ganda di sekitar nama objek dan biarkan Oracle mengelola sensitivitas huruf besar-kecil secara default.

Database Oracle, secara default, peka huruf besar/kecil; namun, mereka juga akan, secara default, mengonversi semuanya menjadi huruf besar sehingga sensitivitas huruf besar disarikan dari Anda, pengguna.

CREATE TABLE tEsT ( column_name NUMBER );

Kemudian:

SELECT COUNT(*) FROM test;
SELECT COUNT(*) FROM Test;
SELECT COUNT(*) FROM TEST;
SELECT COUNT(*) FROM tEsT;

Semua akan memberikan output yang sama dan:

SELECT * FROM USER_TABLES;

Keluaran:

TABLE_NAME
----------
TEST 

(Perhatikan nama tabel dalam huruf besar).

Jika Anda menggunakan tanda kutip ganda maka Oracle akan menghargai penggunaan kasus Anda dalam nama tabel:

CREATE TABLE "tEsT" ( column_name NUMBER );

dan:

SELECT * FROM USER_TABLES;

Keluaran:

TABLE_NAME
----------
TEST 
tEsT

(Catatan:sekarang ada dua tabel bernama TEST dan tEsT dan oracle telah menghormati sensitivitas huruf besar-kecil dari yang kedua - yang dibuat dengan tanda kutip).

(Perhatikan juga:SELECT * FROM tEsT akan memilih dari tabel pertama, yang telah diubah menjadi huruf besar, tetapi SELECT * FROM "tEsT" diperlukan untuk memilih dari yang kedua meskipun kuerinya identik selain dari tanda kutip).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apakah mungkin untuk melihat hak istimewa tabel pengguna Oracle tanpa memiliki hak istimewa DBA?

  2. Mendapatkan Kesalahan saat membuat tampilan di Oracle DB

  3. Apakah Oracle 12 memiliki masalah dengan tipe koleksi lokal di SQL?

  4. SQL - Temukan nilai int yang hilang di sebagian besar seri berurutan

  5. Bisakah kita memperbarui nilai kunci utama dari sebuah tabel?