使用している SQL Server のバージョンによって異なります。2005 以降では、最大 2GB の文字列を格納できる VARCHAR(MAX) がサポートされています。短い文字列は効率的に (行に) 格納されますが、大きな文字列は BLOB データベース領域に自動的に格納され、BLOB へのポインターのみが行に格納されます。開発者の観点からは、この複雑さについて心配する必要はなく、データが 8000 文字を超える可能性がある場合は VARCHAR(MAX) を使用する必要はありません。
Word ファイルに関しては、実際のファイル (バイナリ形式) をデータベースに保存するか、コンテンツのみを保存するかによって異なります。最初のケースでは、VARBINARY(MAX) を使用できます (または、ファイルをディスクに格納し、パスとその他のファイル メタ データのみを SQL Server に格納します)。実際のコンテンツを保存する場合は、まず適切な形式 (リッチ テキスト、XML など) に変換してから、それを VARCHAR(MAX) に保存する必要があります。
注: データに (単なる ASCII ではなく) Unicode 文字が含まれている場合は、VARCHAR の代わりに NVARCHAR を使用してください。