【发布时间】:2013-10-31 04:53:36
【问题描述】:
我正在尝试插入包含换行符的字符串列的行。下面给出创建表语句和插入查询。
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)
应该怎么做才能使用换行符而不是转义字符来获得所需的结果
需要补充的是,如果使用复制插入同一行,则新行会正确保留
【问题讨论】:
-
This 可能会有所帮助。
-
我已经通过在字符串之前包含 E 来修复它,如下所示插入到 stringtest values(1,E'Name : NOC\r\n\r\nDetail : Detail');跨度>
标签: sql postgresql