Wie kann ich mit phpMyAdmin die "Unique Key Constraint" in einer Spalte einer MySQL-Tabelle ablegen?
Wie kann ich mit phpMyAdmin die "Unique Key Constraint" in einer Spalte einer MySQL-Tabelle ablegen?
Antworten:
Eine eindeutige Einschränkung ist auch ein Index.
Verwenden Sie zuerst SHOW INDEX FROM tbl_name
, um den Namen des Index herauszufinden. Der Name des Index wird in der Spalte gespeichert, die key_name
in den Ergebnissen dieser Abfrage aufgerufen wird .
Dann können Sie DROP INDEX verwenden :
DROP INDEX index_name ON tbl_name
oder die ALTER TABLE- Syntax:
ALTER TABLE tbl_name DROP INDEX index_name
SHOW CREATE TABLE tbl_name
.
Sie können mit phpMyAdminDROP
eine eindeutige Einschränkung aus einer Tabelle erstellen, wie in der folgenden Tabelle gezeigt. Für das Wingspan-Feld wurde eine eindeutige Einschränkung festgelegt. Der Name der Einschränkung entspricht in diesem Fall dem Feldnamen.
Die Indizes, die eine eindeutige Schlüsselbeschränkung für eine Tabelle festlegen können, sind PRIMARY
und UNIQUE
Indizes.
Um die eindeutige Schlüsselbeschränkung für eine Spalte zu entfernen, aber den Index beizubehalten, können Sie den Index mit dem Typ entfernen und neu erstellen INDEX
.
Beachten Sie, dass es für alle Tabellen eine gute Idee ist, einen Index zu markieren PRIMARY
.
UNIQUE
Index durch einen regulären Index gemindert werden INDEX
.
Um eine EINZIGARTIGE Einschränkung mit phpmyadmin hinzuzufügen, gehen Sie zur Struktur dieser Tabelle und suchen Sie unten und klicken Sie darauf.
Um die EINZIGARTIGE Einschränkung auf die gleiche Weise zu entfernen, gehen Sie zur Struktur und scrollen Sie nach unten bis zur Registerkarte "Indizes". Suchen Sie unten und klicken Sie auf "Ablegen".
Hoffe das funktioniert.
Genießen ;)
Für WAMP 3.0: Klicken Sie auf Struktur unter 1 Spalte hinzufügen. Es wird '- Indizes' angezeigt. Klicken Sie auf -Indexe und legen Sie den gewünschten Index ab.
Wenn Sie eindeutige Einschränkungen aus der MySQL-Datenbanktabelle entfernen möchten, verwenden Sie alter table mit drop index.
Beispiel:
Tabelle erstellen unique_constraints (unid int, aktivitätsname varchar (100), CONSTRAINT activty_uqniue UNIQUE (aktivitätsname), Primärschlüssel (unid));
alter table unique_constraints drop index activty_uqniue;
Wobei activty_uqniue eine EINZIGARTIGE Einschränkung für die Spalte activity_name ist .
Die Einschränkung könnte mit der folgenden Syntax entfernt werden:
Ab MySQL 8.0.19 ermöglicht ALTER TABLE eine allgemeinere (und SQL-Standard-) Syntax zum Löschen und Ändern vorhandener Einschränkungen eines beliebigen Typs, wobei der Einschränkungstyp aus dem Einschränkungsnamen bestimmt wird:
ALTER TABLE tbl_name DROP CONSTRAINT symbol;
Beispiel:
CREATE TABLE tab(id INT, CONSTRAINT unq_tab_id UNIQUE(id));
-- checking constraint name if autogenerated
SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE TABLE_NAME = 'tab';
-- dropping constraint
ALTER TABLE tab DROP CONSTRAINT unq_tab_id;
Mein Tabellenname ist Käufer, der eine eindeutige Einschränkungsspalte emp_id hat. Jetzt werde ich die emp_id löschen
Schritt 1: Käufer von exec sp_helpindex, siehe Bilddatei
Schritt 2: Kopieren Sie die Indexadresse
Schritt 3: Drop-Einschränkung für Tabellenkäufer ändern [UQ__buyers__1299A860D9793F2E] Drop-Spalte emp_id für Tabellenkäufer ändern
Hinweis:
Blockquote
anstelle von Käufern ändern Sie es in Ihren Tischnamen :)
Blockquote
das ist alles Spaltenname emp_id mit Einschränkungen wird gelöscht!
Zuerst Tabelle löschen
gehe zu SQL
Verwenden Sie diesen Code:
CREATE TABLE service( --tablename
`serviceid` int(11) NOT NULL,--columns
`customerid` varchar(20) DEFAULT NULL,--columns
`dos` varchar(30) NOT NULL,--columns
`productname` varchar(150) NOT NULL,--columns
`modelnumber` bigint(12) NOT NULL,--columns
`serialnumber` bigint(20) NOT NULL,--columns
`serviceby` varchar(20) DEFAULT NULL--columns
)
--INSERT VALUES
INSERT INTO `service` (`serviceid`, `customerid`, `dos`, `productname`, `modelnumber`, `serialnumber`, `serviceby`) VALUES
(1, '1', '12/10/2018', 'mouse', 1234555, 234234324, '9999'),
(2, '09', '12/10/2018', 'vhbgj', 79746385, 18923984, '9999'),
(3, '23', '12/10/2018', 'mouse', 123455534, 11111123, '9999'),
(4, '23', '12/10/2018', 'mouse', 12345, 84848, '9999'),
(5, '546456', '12/10/2018', 'ughg', 772882, 457283, '9999'),
(6, '23', '12/10/2018', 'keyboard', 7878787878, 22222, '1'),
(7, '23', '12/10/2018', 'java', 11, 98908, '9999'),
(8, '128', '12/10/2018', 'mouse', 9912280626, 111111, '9999'),
(9, '23', '15/10/2018', 'hg', 29829354, 4564564646, '9999'),
(10, '12', '15/10/2018', '2', 5256, 888888, '9999');
--before droping table
ALTER TABLE `service`
ADD PRIMARY KEY (`serviceid`),
ADD unique`modelnumber` (`modelnumber`),
ADD unique`serialnumber` (`serialnumber`),
ADD unique`modelnumber_2` (`modelnumber`);
--after droping table
ALTER TABLE `service`
ADD PRIMARY KEY (`serviceid`),
ADD modelnumber` (`modelnumber`),
ADD serialnumber` (`serialnumber`),
ADD modelnumber_2` (`modelnumber`);