数据库针对于换行符的处理
今天同事在做一WinForm程序的时候遇到一个问题
多行Textbox的值保存到数据库后,再读入,就会发现换行没有了,变成了一行。
但是无论在数据库还是在变量监控中,都是换行的。
查了下相关资料,这个问题是因为不同数据库对换行的不同处理造成的。
Oracle数据库把换行统一都作为CHR(10)处理,也就是说Windows操作系统下输入的\r\n在保存到Oracle时,被替换为CHR(10)了
再读入时,Windows不识别,所以就变成1行了。
替换一下就OK了~
常见的几个数据库的换行符
MySQL : \n或\r\n或CHAR(10)
SQL Server : CHAR(13)
Oracle : CHR(10)
在书写本文时,只有Oracle的CHR(10)我测试了,其他两个数据库未被测试。如果有问题,麻烦留言告诉我。谢谢。