Rumah >pangkalan data >tutorial mysql >Bagaimana Saya Melarikan Diri Petikan Tunggal dalam Sisipan SQL Server?

Bagaimana Saya Melarikan Diri Petikan Tunggal dalam Sisipan SQL Server?

Barbara Streisand
Barbara Streisandasal
2025-01-23 22:56:10230semak imbas

How Do I Escape Single Quotes in SQL Server Inserts?

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn