Forum Webscript.Ru

Общие => Базы данных => Тема начата: gfdsa от 17 Августа 2002, 01:59:22

Название: Связь между таблицами
Отправлено: gfdsa от 17 Августа 2002, 01:59:22
Всем привет. Я использую phpmyadmin. Есть несколько таблиц связаних между собой ключами (у каждой есть ключ предыдущей). Можно ли сделать так штоби если я стер из таблицы пользователя , то в других таблицах вся его информация исчезает автоматически?  
Спасибо.
Название: Связь между таблицами
Отправлено: Меняздесьдавнонет от 17 Августа 2002, 09:15:09
Нет.
Название: Связь между таблицами
Отправлено: fidget от 17 Августа 2002, 12:42:38
gfdsa
Да.

если ты используешь таблицы InnoDB, там с версии 3.23.50 (4.0.2) есть  ON CASCADE DELETE для foreign key.
Название: Связь между таблицами
Отправлено: gfdsa от 17 Августа 2002, 13:49:56
fidget  
 

То есть если я не использую  
Цитировать
InnoDB

,
то все стирание должен делать из php .Это ваше то странно, в Access-e сделать связь между таблицами , как я понял, дело не сложное. Странно, на первом году бил у меня курс "data bases" , там всюду использовались связи между таблицами.
Название: Связь между таблицами
Отправлено: fidget от 17 Августа 2002, 14:10:14
gfdsa
во-первых связь между таблицами существует только на логическом уровне. А foreign key constraints существует для поддержки целостности данных, а не для связи таблиц. Ну это так .. немного теории ...

что касается MySQL, то если ты используешь таблицы InnoDB, то работать с foreign key не сложнее чем в любой другой СУБД с небольшим отличием, что ON UPDATE CASCADE MySQL еще не поддерживает :)
(только не надо мне кричать что нужно еще найти хостера который ставит себе MySQL-Max, да еще и версия выше 3.23.50)
Те люди которые хотят использовать InnoDB, они все находят :)

если ты используешь другие типы таблиц в MySQL тебе это действительно надо организовывать ручками :)
Название: Связь между таблицами
Отправлено: gfdsa от 17 Августа 2002, 14:36:19
fidget  
Цитировать
хостера который ставит себе MySQL-Max

Проблема в том что у меня только один хостер - мои университет :)
Там новшиств не любят. Так что к сожалению я действительно не смогу найти другого хостера. Ну да ладно, будем стирать! А если бы у меня было не 7 таблиц , а 100 ? Что тогда? По все 100 бегать? :-0
М да .... Ну ладно :) спасибо , fidget  .
Название: Связь между таблицами
Отправлено: fidget от 17 Августа 2002, 14:55:29
gfdsa
я понимаю, что случай тяжелый :)

Тем не менее мой опыт показывает, что если у людей серьезные проекты и огромные базы, то они не хостятся там где только обычный мускль стоит :)
Т.е. либо переходят на InnoDB, либо вообще другую СУБД используют :)

ПС: забыла сказать, что если у вас в Университете стоит версия 4.0.2 пусть даже и не -Max, то ты тоже можешь использовать InnoDB и ON DELETE CASCADE :-)

Цитировать
спасибо

эх.. всегда пжалуста :)

[OFF] скачала себе только что новый 3.23.52, буду в понедельник смотреть что за птица :) [/OFF]
Название: Связь между таблицами
Отправлено: gfdsa от 17 Августа 2002, 15:02:24
Цитировать
На Машине Тьюринга далеко не уедешь.

Позавчера сдавал этот курс !!! Кошмар, надеюсь что прошёл хотя бы.
Цитировать
версия 4.0.2 пусть даже и не -Max

Шансов мало , но надежда умирает последней, проверю после завтра.