2016-04-22 649 views
1

我有一個java應用程序。如何在SQL Server中插入換行符

我插入一些文本sql server database

的java:

courriel.setTxtCouContenu(corps); 

當我檢查我的變種corps我有這樣的:

enter image description here

你可以看到\r\n

所以,當我看着我的數據庫沒有換行符。

我的INSERT語句(iBatis的):

<statement id="insert" 
    parameterClass="test.business.bo.TestBO" 
    resultClass="java.math.BigDecimal"> 
    INSERT INTO dbo.E_COUR (ID, CORPS,) 
    VALUES (#testBO.id:Numeric#, 
    #corps:Varchar#) 
    SELECT SCOPE_IDENTITY() 
    AS value 
</statement> 
+0

Wh你是怎麼看你的數據庫的?如果您使用SSMS,請嘗試將輸出設置爲文本。網格數據將永遠不會顯示換行符...並且請注意換行符可能會在系統中有所不同... – Shnugo

+0

@Shnugo我在我的數據庫中查看我的java應用程序 – Mercer

+0

如果您以正確的換行符插入文本,它,它應該工作。你如何證明,插入的文本不再包含換行符? – Shnugo

回答

1

是在\r\n仍然在字符串中當您使用插入的內容還是將消失?

在SSMS嘗試這種情況:

declare @tbl TABLE(testString VARCHAR(100)); 
insert into @tbl VALUES('test with \r\n encoded line break') 
         ,('test with' + CHAR(13) + CHAR(10) + 'windows line break') 
         ,('test with' + CHAR(10) + 'simple line break'); 

現在切換到(輸出到文本(CTRL + T))

SELECT * FROM @tbl; 

其結果是:

test with \r\n encoded line break 

test with 
windows line break 

test with 
simple line break 

用「輸出到datagrid(ctrl + D)「你不會看到換行符...