Sensitiviti huruf besar nama jadual PostgreSQL: mengendalikan ketidakpadanan kes
Apabila menggunakan pangkalan data PostgreSQL, pengguna mungkin menghadapi isu akses jadual yang tidak konsisten apabila memindahkan jadual daripada pangkalan data lain (seperti Pelayan MSSQL). Masalah biasa timbul daripada sensitiviti kes nama jadual dalam PostgreSQL.
Dalam PostgreSQL, nama jadual yang tidak disebut adalah tidak peka huruf besar-kecil. Ini bermakna bahawa mengakses jadual bernama "STD_TYPE_CODES" adalah bersamaan dengan "STD_TYPE_codes" atau "std_type_codes". Walau bagaimanapun, memetik nama jadual menjadikannya sensitif huruf besar-besaran, menyebabkan ralat apabila mengakses jadual menggunakan kes yang berbeza.
Untuk menyelesaikan masalah ini, terdapat beberapa cara:
1. Gunakan nama jadual yang tidak disebut
Untuk mengelakkan isu kepekaan huruf besar kecil, disyorkan untuk menggunakan nama yang tidak disebut untuk membuat dan mengakses jadual. Ini memastikan bahawa nama jadual dianggap sebagai tidak sensitif huruf besar dan sepadan dengan kes yang dijangkakan tanpa mengira input pengguna.
2. Gunakan nama jadual yang dipetik secara konsisten
Jika anda menggunakan nama jadual yang dipetik, ia mesti sentiasa dinyatakan menggunakan huruf besar yang betul. Contohnya, jika jadual dicipta sebagai "STD_TYPE_CODES", mengaksesnya mesti sentiasa menggunakan "STD_TYPE_CODES", bukan "std_type_codes" atau "Std_Type_Codes".
3. Tukar jadual sedia ada
Untuk membetulkan jadual sedia ada dengan kes yang tidak sepadan, gunakan arahan ALTER TABLE. Contohnya, untuk menukar jadual "FOO" kepada huruf kecil, gunakan:
<code class="language-sql">ALTER TABLE "FOO" RENAME TO "foo"</code>
4. Ubah suai longgokan pangkalan data
Apabila memindahkan jadual daripada Pelayan MSSQL ke PostgreSQL, longgokan pangkalan data boleh diubah suai untuk memastikan bahawa nama jadual adalah konsisten dengan peraturan sensitiviti huruf besar PostgreSQL. Ini boleh dilakukan dengan:
Atas ialah kandungan terperinci Bagaimanakah PostgreSQL Mengendalikan Sensitiviti Kes dalam Nama Jadual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!