Kedengarannya seperti Anda memanggil sp_executesql dengan pernyataan VARCHAR, padahal seharusnya NVARCHAR.
misalnya Ini akan memberikan kesalahan karena @SQL harus NVARCHAR
DECLARE @SQL VARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL
Jadi:
DECLARE @SQL NVARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL