エラーは正しいです。暗黙的に(または明示的に)VARCHAR(MAX)
をキャストすることはできません。 sql_variant
へ 。 Name
の場合 VARCHAR(MAX)
です 互換性のあるタイプ(VARCHAR(8000)
など)に変換する必要があります これをパラメーターとしてsys.fn_sqlvarbasetostr()
に渡すため
msdnを参照してください:
sys.fn_sqlvarbasetostr()
の機能が必要な場合 データを失うことなく列をダウンコンバートすることはできません。その関数の独自のバージョンをロールする必要があるかもしれません。 CLRは良い賭けでしょう。