Laden...

[MSSQL] Index in Tabelle erstellen

Erstellt von Yheeky vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.079 Views
Y
Yheeky Themenstarter:in
200 Beiträge seit 2008
vor 14 Jahren
[MSSQL] Index in Tabelle erstellen

Hi,

ich habe eine Datenbank mit verschiedenen Tabellen. Eine Tabelle stellt eine Art Zuordnung dar und beinhaltet die Spalten RegelID, **BenutzerID **und SeitenID. Die Tabelle enthält also Regeln, dass bestimmte Benutzer nur auf bestimmte Seiten zugreifen dürfen.
Ich habe RegelID als PrimaryKey und wollte BenutzerID UND SeitenID als Index einrichten, weil ich nicht will, dass es einen doppelten Eintrag mit BenutzerID und SeitenID gibt. Leider hat das nicht geklappt. Ich habe auch bei noch nicht eingegebenen Daten die Fehlermeldung bekommen "PK_BenutzerID: Ein doppelte Schlüssel kann in das 'dbo.BenutzerRechte'-Objekt nicht eingefügt werden".

Was mache ich falsch? 😦

Viele Grüße,
Yheeky

S
72 Beiträge seit 2009
vor 14 Jahren

Hallo Yheeky,

antwort auf deine Frage: Keine Ahnung. Aus deiner Beschreibung wird man nicht schlau 😉

Aber wenn du einen Index anlegen willst, mache es entweder über das Management Studio oder aber per SQL. Und der SQL lautet wie folgt -> MSDN - Create Index

M
198 Beiträge seit 2007
vor 14 Jahren

Du musst auf beide Spalten zusammen einen unique constraint legen, nicht auf jede spalte einzeln.

Y
Yheeky Themenstarter:in
200 Beiträge seit 2008
vor 14 Jahren

Habe den Fehler gefunden. Ich habe bei den Index-Einstellungen den Typ von "Index" auf "Eindeutiger Schlüssel" gestellt und nun funktioniert es.

Danke trotzdem 😃

Gruß Yheeky