Klausa-Tidak Peka Huruf WHERE dalam Pelayan SQL
Mencari Data tanpa Mengira Kes
Dalam SQL Server, perbandingan rentetan biasanya tidak peka huruf besar-kecil secara lalai. Walau bagaimanapun, jika anda menghadapi senario di mana sensitiviti kes menjadi isu, anda boleh menentukan himpunan dalam klausa WHERE anda untuk mengendalikan gelagat ini secara eksplisit.
Sebagai contoh, pertimbangkan pertanyaan berikut:
SELECT * FROM myTable WHERE myField = 'sOmeVal'
Jika konfigurasi pangkalan data anda (pengumpulan) tidak ditetapkan untuk tidak peka huruf besar-kecil, pertanyaan ini hanya akan mengembalikan hasil yang nilainya 'myField' ialah padanan tepat dengan 'sOmeVal'. Untuk mengabaikan kes dalam perbandingan anda, anda boleh menggunakan operator COLLATE seperti berikut:
SELECT * FROM myTable WHERE myField COLLATE SQL_Latin1_General_CP1_CI_AS = 'sOmeVal'
Pengumpulan yang ditentukan (SQL_Latin1_General_CP1_CI_AS dalam contoh ini) menentukan peraturan untuk membandingkan rentetan, termasuk kepekaan huruf besar. Dengan menggunakan penyusunan tidak peka huruf besar-besaran seperti CI (Tidak sensitif huruf besar), anda memastikan klausa WHERE mengabaikan perbezaan huruf besar dalam perbandingan.
Perhatikan bahawa pilihan pengumpulan bergantung pada konfigurasi pangkalan data tertentu. Anda harus merujuk kepada dokumentasi Microsoft untuk mendapatkan senarai komprehensif koleksi yang tersedia.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Klausa Tidak Peka Huruf WHERE dalam Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!