108: Die ORDER BY-Positionsnummer %1! ist größer als die Anzahl von Elementen in der Auswahlliste.
Fehlermeldung:
Meldung 108, Ebene 15, Status 1, Zeile n
Die ORDER BY-Positionsnummer %1! ist größer als die Anzahl von Elementen in der Auswahlliste.
Ebene:
15.
Beschreibung:
SQL Server erlaubt die Referenzierung einer Spalte in der ORDER BY Klausel durch Angabe ihrer ordinalen Position in der SELECT Liste. Die Fehlermeldung erscheint, wenn eine Positionsnummer angegeben wird, der keine korrespondierende Spalte zugeordnet werden kann. Die Beispiel weiter unten verdeutlichen dies.
Auswirkungen:
Das SQL Statement kann nicht geparst werden. Die weitere Ausführung wird abgebrochen.
Behebung:
Fehler der Ebene 15 sind Fehler, die vom Anwender hervorgerufen werden. Sie können und müssen vom Anwender korrigiert werden.
Versionen:
Alle Versionen von SQL Server
Beispiel(e):
SELECT OrderID
FROM Northwind..Orders
ORDER BY 0
SELECT c1
FROM
(SELECT 1 UNION ALL
SELECT 2 UNION ALL
SELECT 3) AS t (c1)
ORDER BY 2
Anmerkungen:
Das 1.te Statement is ungültig, da es keine Spalte 0 in der SELECT Liste gibt. Aus dem gleichen Grund ist das 2.te Statement ungültig. In beiden Fällen würde die Angabe ORDER BY 1 das Statement gültig und ausführbar machen.