Rumah >pangkalan data >tutorial mysql >Mengapa Menggunakan Tanda Sebut Harga Di Sekitar Nama Jadual dalam Oracle Menyebabkan Ralat 'jadual atau pandangan tidak wujud'?
Dalam Oracle, pertanyaan seperti SELECT * FROM site WHERE site_id = 3
berfungsi dengan baik. Walau bagaimanapun, jika anda menambah petikan berganda di sekeliling nama jadual, seperti SELECT * FROM "site" WHERE site_id = 3
, ia akan menyebabkan ralat "jadual atau paparan tidak wujud". Artikel ini meneroka sebab di sebalik perbezaan ini.
Petikan berganda dan sensitiviti huruf besar
Dalam Oracle, menambahkan petikan berganda pada pengecam menyebabkan Oracle menganggap pengecam sebagai sensitif huruf besar-besaran, dan bukannya menggunakan cara lalai tidak sensitif huruf besar-besaran. Jika anda mencipta jadual (atau lajur) menggunakan petikan berganda, anda mesti sentiasa memetik pengecam menggunakan petikan berganda, dengan kes dinyatakan dengan betul (kecuali untuk semua pengecam huruf besar, dalam hal ini petikan berganda tidak mempunyai kesan).
Pengendalian dalaman pengecam
Secara dalaman, Oracle sentiasa memadankan pengecam secara sensitif huruf besar. Walau bagaimanapun, ia menukar pengecam yang tidak disertakan dalam petikan berganda kepada huruf besar sebelum dipadankan. Jika anda menggunakan petikan berganda di sekitar pengecam, Oracle akan melangkau penukaran kepada huruf besar.
Ringkasan
Jadi sentiasa ingat sensitiviti huruf besar apabila menggunakan petikan berganda di sekeliling nama jadual. Pengecam yang menggunakan petikan berganda mesti dipetik dalam petikan berganda dan menggunakan huruf besar yang betul. Ini memastikan bahawa pertanyaan pangkalan data dilaksanakan seperti yang diharapkan, mengelakkan ralat seperti "jadual atau pandangan tidak wujud".
Atas ialah kandungan terperinci Mengapa Menggunakan Tanda Sebut Harga Di Sekitar Nama Jadual dalam Oracle Menyebabkan Ralat 'jadual atau pandangan tidak wujud'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!