Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL DROP UNIQUE CONSTRAINT

Unique Constraint ermöglicht es Ihnen, die Eindeutigkeit von Datensätzen in Ihrer Datenbanktabelle zu erzwingen und die Datenbankintegrität aufrechtzuerhalten. So löschen Sie Unique Constraint aus der MySQL-Tabelle mit dem MySQL DROP INDEX-Befehl. Es wird auch verwendet, um eindeutige Schlüssel in MySQL zu entfernen.

Was ist Unique Constraint in MySQL?

Unique Constraint für eine Tabelle ist eine Kombination aus einem oder mehreren Feldern, die jeden Datensatz in der Tabelle eindeutig definieren. Diese Felder können Nullwerte enthalten, solange die Kombination der Feldwerte eindeutig ist.

Bonus-Lesetext:FREMDE KY-EINSCHRÄNKUNG LASSEN

So löschen Sie Unique Constraints in MySQL

Hier sind die Schritte zum Löschen der eindeutigen Einschränkung in MySQL. Wir werden die MySQL DROP INDEX-Abfrage verwenden, um einen vorhandenen Index aus einer Tabelle zu entfernen.

Hier ist die Syntax des MySQL DROP INDEX-Befehls

DROP INDEX constraint_name ON table_name
[algorithm_option | lock_option];

In der obigen Abfrage constraint_name der Name der Einschränkung ist und table_name ist der Name Ihrer Datenbanktabelle.

Bitte beachten , unabhängig davon, ob Sie DROP INDEX oder DROP UNIQUE CONSTRAINT möchten, müssen Sie die DROP INDEX-Abfrage verwenden.

Bonus-Lesetext:MySQL DROP DATABASE

Sie können auch 2 optionale Argumente angeben – algorithm_option und lock_option.

algorithm_option kann einen von 3 Werten haben – default, inplace, copy. Abhängig von Ihrem Argument verwendet MySQL verschiedene Algorithmen, um Unique Constraints zu löschen.

Seine Syntax ist

ALGORITHM [=] {DEFAULT|INPLACE|COPY}
  • default – Dies hat den gleichen Effekt wie das Nichtbenutzen von algorithm_option Argument
  • copy – Die Tabelle, in der Sie die Einschränkung löschen müssen, wird kopiert und der Index wird aus der Kopiertabelle gelöscht. Während dieser Zeit sind gleichzeitige Operationen wie INSERT und UPDATE nicht erlaubt.
  • inplace – In diesem Fall wird die Tabelle ohne Einschränkungen an Ort und Stelle neu erstellt. Obwohl diese Option gleichzeitige Operationen erlaubt, setzt sie während der Ausführung eine Metadatensperre.

Abhängig vonlock_option MySQL wird den Lese-/Schreibzugriff auf Ihre Tabellen sperren/nicht sperren, während die Einschränkung gelöscht wird.lock_option hat die folgende Syntax

LOCK [=] {DEFAULT|NONE|SHARED|EXCLUSIVE}

Es braucht 4 Werte:

  • Standard – ermöglicht maximale Parallelität für Ihre Wahl des Algorithmus. es erlaubt sowohl gleichzeitiges Lesen als auch Schreiben, falls unterstützt. Wenn nicht, werden nur gleichzeitige Lesevorgänge zugelassen. Wenn dies ebenfalls nicht unterstützt wird, erzwingt es exklusiven Zugriff.
  • keine – falls unterstützt, können Sie gleichzeitig lesen und schreiben. Andernfalls gibt MySQL einen Fehler aus.
  • shared – wenn die Shared-Option unterstützt wird, können Sie gleichzeitig lesen, aber nicht gleichzeitig schreiben.
  • exclusive – diese Option erzwingt exklusiven Zugriff

Bonus-Lesetext:MySQL DROP COLUMN

Beispiel für MySQL DROP UNIQUE CONSTRAINT

Nehmen wir an, Sie haben die folgende Tabelle mit Unique Constraint.

mysql> create table orders(order_id int primary key,
     order_date date,
     product varchar(255),
     sale int,
     constraint name unique (product)
     );

Hier ist die SQL-Abfrage zum Löschen der eindeutigen Einschränkung name aus der Tabelle Bestellungen .

mysql> DROP INDEX name ON orders;

Bonus lesen:MySQL DROP TABLE

MySQL DROP PRIMARY KEY Index

Da der Primärschlüssel auch ein Beispiel für eine Eindeutigkeitsbeschränkung für Tabellen ist, ist hier die Syntax, um die Primärschlüsselbeschränkung für Tabellenreihenfolgen zu löschen.

mysql> DROP INDEX `PRIMARY` ON orders;

In diesem Fall beziehen wir uns auf das Primärschlüsselfeld als „PRIMARY“, anstatt den Feldnamen zu verwenden.

Ubiq macht es einfach, Daten innerhalb von Minuten zu visualisieren und in Echtzeit-Dashboards zu überwachen. Probieren Sie es noch heute aus!