Як я можу скинути "унікальне обмеження ключа" на стовпчик таблиці MySQL за допомогою phpMyAdmin?
Як я можу скинути "унікальне обмеження ключа" на стовпчик таблиці MySQL за допомогою phpMyAdmin?
Відповіді:
Унікальним обмеженням є також індекс.
Спочатку скористайтеся SHOW INDEX FROM tbl_nameдля з’ясування назви індексу. Ім’я індексу зберігається у стовпці, який називається key_nameв результатах цього запиту.
Тоді ви можете використовувати DROP INDEX :
DROP INDEX index_name ON tbl_name
або синтаксис ALTER TABLE :
ALTER TABLE tbl_name DROP INDEX index_name
SHOW CREATE TABLE tbl_name.
Ви можете DROPунікальне обмеження з таблиці, використовуючи phpMyAdmin за запитом, як показано в таблиці нижче. Унікальне обмеження було накладено на поле Крила. У цьому випадку ім'я обмеження те саме, що і ім'я поля.

Індексами, здатними розмістити на столі унікальне обмеження ключа, є PRIMARYі UNIQUEіндекси.
Щоб видалити унікальне обмеження ключів у стовпці, але зберегти індекс, ви можете видалити та відтворити індекс з типом INDEX.
Зауважте, що для всіх таблиць є корисним позначення індексу PRIMARY.
UNIQUEіндекс на звичайний INDEX.
Щоб додати UNIQUE обмеження за допомогою phpmyadmin, перейдіть до структури цієї таблиці та знайдіть нижче та натисніть це,
Щоб видалити UNIQUE обмеження таким же способом, перейдіть до структури та прокрутіть униз до вкладки "Індекси" та знайдіть нижче та натисніть падіння,

Сподіваюся, це працює.
Насолоджуйтесь;)
Для WAMP 3.0: клацніть Структура нижче Додайте 1 стовпець, ви побачите '- Індекси' Клацніть -Індекси та опустіть той індекс, який ви хочете.
Якщо ви хочете видалити унікальні обмеження з таблиці бази даних mysql, використовуйте таблицю alter з індексом падіння.
Приклад:
створити таблицю унікальних_обмежень (unid int, Activity_name varchar (100), CONSTRAINT Activty_uqniue UNIQUE (ім'я_дія_зв’язку), первинний ключ (unid));
alter table unique_constraints drop index activty_uqniue;
Де activty_uqniue це обмеження унікальності для ACTIVITY_NAME стовпчика.
Обмеження можна видалити за допомогою синтаксису:
Як і в MySQL 8.0.19, ALTER TABLE дозволяє більш загальний (і стандарт SQL) синтаксис для скидання та зміни існуючих обмежень будь-якого типу, де тип обмеження визначається з імені обмеження:
ALTER TABLE tbl_name DROP CONSTRAINT symbol;
Приклад:
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;
моє ім’я таблиці - покупці, у яких є унікальний стовпець обмеження emp_id, тепер я збираюся скинути emp_id
крок 1: exec sp_helpindex покупці, дивіться файл зображення
крок 2: скопіюйте індексну адресу

step3: змінити покупців таблиці обмеження падіння обмеження [UQ__buyers__1299A860D9793F2E] змінити покупців таблиці стовпців drop_id
Примітка:
Блок-котирування
замість покупців поміняйте його на назву столу :)
Блок-котирування
ось все ім'я стовпця emp_id з обмеженнями випадає!
Спочатку видаліть таблицю
перейти до SQL
Використовуйте цей код:
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`);