Как узнать имя ограничения (MySQL)
(Использую MySQL)
Я хочу удалить ограничение, но мне нужно его имя
Вопрос: Как узнать имя ограничения (Я его не задавал явно), оно было
генерировано. Спасибо.
Почему решил это сделать: Есть таблица, в которой есть FK
+--------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+----------------+ | w_id | int(11) | NO | PRI | NULL | auto_increment | | w_name | varchar(20) | NO | | NULL | | | w_ar | int(11) | YES | MUL | NULL | | +--------+-------------+------+-----+---------+----------------+
Но я не могу его удалить запросом:
ALTER TABLE work DROP FOREIGN KEY fk_work;
И в чем изюминка: Когда ввожу запрос первый раз, то:
Query OK, 0 rows affected (0.23 sec) Records: 0 Duplicates: 0 Warnings: 0
Когда ввожу запрос второй раз, то:
ERROR 1025 (HY000): Error on rename of '.\default_test\work' to '.\default_test\#sql2-1378-1' (errno: 152)
Источник: Stack Overflow на русском