1941: Für die '%1!'-Sicht kann kein nicht eindeutiger gruppierter Index erstellt werden
Fehlermeldung:
Meldung 1941, Ebene 16, Status 1, Zeile 2
Für die '%1!'-Sicht kann kein nicht eindeutiger gruppierter Index erstellt werden, weil nur eindeutige Indizes zulässig sind. Erstellen Sie stattdessen einen eindeutigen gruppierten Index.
Ebene:
16.
Beschreibung:
Diese Fehlermeldung erscheint, wenn man versucht, einen nicht eindeutigen gruppierten Index für eine Sicht zu erstellen.
Auswirkungen:
Das SQL Statement kann zwar geparst werden, jedoch zur Laufzeit wird der Fehler ausgelöst.
Behebung:
Fehler der Ebene 16 sind Fehler, die vom Anwender hervorgerufen werden. Sie können und müssen vom Anwender korrigiert werden. Ein Index auf einer Sicht kann nur dann erstellt werden, wenn der Index als eindeutiger gruppierter Index erstellt wird.
Versionen:
Alle Versionen von SQL Server (ab SQL Server 2000).
Beispiele:
USE Northwind;
GO
SET NUMERIC_ROUNDABORT OFF;
SET ANSI_PADDING,
ANSI_WARNINGS,
CONCAT_NULL_YIELDS_NULL,
ARITHABORT,
QUOTED_IDENTIFIER,
ANSI_NULLS ON;
GO
IF OBJECT_ID ('dbo.MyOrderView', 'View') > 0
DROP VIEW dbo.MyOrderView;
GO
CREATE VIEW dbo.MyOrderView
WITH SCHEMABINDING
AS
SELECT SUM(UnitPrice*Quantity*(1.00-Discount)) AS Revenue,
OrderDate, ProductID, COUNT_BIG(*) AS MyCount
FROM dbo.[Order Details] AS od
JOIN dbo.Orders AS o
ON od.OrderID = o.OrderID
GROUP BY OrderDate, ProductID;
GO
CREATE CLUSTERED INDEX cix_MyOrderView
ON dbo.MyOrderView (OrderDate, ProductID);
GO
Anmerkungen:
Im obigen Beispiel wird der Fehler dadurch ausgelöst, daß versucht wird, einen nicht eindeutigen gruppierten Index für eine Sicht zu erstellen.