Rumah >pangkalan data >tutorial mysql >Bagaimanakah Tanda Sebut Harga Mempengaruhi Sensitiviti Kes dan Akses kepada Nama Jadual Oracle?
Peranan tanda petikan dalam nama jadual dalam pangkalan data Oracle
Dalam Pangkalan Data Oracle, petikan memainkan peranan penting dalam konvensyen penamaan jadual dan sensitiviti huruf besar. Tidak seperti fungsi utamanya sebagai penanda kumpulan, petikan di sekitar nama jadual mempunyai makna khusus untuk akses jadual dan manipulasi data.
Sensitiviti huruf besar dan tanda petikan
Secara lalai, Oracle menganggap pengecam (termasuk nama jadual) sebagai tidak peka huruf besar-besaran. Walau bagaimanapun, melampirkan pengecam dalam petikan berganda menjadikannya sensitif huruf besar-besaran. Sebagai contoh, jika anda mencipta jadual bernama "SITE" (dengan petikan berganda), anda mesti sentiasa merujuknya menggunakan petikan berganda dan kes tepat yang ditentukan.
Sebagai contoh, pertanyaan berikut akan mengembalikan hasil yang dijangkakan:
<code class="language-sql">SELECT * FROM "SITE" WHERE SITE_ID = 3;</code>
Walau bagaimanapun, pertanyaan tanpa petikan atau huruf besar yang salah akan gagal:
<code class="language-sql">SELECT * FROM SITE WHERE SITE_ID = 3; -- 失败 SELECT * FROM "site" WHERE SITE_ID = 3; -- 失败</code>
Mekanisme di sebalik tabir
Secara dalaman, Oracle menggunakan penukaran tidak sensitif huruf besar (penukaran kepada huruf besar) kepada pengecam yang tidak disebut. Untuk pengecam yang disebut, penukaran ini dilangkau, memastikan pemadanan sensitif huruf besar-besaran.
Aplikasi Praktikal
Menggunakan petikan untuk nama jadual mungkin bermanfaat dalam situasi berikut:
Contoh
Pertimbangkan dua jadual: SITE dan tapak. Tanpa petikan, kedua-dua jadual akan ditafsirkan sebagai jadual "SITE" yang sama. Walau bagaimanapun, gunakan petikan:
<code class="language-sql">CREATE TABLE "SITE"(ID INT, NAME VARCHAR2(100)); CREATE TABLE "site"(ID INT, ACTIVE BOOLEAN);</code>
Jadual ini boleh dikenal pasti dan diakses secara unik:
<code class="language-sql">SELECT * FROM "SITE"; SELECT * FROM "site";</code>
Atas ialah kandungan terperinci Bagaimanakah Tanda Sebut Harga Mempengaruhi Sensitiviti Kes dan Akses kepada Nama Jadual Oracle?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!