Mengendalikan Petikan Tunggal dalam Sisipan Pelayan SQL
Memasukkan data teks ke dalam pangkalan data SQL Server memerlukan pengendalian yang teliti terhadap aksara khas, terutamanya petikan tunggal ('). Mengendalikan perkara ini secara tidak betul boleh menyebabkan ralat sintaks SQL.
Pertimbangkan pernyataan SQL yang bermasalah ini:
<code class="language-sql">INSERT INTO my_table VALUES ('It's a test.');</code>
Petikan tunggal dalam "It's" akan menamatkan rentetan literal secara pramatang, menyebabkan ralat.
Penyelesaian dalam SQL Server adalah mudah: gandakan petikan tunggal. Pernyataan yang diperbetulkan ialah:
<code class="language-sql">INSERT INTO my_table VALUES ('It''s a test.');</code>
Teknik ini terlepas daripada petikan tunggal dalam rentetan, membolehkan keseluruhan rentetan ditafsirkan dengan betul.
Mari kita ilustrasikan dengan contoh praktikal menggunakan SQL Server (versi tidak kritikal, kaedah ini berfungsi merentas versi):
<code class="language-sql">DECLARE @my_table TABLE ( [value] VARCHAR(200) ); INSERT INTO @my_table VALUES ('It''s a test with multiple ''quotes''.'); SELECT * FROM @my_table;</code>
Output akan dipaparkan dengan betul:
<code>value ------------------------------ It's a test with multiple 'quotes'.</code>
Ini menunjukkan cara menggandakan petikan tunggal dengan berkesan mengendalikannya dalam literal rentetan SQL Server semasa pemasukan. Pendekatan ini mengelakkan kaedah pertanyaan berparameter yang lebih kompleks untuk isu khusus ini.
Atas ialah kandungan terperinci Bagaimana Saya Melarikan Diri Petikan Tunggal dalam Sisipan SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!