Freigeben über


MSSQLSERVER_8623

Gilt für: SQL Server

Details

attribute Wert
Produktname SQL Server
Ereignis-ID 8623
Ereignisquelle MSSQLSERVER
Komponente SQLEngine
Symbolischer Name OPTIMIZER_NOPLAN_ERR
Meldungstext Der Abfrageprozessor konnte keinen Abfrageplan erzeugen, da nicht genügend interne Ressourcen verfügbar sind. Dies tritt sehr selten auf und wird nur bei extrem komplexen Abfragen oder Abfragen erwartet, die auf sehr viele Tabellen oder Partitionen verweisen. Vereinfachen Sie die Abfrage. Wenn Sie glauben, dass Sie diese Meldung im Fehler erhalten haben, wenden Sie sich an den Kundendienst, um weitere Informationen zu erhalten.

Erklärung

Der Abfrageoptimierer kann einen Abfrageplan nicht generieren, weil entweder Ressourcen auslaufen oder die Abfrage zu komplex ist, zwei unterschiedliche Zustände können für diesen Fehler zurückgegeben werden.

  • Zustand 1 – Timeout der Abfrage aufgrund des zu komplexen Plans
  • Status 2 – Die Abfrage hat keine Ressourcen mehr – Arbeitsspeicher

Benutzeraktion

Vereinfachen Sie die Abfrage, indem Sie sie in mehrere Abfragen entlang der größten Dimension teilen. Entfernen Sie zunächst alle Abfrageelemente, die nicht erforderlich sind, und versuchen Sie dann, eine temporäre Tabelle hinzuzufügen und die Abfrage in zwei aufzuteilen. Beachten Sie, dass, wenn Sie einen Teil der Abfrage in eine Unterabfrage, Funktion oder einen allgemeinen Tabellenausdruck verschieben, der nicht ausreicht, da sie von dem Compiler in eine einzelne Abfrage umkombiniert werden. Sie können auch versuchen, Hinweise hinzuzufügen, um einen Plan früher zu erzwingen, z. B. OPTION (FORCE ORDER).