2012-02-09 48 views
0

你好我想&#X0A到&#X0D &#X0A轉換在選擇查詢如何從數據表中的SQL Server中的列中獲取字符串數據

SELECT TOP 1 
@F0 = ID, 
@F1 = MessageSource, 
@F2 = MessageID, 
@F3 = MessageText 
FROM [dbo].[sample_MESSAGE] 
WHERE MessageStatus = 'FR' and [email protected] -- VALID --Lavanya 

SELECT @F0 AS F0, @F1 AS F1, @F2 AS F2, replace(@F3,'
','
') AS F3 
FOR XML RAW 

但它沒有更換我被分配的值,可以在任何一個建議我在這個

+2

你不關閉在'REPLACE'的括號。這應該是發出語法錯誤。 – bfavaretto 2012-02-09 14:11:53

+0

sry的麻煩,我編輯看到我的問題,現在檢查它,我希望它不針對messagetext列的數據 – shannu 2012-02-09 14:15:33

+0

你想搜索並替換字符串&#x0A或值?因爲如果您想要替換值,現在您正在搜索字符串... – FMaz008 2012-02-09 14:16:52

回答

1

也許你的意思是這樣的:

… REPLACE(@F3, CHAR(10), CHAR(13) + CHAR(10)) AS F3 … 

或本:

… REPLACE(@F3, NCHAR(10), NCHAR(13) + NCHAR(10)) AS F3 … 

取決於@F3是否varcharnvarchar

0

它的工作原理:

DECLARE @F0 INT, @F2 INT, @F1 INT, @F3 VARCHAR(MAX) 
SELECT 
@F0 = 1, 
@F1 = 2, 
@F2 = 3, 
@F3 = '
' 


SELECT @F0 AS F0, @F1 AS F1, @F2 AS F2, replace(@F3,'
','
') AS F3 
FOR XML RAW 

所以

,你必須找出你的文本數據是壞的。如果文本包含代碼10個字符 - 你不應該做REPLACE找到這樣'
'字符串替換CHAR(10)CHAR(10)_CHAR(13)代替

相關問題