我必須在SQL Server 2005中使用具有TEXT數據類型的列來存儲我需要用換行符和製表符來格式化的字符串,例如。TEXT的SQL Server數據類型不保持格式
在調用存儲過程之前,我添加了一個斷點來查看我在VS2010中的文本可視化器中發送的文本,並且所有格式都正是我想要的,但是當我將該單元放入數據庫,並複製出數據,格式化會丟失。根據我所看到的,每次在字符串中出現換行符或製表符時,文本數據類型都會用空格替換它。對於換行符,我使用vbNewline和製表符我使用vbTab或Xml.Formatting.Indented
值得注意的是,我不能改變列的數據類型,因爲它只是一個我必須使用的表一個特定的目的。
有關如何使用數據類型的文本在數據庫中正確格式化的任何建議?
例:
SQL表腳本代表表格:
CREATE TABLE [dbo].[FooLog](
[FooID] [int] IDENTITY(1,1) NOT NULL,
[FooInfo] [text] NULL)
的StringBuilder代碼:
Dim sb As New StringBuilder()
sb.AppendFormat("{0}{1}", "Some text", vbNewLine)
sb.AppendLine("Some foo bar data")
sb.AppendLine(String.Format("{0}data{1}{0}some more data", vbTab, vbNewLine))
Dim stringToStoreInFooInfo As String = sb.ToString()
存儲在DB:
db.AddInParameter(cmd, "FooInfo", SqlDbType.Text, stringToStoreInFooInfo)
我不讀它回來與c ode目前...我用Ctrl-C將它複製出單元格或右鍵單擊「複製」
我建議你創建一個這樣的小例子,然後發佈它。只需要一個ID列和TEXT字段的表格,以及用於填充它並將其讀回的簡單代碼。 –
你寫過「當我走進數據庫中的單元格,並複製出數據,格式化會丟失」。你如何「去細胞」,以及如何複製數據? – Diego
@Diego我去MSSQLMS,查詢記錄,突出顯示的單元格,並使用Ctrl + C或右鍵單擊「複製」 – wakurth