Was ist der beste Weg, um festzustellen, ob eine temporäre Tabelle in SQL Server vorhanden?
-
08-06-2019 - |
Frage
Beim schreiben von T-SQL-Skript, das ich Plane wieder läuft, oft habe ich die temporäre Tabellen verwenden, um temporäre Daten zu speichern.Da die temporäre Tabelle erstellt wird on the fly, ich möchte in der Lage sein, um Tropfen, der in der Tabelle nur, wenn es vorhanden ist (bevor ich es erstellen).
Werde ich nach der Methode, die ich verwenden, aber ich würde gerne sehen, ob es einen besseren Weg gibt.
Lösung
IF Object_Id('TempDB..#TempTable') IS NOT NULL
BEGIN
DROP TABLE #TempTable
END
Andere Tipps
Die OBJECT_ID-Funktion liefert die interne Objekt-id für die angegebene Objekt-name und-Typ.'tempdb..#t1' bezieht sich auf die table #t1 in der tempdb-Datenbank.'U' ist für die benutzerdefinierte Tabelle.
IF OBJECT_ID('tempdb..#t1', 'U') IS NOT NULL
DROP TABLE #t1
CREATE TABLE #t1
(
id INT IDENTITY(1,1),
msg VARCHAR(255)
)
SELECT name
FROM sysobjects
WHERE type = 'U' AND name = 'TempTable'
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow