Informix SQL如何插入换行符

  • 现象描述

  更新字段内容包含多个回城符,直接执行会报错如下:

282: Found a quote for which there is no matching quote.

  • 解决方法
EXECUTE PROCEDURE IFX_ALLOW_NEWLINE('T');

update TAP_BUSSINESS set memo='(1)解决方法一
(2)解决方法二
(3)解决方法三';
  • 方法说明
    • 解决方法一

  会话级解决:在当前连接的数据库会话中先调用执行一个UDR过程,即ifx_allow_newlin(boolean),之后再执行带有回车值写入的sql语句即可;

    • 解决方法二

  数据库实例级别修改配置参数,以支持回车换行写入:即在informix帐户$ONCONFIG文件中将ALLOW_NEWLINE设定为1(默认为0:所有用户不支持写入换行回车)。但此参数修改需要重启数据库生效

  • Oracle怎么做呢

  对于oracle数据库方法更简单,直接在sql语句中使用内部函数即可:换行符=chr(10)||chr(13)

e.g.

 

insert into testTable values ('(1)解决方法一'||chr(10)||chr(13)||'(2)解决方法二');

这样插入的内容为:

“(1)解决方法一

(2)解决方法二”

原文地址:https://www.cnblogs.com/missfox18/p/10107480.html