我在MS SQL Server的表中有一堆varchar(255)和varchar(max)字段。將「 n」轉換爲SQL Server中的實際換行符
這些通常是格式化的消息(電子郵件和其他)。大多數字段都有實際的字符「\ n」,但實際上需要一個換行符。我不需要擔心未來的新數據,但不知道如何修復當前數據庫中的內容。
我大多是程序員,而不是SQL /數據庫的人,所以任何關於如何解決這個問題的方法或資源讓我開始,將不勝感激。
我在MS SQL Server的表中有一堆varchar(255)和varchar(max)字段。將「 n」轉換爲SQL Server中的實際換行符
這些通常是格式化的消息(電子郵件和其他)。大多數字段都有實際的字符「\ n」,但實際上需要一個換行符。我不需要擔心未來的新數據,但不知道如何修復當前數據庫中的內容。
我大多是程序員,而不是SQL /數據庫的人,所以任何關於如何解決這個問題的方法或資源讓我開始,將不勝感激。
這應該做的伎倆
UPDATE
<tablename>
SET
<fieldname> = replace(<fieldname>,'\n',char(13)+char(10)),
<otherfieldname> = replace(<otherfieldname>,'\n',char(13)+char(10))
此:
print replace('Line 1\nLine 2','\n',char(13))
會產生:
Line 1
Line 2
我相信你正在尋找CHAR(13)...
select 'hi' + char(13) + 'there'
您可以在SELECT語句替換\ n ...
select replace('hi\nthere', '\n', char(13))
或者你也可以做一個更新...
update table set str = replace(str, '\n', char(13))
加比,完美的。謝謝! – Kylar 2010-01-12 02:35:33