X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Вопрос по внешним ключам MySQL
ixman
ixman
Topic Starter сообщение 29.9.2015, 19:17; Ответить: ixman
Сообщение #1


В общем возник вопрос по внешним ключам в базах MySQL.
 
Например, есть три таблицы:
 
articles, comments и связующая их таблица, допустим comments2article с идентификаторами articles и comments 
 
iiEhF56.png
 
В связующей таблице настроены внешние ключи
 
FOREIGN KEY (`aid`) REFERENCES `articles`(`id`) ON UPDATE CASCADE ON DELETE CASCADE,
FOREIGN KEY (`cid`) REFERENCES `comments`(`id`) ON UPDATE CASCADE ON DELETE CASCADE

То есть при таком варианте, если происходит удаление/обновление родительских таблиц по отдельности, то дочерняя (она же связующая) реагирует на изменения. Здесь всё хорошо работает.
 
Но меня интересует такой вопрос, как ещё дополнительно связать внешними ключами таблицу articles и comment через comments2article так,  чтобы удаляя запись из таблицы articles. автоматом удалялись и из comments2article, и из comments. 
 
Сомневался в таком методе, но решил опробовать. Связал внешним ключём  таблицу comments
 
FOREIGN KEY (`id`) REFERENCES `comments2article`(`cid`) ON UPDATE CASCADE ON DELETE CASCADE
 
Но как и думалось, так работать не будет.
 
Есть ли решение для такой проблемы?

Сообщение отредактировал Ixman - 29.9.2015, 19:25
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
Topic Starter сообщение 1.10.2015, 20:37; Ответить: ixman
Сообщение #2


Эх печаль беда, столько же спецов здесь крутится. Не ужели никто не использует внешние ключи? Или все сидят на фреймворках и нифига не соображают?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Zhil_hb
Zhil_hb
сообщение 1.10.2015, 23:17; Ответить: Zhil_hb
Сообщение #3


(Ixman @ 1.10.2015, 22:37) *
нифига не соображают
к примеру, это про меня :D  за то честно :)  
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
fedornabilkin
fedornabilkin
сообщение 2.10.2015, 15:45; Ответить: fedornabilkin
Сообщение #4


(Ixman @ 29.9.2015, 21:17) *
Например, есть три таблицы:

Я, к сожалению, даже на фрейморках не сижу. Внешними ключами не пользовался никогда, хотя бывает необходимость. Наверно не знаю как это делать.
Но у меня вопрос возник. Какой смысл третьей таблицы  comments2article? По логике ведь достаточно удобно в таблицу комментариев добавить поле article и писать туда айди статьи.
При удалении статьи, удалять все комменты с айди статьи удаляемой. Или это вообще прошлый век?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
Topic Starter сообщение 2.10.2015, 17:25; Ответить: ixman
Сообщение #5


@[member=fedornabilkin],  такой подход не производительный, не удобный в использовании. У меня древовидная структура комментариев с неограниченной вложенностью, так что мне только через промежуточную таблицу. Да sql запросы так удобней формировать.


@[member=Evgeniy3200]
Ну я явно про людей умеющих программировать ))

Сообщение отредактировал Ixman - 2.10.2015, 18:04
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Zhil_hb
Zhil_hb
сообщение 2.10.2015, 17:29; Ответить: Zhil_hb
Сообщение #6


(Ixman @ 2.10.2015, 19:25) *
Ну я явно про людей умеющих программировать ))
а я ответил, чтобы знал, что тебе всегда готов помочь по мере своих знаний и компетентности :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
Topic Starter сообщение 2.10.2015, 18:04; Ответить: ixman
Сообщение #7


Evgeniy3200, спасибо на добром слове :)  
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ShowPrint
ShowPrint
сообщение 2.10.2015, 18:13; Ответить: ShowPrint
Сообщение #8


Ixman, присоединяюсь к Evgeniy3200, поверь: отсутствие возможности помочь при наличии большого желания - тоже достаточно сложное испытание в жизни... ;)

В мыслях была у меня надежда на fedornabilkin и yury_mw более/менее регулярно появляющихся, но... Кому-кому а тебе, в решении этого вопроса могут помочь или редко появляющиеся (кого я еще плохо знаю) или не здесь... (а например на sql-ном форуме)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
Topic Starter сообщение 2.10.2015, 18:32; Ответить: ixman
Сообщение #9


ShowPrint, не люблю просто регистрироваться на чуждом мне форуме ради одного вопроса, я просто чую, то что я хочу не реализуемо. Но всё же решил спросить, здесь есть опытные люди, но действительно редко появляются. Пока обойдусь по старинке буду удалять дополнительными запросами, хотя хотелось бы всё одним  :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ShowPrint
ShowPrint
сообщение 2.10.2015, 18:40; Ответить: ShowPrint
Сообщение #10


Ixman, понимаю, сам такой...  :huh:
Читал опытных людей, но они как-то появляются здесь "от случая к случаю", а из регулярных - именно в вопросах коддинга более знающих чем ты и Юрий я не припоминаю... Поэтому уверен: если желаемое - реализуем, то ты "его сделаешь"...  :rolleyes:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Трафик на сайт (для оптовиков) по ключам,соцсети
49 seostock 23297 6.12.2023, 22:25
автор: seostock
Открытая тема (нет новых ответов) Услуги по созданию и доработке скриптов PHP, MySQL, JavaScript, jQuery
Разработка сайтов и сервисов под-ключ
0 alexey 1241 24.11.2023, 14:46
автор: alexey
Открытая тема (нет новых ответов) Вопрос - платное размещение баннеров на сайте
10 WGN 3182 14.12.2020, 14:20
автор: Peterson
Открытая тема (нет новых ответов) Web программирование на С/С++/PHP/MySQL/SQL, высоконагруженные проекты
Есть наработки в области бирж трафика, топов, тизеров, видео cj-тубов
4 DFService 3350 8.4.2020, 18:02
автор: DFService
Открытая тема (нет новых ответов) Вопрос по рекламе в "инстаграме"
Только активные аккаунты могут создавать или редактировать рекламу
8 Zubkov 16049 17.1.2020, 17:49
автор: Forumacc


 



RSS Текстовая версия Сейчас: 19.4.2024, 9:12
Дизайн