2016-11-10 10 views
-1

SQL Server 2008で長さ10000の文字を格納するデータ型、VARCHAR(MAX)を使用しようとしましたが、nVARCHAR(MAX)も役立ちません。 私はdynamicSPに1つの出力変数を宣言していますが、これは10k文字より大きなサイズにします。SQL Server 2008で長さ10000の文字を格納するデータ型

ありがとうございます!

+4

VARCHAR(MAX)とNVARCHAR(max)はデータの2ギガバイトまで保持します。これは簡単に10000(または1000万)文字に対応する必要があります。それが役に立たないと言ったら、どういう意味ですか? – Ash

+0

データ型のテキストも使用できます。 –

+1

@ alphaNerd:***いいえ***、*** ***は 'ntext'(または' text')をもう使用しません! 'ntext'、' text'、および 'image'データ型は、将来のバージョンのSQL Serverでは削除されます。新しい開発作業でこれらのデータ型を使用しないようにし、現在使用しているアプリケーションを変更することを計画します。代わりに 'nvarchar(max)'、 'varchar(max)'、 'varbinary(max)'を使用してください。 [詳細はこちら](http://msdn.microsoft.com/en-us/library/ms187993.aspx) –

答えて

0

同じ問題がありました。私たちの解決策は、クエリを変数としてテキストとして保存することです。クエリが終了するまでそれらを連結します。

例:

DECLARE @sql AS NVARCHAR(MAX) 

SET @sql = 'query here' 

@[email protected]+'query here' 

exec(@sql) 
+0

DECLARE "@sql" AS NVARCHAR(MAX) - >もしあなたが観察するならば、変数値をnvarchar(MAX)に制限します。私たちが連結しても私の問題は解決できません。私が間違っていれば私を訂正してください。 –

+0

@PKernel 'NVARCHAR(MAX)'は4Kbに限定されません –

関連する問題