1. ホーム
  2. string

[解決済み] postgresqlの文字列リテラルとエスケープ文字

2022-07-28 09:47:07

質問

テーブルにエスケープ文字を挿入しようとすると、警告が表示されます。

例えば

create table EscapeTest (text varchar(50));

insert into EscapeTest (text) values ('This is the first part \n And this is the second');

警告を出す。

WARNING:  nonstandard use of escape in a string literal

( PSQL 8.2 の使用 )

どなたか、これを回避する方法をご存知ですか?

どのように解決するのですか?

部分的に テキストは挿入されますが、警告は発生したままです。

このように、テキストの前に'E'を付ける必要があると指摘する議論を見つけました。

insert into EscapeTest (text) values (E'This is the first part \n And this is the second');

これで警告は出なくなりましたが、テキストはまだ正しく返されませんでした。Michael が提案したように追加のスラッシュを追加すると、うまくいきました。

このように

insert into EscapeTest (text) values (E'This is the first part \\n And this is the second');