MySQL verwendet UNIQUE, um das Einfügen nicht doppelter Daten zu implementieren

MySQL verwendet UNIQUE, um das Einfügen nicht doppelter Daten zu implementieren

SQL UNIQUE-Einschränkung

Die UNIQUE-Einschränkung identifiziert jeden Datensatz in einer Datenbanktabelle eindeutig.
Sowohl UNIQUE- als auch PRIMARY KEY-Einschränkungen garantieren die Eindeutigkeit einer Spalte oder einer Gruppe von Spalten.
Für einen PRIMARY KEY ist automatisch eine UNIQUE-Einschränkung definiert.

Beachten Sie, dass Sie pro Tabelle mehrere UNIQUE-Einschränkungen haben können, aber nur eine PRIMARY KEY-Einschränkung pro Tabelle.

Das folgende SQL erstellt eine UNIQUE-Einschränkung für die Spalte „Id_P“, wenn die Tabelle „Personen“ erstellt wird:

Tabelle erstellen Personen
(
  Id_P int NICHT NULL,
  Nachname varchar(255) NICHT NULL,
  Vorname varchar(255),
  Adresse varchar(255),
  Stadt varchar(255),
  EINZIGARTIG (Id_P)
)

Wenn Sie eine UNIQUE-Einschränkung benennen und eine UNIQUE-Einschränkung für mehrere Spalten definieren müssen, verwenden Sie die folgende SQL-Syntax:

Tabelle erstellen Personen
(
  Id_P int NICHT NULL,
  Nachname varchar(255) NICHT NULL,
  Vorname varchar(255),
  Adresse varchar(255),
  Stadt varchar(255),
  CONSTRAINT uc_PersonID UNIQUE (Id_P,Nachname)
)

Nachdem die Tabelle erstellt wurde, verwenden Sie das folgende SQL, um eine UNIQUE-Einschränkung für die Spalte „Id_P“ zu erstellen:

ALTER TABLE Persons ADD UNIQUE (Id_P)

Um eine UNIQUE-Einschränkung zu benennen und eine UNIQUE-Einschränkung für mehrere Spalten zu definieren, verwenden Sie die folgende SQL-Syntax:

ALTER TABLE Persons ADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)

Um eine UNIQUE-Einschränkung zu löschen, verwenden Sie das folgende SQL:

ALTER TABLE Persons DROP INDEX uc_PersonID

Auf diese Weise fordert MySQL jedes Mal, wenn Sie einen doppelten Datensatz einfügen, den doppelten Eintrag value1-value2 für den Schlüssel uni_que an. Natürlich können Sie beim Einfügen ignore to ignore hinzufügen. Da es jetzt keine doppelten Datensätze gibt, möchten wir mit dem Einfügen beginnen, wenn der Datensatz nicht existiert, und mit dem Aktualisieren, wenn er existiert.

INSERT INTO tablename (field1, field2, field3, ...) VALUES ('value1', 'value2','value3', ...) ON DUPLICATE KEY UPDATE field1='value1', field2='value2', field3='value3', ...

Diese Anweisung bedeutet, einen Wert einzufügen. Wenn kein Datensatz vorhanden ist, führen Sie Folgendes aus:

INSERT INTO tablename (field1, field2, field3, ...) VALUES ('value1', 'value2','value3', ...)

Führen Sie in diesem Abschnitt, wenn der Datensatz vorhanden ist, Folgendes aus:

UPDATE field1='value1', field2='value2', field3='value3', ...

Das könnte Sie auch interessieren:
  • Suchen Sie nach doppelten Datensätzen in der MySQL-Tabelle
  • MySQL SQL-Anweisung zum Suchen doppelter Daten basierend auf einem oder mehreren Feldern
  • Detaillierte Erklärung, wie man doppelte Daten in MySQL findet und löscht und nur ein Beispiel behält
  • So fragen Sie doppelte Daten in einer MySQL-Tabelle ab
  • Zusammenfassung der Methoden zum Löschen doppelter Daten in der MySQL-Datenbank
  • MySQL-Abfrage doppelter Daten (löschen Sie doppelte Daten und behalten Sie die Daten mit der kleinsten ID als einzige Daten)
  • Sehr umfassender MySQL-Code zur Handhabung doppelter Daten
  • Zusammenfassung der Methoden zum Löschen doppelter Datensätze in der MySQL-Datenbank [Empfohlen]
  • Teilen Sie die Methode zum Ignorieren doppelter Daten beim Einfügen von Daten in MySQL
  • Ein praktischer Bericht über die Prüfung und Bearbeitung doppelter MySQL-Datensätze vor Ort

<<:  Das WeChat-Applet realisiert einen mehrzeiligen Text-Scroll-Effekt

>>:  So zeigen Sie allgemeine Symbole auf dem Desktop in Windows Server 2012 an oder verbergen sie

Artikel empfehlen

Vue verwendet drei Methoden zum Aktualisieren der Seite

Beim Schreiben von Projekten stoßen wir häufig au...

Analyse des MySQL-Warnprotokolls zu abgebrochenen Verbindungen

Vorwort: Manchmal wird die mit MySQL verbundene S...

Detaillierte Erläuterung der MySQL-Lösung zur USE DB-Überlastung

Wenn wir auf einen Fehler stoßen, denken wir oft ...

Detaillierte Erläuterung der Verwaltung und Verwendung von Docker Secrets

1. Was ist Docker Secret 1. Szenariodarstellung W...

Beispiel für die Bereitstellung einer Laravel-Anwendung mit Docker

Das in diesem Artikel verwendete PHP-Basisimage i...

So beheben Sie das Timeout während des Pip-Vorgangs in Linux

So lösen Sie das Timeout-Problem, wenn Pip in Lin...

Wie InnoDB die Serialisierungsisolationsebene implementiert

Serialisierungsimplementierung InnoDB implementie...

Einige Fähigkeiten, die Sie beim Erstellen von Webseiten kennen müssen

1. Z-Index ist in IE6 ungültig. In CSS wird die E...

Verwenden Sie sauberes HTML-Markup zum Erstellen Ihrer Seiten

Das Internet ist ein Organismus, der sich ständig...

Referenzschreiben im JS- und CSS-Stil

CSS: 1. <link type="text/css" href=&q...

Welche Funktion ist !-- -- im HTML-Seitenstil?

Hauptsächlich für Browser mit niedriger Version &l...