将“\ n”转换为SQL Server中的实际换行符

时间:2010-01-12 02:23:17

标签: c# sql sql-server database

我在MS SQL Server的表中有一堆varchar(255)和varchar(max)字段。

这些通常是格式化的消息(电子邮件和其他)。大多数字段都具有实际字符“\ n”,但实际上需要换行符。我不需要担心未来的新数据,但不知道如何修复当前在数据库中的东西。

我主要是程序员,而不是SQL / DB Guy,因此任何有关如何解决此问题的指示,或者让我开始使用的资源都将受到赞赏。

3 个答案:

答案 0 :(得分:13)

这应该可以解决问题

UPDATE
    <tablename> 
SET
    <fieldname> = replace(<fieldname>,'\n',char(13)+char(10)),
    <otherfieldname> = replace(< otherfieldname >,'\n',char(13)+char(10))

答案 1 :(得分:2)

此:

print replace('Line 1\nLine 2','\n',char(13))

将产生:

Line 1
Line 2

答案 2 :(得分:1)

我相信你正在寻找char(13)......

select 'hi' + char(13) + 'there'

您可以在选择语句中替换\ n ...

select replace('hi\nthere', '\n', char(13))

或者你可以做更新......

update table set str = replace(str, '\n', char(13))