mysql

компьютеры MySQL програмирование

mysql как удалить связь двух таблиц через phpmyadmin.

Примечание:
Были созданы таблицы другим человеком. Клиенты в одной таблицы товары в другой таблицы нужна удалить всех клиентов м тавары есть и другие связоные таблицы 3 или 4 нужна удалить из таблиц клиентов и таваров. Таблицы связоные между собой. запрос писать непридстовляется возможным. Так как неизвесно какие таблицы и как связоны между собой. Хотелось бы удалить связи из этих 2 таблиц и удалитть все данные а потом востонавить связи.

Примечание:
??????
SQL-??????:

DELETE FROM `TransTrail` WHERE `TransTrail`.`id` =619 LIMIT 1

????? MySQL:

#1451 - Cannot delete or update a parent row: a foreign key constraint fails (`albumi_lv_eng/calendars`, CONSTRAINT `FK_TRANSTRAIL_CALENDARS` FOREIGN KEY (`ref_id`) REFERENCES `TransTrail` (`id`))

Примечание:
в чём может быть проблема!? Leax
Ответы:
Какую связь?
Здравствуйте.
Вам нужно зайти в phpmyadmin, выбрать БД и выбрать нужную таблицу. Ниже структуры таблицы будет ссылочка Relation view (Связи). Вот туда кликаете и вот там как раз хранятся связи между таблицами по их ключам
Или выполнить запрос:
ALTER TABLE `table` DROP FOREIGN KEY `foreignkeyname` ;
Проблема в том что у вас нет доступа на удаление родительского элемента (из-за связей).
Пока есть дочерние элементы, вы не сможете удалить или обновить родительский ряд.
Если не ошибаюсь, у вас в `TransTrail` поле `id` связано с `calendars`.`ref_id`
посмотрите связи таблиц тем способом который я указал. Выставьте связи с этими таблицами в пусные значения
попробуйте при удалении указать CASCADE CONSTRAINTS, хотя возможно, это только для Oracle


15 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.