Aus verschiedenen Gründen versuche ich ein dynamisches Skript zu erstellen, um Tabellen zu löschen, die ich zuvor erstellt habe. Ich konnte die Syntax nicht richtig machen und brauche dafür Hilfe.So erstellen Sie sp_executesql, um Tabellen dynamisch zu löschen
Wenn ich mein Skript ausführen, gibt es den Fehler:
"Procedure expects parameter '@statement' of type 'ntext/nchar/nvarchar'."
und das ist mein Skript. Es hat einen Fehler in sp_executesql
Aussage, denke ich. Wie kann ich das beheben?
DECLARE @sql VARCHAR(MAX);
DECLARE @tmpTableName VARCHAR(max);
SET @tmpTableName = '##gmAAA_COLLATION';
SET @sql = 'DROP TABLE @tmpTableName';
EXEC sp_executesql @sql, N'@tmpTableName NVARCHAR(max)', @tmpTableName;
Wie haben Sie diese globale temporäre Tabelle überhaupt erstellt? Auch dynamisch? – Squirrel