Wat is die beste manier om te bepaal of 'n tydelike tabel in SQL Server bestaan?
-
08-06-2019 - |
Vra
Wanneer ek 'n T-SQL-skrip skryf wat ek beplan om weer te laat loop, gebruik ek dikwels tydelike tabelle om tydelike data te stoor.Aangesien die temp-tabel op die oomblik geskep word, wil ek daardie tabel net kan laat val as dit bestaan (voor ek dit skep).
Ek sal die metode plaas wat ek gebruik, maar ek wil graag sien of daar 'n beter manier is.
Oplossing
IF Object_Id('TempDB..#TempTable') IS NOT NULL
BEGIN
DROP TABLE #TempTable
END
Ander wenke
Die OBJECT_ID-funksie gee die interne objek-ID vir die gegewe objeknaam en tipe terug.'tempdb..#t1' verwys na die tabel #t1 in die tempdb-databasis.'U' is vir gebruikergedefinieerde tabel.
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'
Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow