Melepaskan Peratusan Tersurat dan Menggariskan Aksara dalam Mod NO_BACKSLASH_ESCAPES MySQL
Dalam MySQL, mod NO_BACKSLASH_ESCAPES melumpuhkan aksara garisan belakang tradisional () mekanisme dalam pertanyaan LIKE. Mod ini memperkenalkan cabaran apabila cuba melarikan diri peratus literal (%) dan garis bawah (_) aksara.
Kaedah Melarikan Diri Standard
Kaedah standard untuk melarikan peratus aksara dalam pertanyaan SUKA adalah untuk mendahuluinya dengan garis miring ke belakang (). Walau bagaimanapun, dalam mod NO_BACKSLASH_ESCAPES, kaedah ini tidak akan berfungsi.
Escape Character Alternative
Untuk melarikan diri aksara literal tanpa menggunakan garis miring ke belakang, anda boleh menentukan aksara melarikan diri alternatif menggunakan kata kunci ESCAPE. Contohnya:
SELECT * FROM mytable WHERE mycol LIKE '5\% off' ESCAPE '\';
Versi-Independent Escape
Untuk membuat pertanyaan yang berfungsi tanpa mengira tetapan mod NO_BACKSLASH_ESCAPES, anda boleh menggunakan aksara melarikan diri yang berbeza. Sebagai contoh, aksara paip (|) boleh ditakrifkan sebagai aksara melarikan diri:
SELECT * FROM mytable WHERE mycol LIKE '5|% off' ESCAPE '|';
Dengan menentukan aksara melarikan diri alternatif, anda boleh melepaskan aksara % dan _ literal secara berkesan walaupun dalam mod NO_BACKSLASH_ESCAPES. Ini membolehkan penciptaan pertanyaan LIKE yang berfungsi dengan pasti dalam konfigurasi MySQL yang berbeza.
Atas ialah kandungan terperinci Bagaimana untuk Melarikan Diri Peratusan Tersurat dan Garis Garis Aksara dalam Mod NO_BACKSLASH_ESCAPES MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!