tempテーブルのカラムがnvarchar(max)であるかどうかを確認し、変換する場合はnvarchar(4000)にキャストしてsql_variant ?ここ は@audit_oldvalueがsql_variant型で、#tempTrigTから@itemはNVARCHAR(MAX)であるコードの一部です:tempテーブルからsql_variantへのSQLストアnvarchar(max)
set @sql = 'select @audit_oldvalue=[' [email protected] +'] from #tempTrigT';
EXEC SP_EXECUTESQL @sql,N'@audit_oldvalue sql_variant OUTPUT',@audit_oldvalue OUTPUT
#tempTrigT:
Select * into #tempTrigT from (select * from deleted where @Action in ('U','D')) A UNION (select * from inserted where @Action ='I')
あなたは私のコードにそれを修正することができますか?私は傾けるので。また、最初にそのNVARCHAR(MAX)がチェックされているかどうかを確認し、それ以外の場合はそのままキャストしますか? – aggicd