ホームページ >データベース >mysql チュートリアル >一重引用符で囲まれたテキストを PostgreSQL に正しく挿入するにはどうすればよいですか?

一重引用符で囲まれたテキストを PostgreSQL に正しく挿入するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-23 14:23:10522ブラウズ

How Can I Properly Insert Text with Single Quotes into PostgreSQL?

PostgreSQL に一重引用符を含むテキストを挿入します

PostgreSQL では一重引用符を含む値を挿入するのが難しい場合があります。ただし、確実に適切にエスケープする方法はあります。

一重引用符を使用します

一重引用符を含む値を挿入するには、文字列内でそれらを二重にします:

<code class="language-sql">INSERT INTO test VALUES (1, 'user''s log');</code>

バックスラッシュでエスケープします

standard_conforming_stringsoff に設定されている PostgreSQL バージョン、または E プレフィックスを使用して POSIX エスケープ文字列構文が有効になっている場合、一重引用符はバックスラッシュを使用してエスケープできます:

<code class="language-sql">INSERT INTO test VALUES (1, E'user\'s log');</code>

文字列を引用するにはドル記号を使用します

別のオプション (特に複数レベルのエスケープを含む複雑な文字列の場合) は、文字列をドル記号で引用することです。

<code class="language-sql">INSERT INTO test VALUES (1, $token$escape ' with ''$token$);</code>

文字列を引用符で囲む関数

PostgreSQL には、文字列を正しく引用するための関数が用意されています。

  • quote_literal() または quote_nullable(): 文字列を引用符で囲むか、空の入力の場合は NULL を返します。
  • %Lformat() 指定子: quote_nullable() と同等。

例:

<code class="language-sql">INSERT INTO test VALUES (1, format('%L', 'user''s log'));</code>

以上が一重引用符で囲まれたテキストを PostgreSQL に正しく挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。