web-dev-qa-db-ja.com

T-SQL SQL Server 2005のテキストフィールドに追加する方法

Sql Server 2005でt-sqlを使用してテキストフィールドに追加する最良の方法は何ですか?

Varcharを使用してこれを行います。

update tablename set fieldname = fieldname + 'appended string'

しかし、これはテキストフィールドでは機能しません。

22
Paul D. Eden

これを試して:

update 
  tablename
set
  fieldname = convert(nvarchar(max),fieldname) + 'appended string'
38
Bravax

これは動作するはずです(リンク)

リンクからコピー:

DECLARE @ptrval binary(16)
SELECT @ptrval = TEXTPTR(ntextThing)
FROM item
WHERE id =1
UPDATETEXT table.ntextthing @ptrval NULL 0 '!'
GO
6
Joe

2005年には、varchar(max)またはnvarchar(max)を使用する必要があります。これらの列は通常のvarchar関数で機能します。テキストとntextは廃止されました

3
SQLMenace

Varchar(max)の最大長は2,147,483,647文字です。これは、Textデータ型と同じです。

保持できるテキストが何であれ、これは保持できるため、VARCHAR(MAX)に切り替えることでスペース不足を心配する必要はありません。

0
Todd