Bagaimana saya bisa melepaskan "Batasan Kunci Unik" pada kolom tabel MySQL menggunakan phpMyAdmin?
Bagaimana saya bisa melepaskan "Batasan Kunci Unik" pada kolom tabel MySQL menggunakan phpMyAdmin?
Jawaban:
Batasan unik juga merupakan indeks.
Pertama digunakan SHOW INDEX FROM tbl_name
untuk mengetahui nama indeks. Nama indeks disimpan di kolom yang disebut key_name
di hasil permintaan itu.
Maka Anda dapat menggunakan DROP INDEX :
DROP INDEX index_name ON tbl_name
atau sintaks ALTER TABLE :
ALTER TABLE tbl_name DROP INDEX index_name
SHOW CREATE TABLE tbl_name
.
Anda dapat DROP
kendala unik dari tabel menggunakan phpMyAdmin seperti yang diminta seperti yang ditunjukkan pada tabel di bawah ini. Kendala unik telah ditempatkan di bidang Lebar sayap. Nama kendala sama dengan nama bidang, dalam contoh ini.
Indeks yang mampu menempatkan batasan kunci unik pada tabel adalah PRIMARY
dan UNIQUE
indeks.
Untuk menghapus batasan kunci unik pada kolom tetapi mempertahankan indeks, Anda bisa menghapus dan membuat ulang indeks dengan tipe INDEX
.
Perhatikan bahwa sebaiknya semua tabel memiliki indeks yang ditandai PRIMARY
.
UNIQUE
indeks dengan reguler INDEX
.
Untuk menambahkan batasan UNIK menggunakan phpmyadmin, pergi ke struktur tabel itu dan temukan di bawah dan klik itu,
Untuk menghapus batasan UNIK, dengan cara yang sama, buka struktur dan gulir ke bawah hingga Tab Indeks dan temukan di bawah lalu klik drop,
Semoga ini berhasil.
Nikmati ;)
Untuk WAMP 3.0: Klik Struktur Di Bawah Tambahkan 1 Kolom, Anda akan melihat '- Indeks' Klik -Indeks dan letakkan indeks mana pun yang Anda inginkan.
Jika Anda ingin menghapus batasan unik dari tabel database mysql, gunakan tabel alter dengan indeks jatuh.
Contoh:
buat tabel unique_constraints (unid int, activity_name varchar (100), CONSTRAINT activty_uqniue UNIQUE (activity_name), primary key (unid));
alter table unique_constraints drop index activty_uqniue;
Di mana activty_uqniue adalah kendala UNIQUE untuk kolom activity_name .
Batasan dapat dihapus dengan sintaks:
Pada MySQL 8.0.19, ALTER TABLE memungkinkan sintaksis yang lebih umum (dan standar SQL) untuk menjatuhkan dan mengubah batasan yang ada dari semua jenis, di mana jenis kendala ditentukan dari nama kendala:
ALTER TABLE tbl_name DROP CONSTRAINT symbol;
Contoh:
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;
nama tabel saya adalah pembeli yang memiliki kolom kendala unik emp_id sekarang saya akan menghapus emp_id
langkah 1: exec sp_helpindex pembeli, lihat file gambar
langkah 2: salin alamat indeks
step3: mengubah batasan drop pembeli tabel [UQ__buyers__1299A860D9793F2E] ubah tabel drop kolom pembeli pembeli emp_id
catatan:
Blokir
bukannya pembeli mengubahnya ke nama tabel Anda :)
Blokir
itu semua nama kolom emp_id dengan batasan dijatuhkan!
Hapus tabel pertama
pergi ke SQL
Gunakan kode ini:
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`);