2017-03-17 11 views
0

Dies ist eine wirklich seltsame Frage. Ich habe eine dynamische gespeicherte SQL-Prozedur, die Daten in eine statische Tabelle in der abgefragten Datenbank einfügt. Diese Tabelle wird in der Abfrage häufig referenziert. Als ich also diese Tabelle ändern und zwei neue Spalten hinzufügen musste, löschte ich sie und benutzte den Import-Assistenten (Excel-Tabellenblatt), um ein neues zu erstellen und ihm den gleichen Namen zu geben, sodass ich den SP nicht ändern musste. Das SP funktioniert gut, jedoch habe ich diese Abfrage auch außerhalb von dynamischem SQL und wenn ich es ausführe, schlägt es jetzt fehl.SQL alte Tabelle immer noch

Zuerst konnte ich nicht herausfinden warum, aber als ich sah, dass es auf der INSERT INTO die neu erstellte Tabelle (aber mit dem gleichen Namen) scheiterte, weil es zu viele Spalten gab, um die Tabelle anzupassen. Ich lief eine einfache SELECT * FROM und es brachte die alte Tabelle mit den 3 Spalten zurück, die es hatte, und nicht die neue Tabelle mit 5 Spalten?

Wie kann diese Tabelle noch existieren, wenn sie gelöscht wurde? Es ist immer noch wie ein Geistertisch?

Dank

+0

Kannst du bitte ein paar Screenshots von diesem Vorfall hinzufügen? Es ist mehr als wahrscheinlich, dass Sie sich einfach mit der falschen Datenbank oder einer Ansicht mit einem ähnlichen Namen usw. verbinden. – iamdave

+0

Sind Sie sicher, dass Sie die Tabelle in der richtigen Datenbank hinzugefügt/geändert haben? –

+0

So frustrierend! Jedes Mal, wenn ich versuche, einen Screenshot hochzuladen, kommt es mit dem angeforderten Fehler zurück! Ich habe versucht, JPEG und PNG – Carlos80

Antwort

0

Überprüfen Sie zuerst Ihre temporäre Tabelle existiert oder nicht in Ihrem database.IF Mittel Tisch Temp fallen vorhanden ist, und dann neu erstellen.

+0

Dank Mansoor, aber es ist keine temporäre Tabelle eine statische Tabelle in der Datenbank gespeichert. – Carlos80

0

Dies ist bekannt Verhalten mit Ansichten und kann behoben werden, indem Sie die Ansicht ablegen und neu erstellen. Nicht sicher, warum es sich für einen Tisch genauso verhält. Möglichkeiten, die ich mir vorstellen kann -

  1. Es ist eine Ansicht
  2. Die neue Tabelle nicht in der gleichen Datenbank

Versuchen Abwurf und Neuerstellung der sproc erstellt wurde, für was es wert ist

Verwandte Themen