146 Stimmen

Wie kann man Unique in MySQL löschen?

Create Table: CREATE TABLE `fuinfo` (
  `fid` int(10) unsigned NOT NULL,
  `name` varchar(40) NOT NULL,
  `email` varchar(128) NOT NULL,
  UNIQUE KEY `email` (`email`),
  UNIQUE KEY `fid` (`fid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8

Ich möchte den eindeutigen Schlüssel für email Wie?

290voto

Wael Dalloul Punkte 21012

Sie können einfach das folgende SQL-Skript verwenden, um den Index in MySQL zu löschen:

alter table fuinfo drop index email;

62voto

arty Punkte 661

Es gibt eine bessere Methode, bei der Sie die Tabelle nicht ändern müssen:

mysql> DROP INDEX email ON fuinfo;

wobei email der Name des eindeutigen Schlüssels (Index) ist.

Sie können es auch so zurückbringen:

mysql> CREATE UNIQUE INDEX email ON fuinfo(email);

wobei email nach IDEX der Name des Indexes ist und nicht optional ist. Sie können KEY anstelle von INDEX verwenden.

Es ist auch möglich, solche mehrspaltigen Unikate zu erstellen (zu entfernen):

mysql> CREATE UNIQUE INDEX email_fid ON fuinfo(email, fid);
mysql> DROP INDEX email_fid ON fuinfo;

Wenn Sie den Namen des mehrspaltigen Index nicht angegeben haben, können Sie ihn auf diese Weise entfernen:

mysql> DROP INDEX email ON fuinfo;

wobei email der Name der Spalte ist.

10voto

gavin stanley Punkte 1065

Mysql> DROP INDEX email ON fuinfo;

donde E-Mail ist der eindeutige Schlüssel (und nicht der Spaltenname). Sie finden den Namen des eindeutigen Schlüssels durch

mysql> SHOW CREATE TABLE fuinfo;

Hier sehen Sie den Namen des eindeutigen Schlüssels, der z. B. email_2 sein könnte. Also...

mysql> DROP INDEX email_2 ON fuinfo;

mysql> DESCRIBE fuinfo;

Dies sollte zeigen, dass der Index entfernt wurde

6voto

Chandresh Punkte 361

Verwenden Sie die folgende Abfrage:

ALTER TABLE `table_name` DROP INDEX key_name;

Wenn Sie nicht wissen, die key_name dann zuerst versuchen, unten Abfrage, können Sie key_name.

SHOW CREATE TABLE table_name

または

SHOW INDEX FROM table_name;

Wenn Sie den Primärschlüssel aus der Mysql-Tabelle entfernen/entfernen möchten, verwenden Sie die folgende Abfrage dafür

ALTER TABLE `products` DROP INDEX `PRIMARY`;

Code entnommen aus: http://chandreshrana.blogspot.in/2015/10/how-to-remove-unique-key-from-mysql.html

4voto

Lina Gom Punkte 97

DROP INDEX column_name ON tabelle_name

Wählen Sie die Datenbank und die Abfrage auf der Registerkarte "SQL" aus, um den Index der betreffenden Spalte zu entfernen. Es funktionierte für mich in PHP MyADMIN

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X