Als «unique-constraint» getaggte Fragen

DDL UNIQUE-Einschränkungen stellen sicher, dass die in einer Spalte oder einer Gruppe von Spalten enthaltenen Daten unter allen Zeilen in der Tabelle eindeutig sind. Die in der betreffenden Spalte oder den betreffenden Spalten enthaltenen Daten sind daher nützlich, um eine Zeile in der entsprechenden Tabelle eindeutig zu identifizieren.





2
Benutzerdefinierte eindeutige Spalteneinschränkung, nur erzwungen, wenn eine Spalte einen bestimmten Wert hat
Ist es möglich, eine benutzerdefinierte eindeutige Spalteneinschränkung wie folgt festzulegen? Angenommen, ich habe zwei Spalten subsetund typebeide Zeichenfolgen (obwohl die Datentypen wahrscheinlich keine Rolle spielen). Wenn type"wahr" ist, dann möchte ich die Kombination von typeund subseteinzigartig sein. Ansonsten gibt es keine Einschränkung. Ich benutze PostgreSQL 8.4 unter Debian.


4
Warum sollte ein Schlüssel explizit angegeben werden?
Ich bin sehr neu im Thema Datenbanken, daher klingt dies vielleicht unwissend, aber ich bin neugierig, warum ein Schlüssel in einer Tabelle explizit angegeben werden sollte. Soll dies in erster Linie dem Benutzer mitteilen, dass der angegebene Spaltenwert (hoffentlich) in jeder Zeile eindeutig ist? Die Einzigartigkeit sollte auch dann noch …


4
Overhead für die Index-Eindeutigkeit
Ich habe mit verschiedenen Entwicklern in meinem Büro eine ständige Debatte über die Kosten eines Index geführt und darüber, ob die Eindeutigkeit vorteilhaft oder kostspielig ist (wahrscheinlich beides). Der Kern des Problems sind unsere konkurrierenden Ressourcen. Hintergrund Ich habe zuvor in einer Diskussion gelesen, dass ein UniqueIndex keine zusätzlichen Kosten …


2
Aufschiebbarer eindeutiger Index in Postgres
Ein Blick in die postgres-Dokumentation für alter table zeigt , dass reguläre Einschränkungen als gekennzeichnet werden können DEFERRABLE(genauer gesagtINITIALLY DEFERRED , was mich interessiert). Indizes können auch einer Einschränkung zugeordnet werden, sofern: Der Index darf weder Ausdrucksspalten noch einen Teilindex enthalten Was mich zu der Annahme bringt, dass es derzeit …

1
Muss ich den eindeutigen Index löschen, wenn ich die Größe einer nvarchar-Spalte ändere? Und wird die Tabelle gesperrt, wenn der Index neu erstellt wird?
In unserer Datenbank gibt es eine große Tabelle, die ungefähr so ​​aussieht: CREATE TABLE dbo.production_data ( pd_id BIGINT PRIMARY KEY, serial NVARCHAR(16) NOT NULL UNIQUE, ... ); Aber jetzt ist die Größe des seriellen Feldes zu gering geworden, daher möchte ich es auf 32 ändern. Das Visual Studio-Schema-Vergleichstool schlägt vor, …


1
N'Șc 'wurde als doppelter Schlüssel von N'C' unter Verwendung der Latin1_General_CI_AS-Kollatierung betrachtet
Ich habe eine Tabelle mit einem eindeutigen Schlüssel, der eine NVARCHAR(50)Spalte enthält (richtig oder nicht, aber vorhanden). Wenn Sie also versuchen, einzufügen Școder C(unabhängig von der Reihenfolge der Einfügung), wird die 2. Einfügung aufgrund von Sortierproblemen unterbrochen. Hier ist der Fehler: (1 Zeile (n) betroffen) Meldung 2601, Ebene 14, Status …

5
Warum schlägt dieses UPDATE mit einer Verletzung der eindeutigen Schlüsseleinschränkung fehl?
Ich bin ein "zufälliger" DBA, relativ unerfahren und von diesem Problem verwirrt. Ausführen von MS SQL Server 2012. Das Problem liegt bei dieser UPDATE-Anweisung: UPDATE dbo.tAccts SET Ticket = 'ARP.ExGE' , Method = 'smtp' , AcctOwner = 'r00417819' , DisplayName = '~AppLight HBSFax-Inactive' , Destination = 'r00417819@mail.ad.ge.com' , UpdatedBy = …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.