Benutzer mit den meisten Antworten
Temptabelle läßt sich nicht finden zum löschen

Frage
-
Hallo zusammen,
ich habe es irgendwie geschafft eine Temporäre Tabelle (#Temp1) mit dem Befehl
SELECT * INTO tempdb.dbo.#Temp1
zu erstellen aber ich kann sie nicht finden und wieder löschen. Ich wollte nur kurz was testen und jetzt funktioniert keine Abfrage mehr, die eine Tabelle mit #Temp1 erstellen möchte!
Der Befehl
SELECT * FROM tempdb.dbo.sysobjects WHERE ID = OBJECT_ID(N'tempdb..#Temp1')
ergibt keinen Treffer. Ich habe schon versucht mit Drop Table zu arbeiten aber hilft auch nicht. Ich habe auch schon den SQL-Server neu gestartet aber bringt auch nichts.
Wie werde ich diese Tabelle wieder los?! Ich bin für jeden Tipp dankbar!
Antworten
-
Ich habe auch schon den SQL-Server neu gestartet aber bringt auch nichts.
Hallo,
das ist schon mal unmöglich; locale temporäre Tabellen werden bereits automatisch gelöscht, wenn die Session geschlossen wird, aus der sie erstellt wurde. Und beim SQL Server wird die gesamte TempDB komplett gelöscht und neu erstellt; unmöglich das da eine temporäre oder permanente Tabelle überbleibt.
Da suchst Du an der falschen Stelle.
Welche Probleme treten wo auf und welche Fehlermeldungen gibt es?
Vorhandensein von temporären Tabellen kannst Du so prüfen:
SELECT * INTO tempdb.dbo.#Temp1 FROM sys.objects; GO SELECT OBJECT_ID('tempdb.dbo.#Temp1') GO
Olaf Helper
[ Blog] [ Xing] [ MVP]- Als Antwort vorgeschlagen Andreas Kreuzberg Dienstag, 2. Januar 2018 07:31
- Als Antwort markiert Stefan FalzModerator Freitag, 16. März 2018 12:49
-
Hallo,
danke für die schnelle Rückmeldung aber ich habe das Problem gefunden.
Ich hatte vergessen in meiner Procedure die SELECT Zeile mit von "INTO" zu "INSERT INTO" anzupassen. Er hat quasi jedes mal die Tabelle doppelt erzeugen wollen.
Das hätte mir eigentlich gleich auffallen müssen aber habe als an der falschen stelle gesucht...
- Als Antwort markiert Stefan FalzModerator Freitag, 16. März 2018 12:49
Alle Antworten
-
Ich habe auch schon den SQL-Server neu gestartet aber bringt auch nichts.
Hallo,
das ist schon mal unmöglich; locale temporäre Tabellen werden bereits automatisch gelöscht, wenn die Session geschlossen wird, aus der sie erstellt wurde. Und beim SQL Server wird die gesamte TempDB komplett gelöscht und neu erstellt; unmöglich das da eine temporäre oder permanente Tabelle überbleibt.
Da suchst Du an der falschen Stelle.
Welche Probleme treten wo auf und welche Fehlermeldungen gibt es?
Vorhandensein von temporären Tabellen kannst Du so prüfen:
SELECT * INTO tempdb.dbo.#Temp1 FROM sys.objects; GO SELECT OBJECT_ID('tempdb.dbo.#Temp1') GO
Olaf Helper
[ Blog] [ Xing] [ MVP]- Als Antwort vorgeschlagen Andreas Kreuzberg Dienstag, 2. Januar 2018 07:31
- Als Antwort markiert Stefan FalzModerator Freitag, 16. März 2018 12:49
-
Hallo,
danke für die schnelle Rückmeldung aber ich habe das Problem gefunden.
Ich hatte vergessen in meiner Procedure die SELECT Zeile mit von "INTO" zu "INSERT INTO" anzupassen. Er hat quasi jedes mal die Tabelle doppelt erzeugen wollen.
Das hätte mir eigentlich gleich auffallen müssen aber habe als an der falschen stelle gesucht...
- Als Antwort markiert Stefan FalzModerator Freitag, 16. März 2018 12:49