3

SQL Server 2008 のストアド プロシージャで ntext データ型を操作する方法を考えていました。テーブルに ntext 型の列があります。その列からデータをフェッチし、データを解析し、変更してから保存する必要があります。上記のすべてのタスクで、ストアド プロシージャ/関数を 1 つ以上使用する必要があります。そのため、ストアド プロシージャ間でのデータの受け渡しも関係します。

4

1 に答える 1

7

スキーマを変更する立場にある場合は、データ型を からntextに変更することを検討してnvarchar(max)ください。後者は SQL Server 2005 の新機能で、より効率的で、文字列関数で動作します。

スキーマを変更できない場合は、ntextを type のローカル変数に変換しますnvarchar(max)。文字列関数は で動作しnvarchar(max)ます。例:

declare @txt nvarchar(max)
select @txt = NTextField from YourTable where id = @ID

... process @txt ...

update YourTable set NTextField = @txt where id = @ID
于 2011-12-14T15:34:34.713 に答える