baochangjin 发表于 2012-08-10 21:07

紧急求助,紧急啊!送分哦!informix的SQL中处理回车换行的问题。

描述一下自己遇到的问题吧。
在informix的数据库中,有如下的数据。
表名:test
数据如下:
username
————————————
aaa
bbb

以上只是一条记录,也就是说字段username中的值是有回车换行符的。

现在,我需要用select语句查询此条记录,但是由于我们系统的限制,查询结果中的回车换行要用其他字符替换比如<BR>。也就是结果要是如下:

username
—————————————
aaa<BR>bbb

这个SQL要如何写呢?
类似如下的,replace如何写?where条件如何写?
select replace(username,换行,'<BR>') from test where username=?;

各位大牛,给分了,非常紧急!!!!!坐等!!!!

baochangjin 发表于 2012-08-10 21:08

再补充一下,需要支持informix9 和informix 11两个版本的。

baochangjin 发表于 2012-08-10 22:38

各位大侠,救救人呀。时间不多了,搞不定就挂了。。。

baochangjin 发表于 2012-08-11 16:54

CU上的高手呢???快帮忙呀

liaosnet 发表于 2012-08-12 02:57

> select * from tt;
id                  

aa
    bb               
asdfas
    asdfs      

2 row(s) retrieved.

> execute procedure ifx_allow_newline('T');

Routine executed.

> select replace(id,'
> ','</BR>') from tt;



(expression)aa</BR>bb

(expression)asdfas</BR>asdfs

2 row(s) retrieved.

baochangjin 发表于 2012-08-12 17:54

回复 5# liaosnet

有没有不用 execute procedure ifx_allow_newline('T');这个的。
用一条SQL语句来实现的。就是直接在select语句中实现,不要前提条件的,因为如果每次都要执行一下ifx_allow_newline这个存储过程,会有影响的。


   

liaosnet 发表于 2012-08-12 18:04

回复 6# baochangjin


    将onconfig配置文件中的 ALLOW_NEWLINE 设置为 1(打开),然后重启数据库~~

baochangjin 发表于 2012-08-12 20:26

liaosnet 发表于 2012-08-12 18:04 static/image/common/back.gif
回复 6# baochangjin




感谢您了,这个默认配置是改不了的,不能乱改的。
或者 informix下 有没有像oracle下的chr函数一样的。

liaosnet 发表于 2012-08-12 21:57

回复 8# baochangjin


    这个配置是可更改的,功能就是允许换行 ,等效于 ifx_allow_newline('T')
页: [1]
查看完整版本: 紧急求助,紧急啊!送分哦!informix的SQL中处理回车换行的问题。