![]() |
|
Модераторы: skyboy |
![]()
|
|
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: нет Всего: 2 |
Всем привет. Читал статью, где говорилось что таблицы в БД надо связывать между собой в самой БД, а не только логикой программы. В универе нас тоже учили связывать их в БД.
Я думал что это нужно для сохранения целостности БД. Например если в одной таблице у нас пользователи, а в другой их автомобили, то если пользователь удаляется- то и не должно быть машин, ему принадлежащих. Нельзя ссылаться на несуществующую запись, нельзя удалить запись на которую есть ссылки. Но что-то я не вижу чтобы так и было. MYSQL 5
Создаются таблицы со связью. Но мне удается вставить запись в таблицу CHILD, с полем PARENT_ID таким, какого нет в PARENT. Почему? Я что-то не понимаю? |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 3 Всего: 32 |
Я читал, что в автомобиле должна быть АБС. Купил жигули. В них АБС нету. Значит, АБС не нужна.
|
|||
|
||||
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: нет Всего: 2 |
Ближе к теме, если можно.
|
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 3 Всего: 32 |
Так темы-то нету.
В чем вопрос? Зачем нужны связи или почему пример не работает? Или надо объяснить, что написано в неизвестной статье? |
|||
|
||||
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: нет Всего: 2 |
Почему не работает. Или может работает как надо... Тогда так и скажите ) Только в таком случае будет еще интересно узнать почему так надо )
|
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 3 Всего: 32 |
Ну никто ж не знает, как ты вставляешь.
В документации написано, что не должно вставлять:
|
|||
|
||||
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: нет Всего: 2 |
Открываю PHPmyAdmin, нажимаю вставить и заполняю форму ) после чего данные действительно оказываются в таблице
|
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 3 Всего: 32 |
а тип-то таблиц у тебя какой? innodb?
|
|||
|
||||
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: нет Всего: 2 |
MyISAM
|
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 3 Всего: 32 |
ну вот тебе и ответ
|
|||
|
||||
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: нет Всего: 2 |
А что-то InnoDB не ставится! Явно указываю ему ENGINE = InnoDB, а создаются все равно MyISAM
В переменных MySQL нашел такое have innodb DISABLED Я на денвере эксперементирую... Это сообщение отредактировал(а) rcdimon - 5.7.2008, 23:32 |
|||
|
||||
| MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4379 Регистрация: 15.8.2002 Где: Москва Репутация: нет Всего: 32 |
Там InnoDB по дефолту отрублен в конфиге. Добавлено через 7 минут и 5 секунд Вообще MyISAM хоть и очень шустрый, но его шустрость компенсируется отсутствием констреинтов и транзакций. Для небольших проектов оно не важно, а когда приходится работать с объемными базами (не в плане кол-ва записей, скорее в плане того, сколь сложна структура БД), появляется желание переложить большую часть бизнес-логики на СУБД и больше об этом не задумываться. -------------------- Three pings for the token rings, Five pings for the UNIX machines, Hundred pings for the broken links, One special ping to check them all Through Simple Network Management Protocol! |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |