SQL Server中TEXT類型欄位值在資料庫中追加字串方法

來源:互聯網
上載者:User
SQL Server中TEXT類型欄位值在資料庫中追加字串方法 對text類型欄位值進行追加更新的操作,一開始用了簡單的update語句試了試,有錯誤,
原來text、ntext類型的欄位不能和 varchar類型進行add(+)運算,找了半天資料,查了一下協助文檔,終於找到了如何解決的方法了。 表: CREATE TABLE [dbo].[test] ([id] [int] IDENTITY (1, 1) NOT NULL ,[mytext] [text] COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]GO 資料: id      mytext 1       aaaa 
在TEXT類型中追加字串: DECLARE @ptrval binary(16)SELECT @ptrval = TEXTPTR(mytext) from testUPDATETEXT test.mytext @ptrval null 0 'bbbb' 運行結果: id      mytext 1       aaaabbbb 
追加成功,這個是在資料庫中完成的,操作TEXT類型欄位的和操作普通其它字串類型欄位是不一樣的,這裡需要用updatetext語句才行。
 下面是updatetext的協助說明: UPDATETEXT 更新現有 text、ntext 或 image 欄位。
使用 UPDATETEXT 在適當的位置更改 text、ntext 或 image 列的一部分。
使用 WRITETEXT 來更新和替換整個 text、ntext 或 image 欄位。 文法 UPDATETEXT { table_name.dest_column_name dest_text_ptr }     { NULL | insert_offset }     { NULL | delete_length }    [ WITH LOG ]    [ inserted_data        | { table_name.src_column_name src_text_ptr } ] 參數 table_name.dest_column_name 要更新的表和 text、ntext 或 image 列的名稱。
表名和列名必須符合標識符的規則。有關更多資訊,請參見使用標識符。指定資料庫名和所有者名是可選的。 dest_text_ptr 指向要更新的 text、ntext 或 image 資料的文本指標的值(由 TEXTPTR 函數返回)。dest_text_ptr 必須為 binary(16)。 insert_offset 以零為基的更新起始位置。對於 text 或 image 列,insert_offset 是在插入新資料前從現有列的起點開始要跳過的位元組數對於 ntext 列,insert_offset 是字元個數(每個 ntext 字元佔用 2 個位元組)。開始於這個以零為基的起始點的現有 text、ntext 或 image 資料向右移,為新資料騰出空間。值為 0 表示將新資料插入到現有位置的開始處。值為 NULL 則將新資料追加到現有資料值中。 delete_length 是從 insert_offset 位置開始的、要從現有 text、ntext 或 image 列中刪除的資料長度。delete_length 值對於 text 和 image 列用位元組指定,對於 ntext 列用字元指定。每個 ntext 字元佔用 2 個位元組。值為 0 表示不刪除資料。值為 NULL 則刪除現有 text 或 image 列中從 insert_offset 位置開始到末尾的所有資料。 WITH LOG 在 Microsoft SQL Server 2000 中被忽略。在該版本中,日誌記錄由資料庫的有效恢複模型決定。 inserted_data 是要插入到現有 text、ntext 或 image 列 insert_offset 位置的資料。這是單個 char、nchar、varchar、nvarchar、binary、varbinary、text、ntext 或 image 值。inserted_data 可以是文字或變數。 table_name.src_column_name 用作插入資料來源的表或 text、ntext 或 image 列的名稱。表名和列名必須符合標識符的規則。 src_text_ptr 指向作為插入資料來源使用的 text、ntext 或 image 列的文本指標值(由 TEXTPTR 函數返回)。 注釋 新插入的資料可以是單個 inserted_data 常量、表名、列名或文本指標。     Update 操作 UPDATETEXT 參數  替換現有資料 指定一個非空 insert_offset 值、非零 delete_length 值和要插入的新資料。  刪除現有資料 指定一個非空 insert_offset 值、非零 delete_length 值。不指定要插入
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.