sql >> Database teknologi >  >> RDS >> Sqlserver

Hvorfor får jeg Procedure forventer parameter '@statement' af typen 'ntext/nchar/nvarchar'. når jeg prøver at bruge sp_executesql?

Det lyder som om du kalder sp_executesql med en VARCHAR-sætning, når den skal være NVARCHAR.

for eksempel. Dette vil give fejlen, fordi @SQL skal være NVARCHAR

DECLARE @SQL VARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL

Så:

DECLARE @SQL NVARCHAR(100)
SET @SQL = 'SELECT TOP 1 * FROM sys.tables'
EXECUTE sp_executesql @SQL


  1. mysql tjek sammenstilling af en tabel

  2. Hvordan tjekker man databasen og kontrollerer som følge heraf en alternativknap?

  3. Laravel OrderBy forhold tæller

  4. Trimmer MySQL TRIM-funktionen ikke linjeskift eller vognretur?