改行文字を含む文字列列を持つ行を挿入しようとしています。create table ステートメントと insert クエリを以下に示します。
create table stringtest(id int, inputstr character varying(200));
insert into stringtest values(1,'Name : NOC\r\n\r\nDetail : Detail');
挿入クエリは正しく実行されます。ただし、同じ行がフェッチされた場合 (postgres が Linux の場合)、inputstr の値は改行されずに次のように表示されます。
id | inputstr
----+---------------------------------------------------
1 | Name : NOC\r\n\r\nDetail : Detail
ウィンドウで同じことを行うと、以下に示すように、必要に応じて結果セットが得られます
ngnms=# select * from stringtest;
id | inputstr
----+----------------------------
1 | Site Name : NOC\r +
| \r +
| Device Detail : agentdname
(1 row)
エスケープ文字の代わりに改行を使用して、希望どおりの結果を得るにはどうすればよいですか
追加するポイントは、コピーを使用して同じ行を挿入すると、新しい行が適切に保持されることです