Есть книжка. Для изучения языка программирования Ruby. The Pragmatic Bookshelf | Agile Web Development with Rails.
Книжка отличная. Можно быстро войти в курс дела. Неделя наверное, а может и быстрее. Можно научиться писать простенькие и не очень простенькие сайты. Правда еще отдельно для дизайнеров должны быть книжки.
И вот есть у Руби один недостаток, который упомянут в той книге. Когда прописываешь, что есть внешние ключи - они прописываются только во внутренней структуре - а во внешней нет.
Хотя тут тоже есть свой плюс. Особенно в случае веба. Отсутствие физических внешних ключей уменьшает целостность даных, зато позволяет избавлятся от излишних данных легко. Эта проблема возникает частенько при удалении старых данных. И наверное, даже точно такой подход имеет право на жизнь. Но только в случае: если сделано один раз и больше никаких переделок, разве что доделки возможны. В принципе с задокументированной основой можно прожить и без внешних ключей.
Так вот. Я когда попал на это место сразу стал искать - может есть способ создавать внешние ключи.
Не мог не создавать внешние ключи. То есть вот сейчас придумал ситуацию, но эта ситуация должна быть осознанной. А если неосознанно, то в университете, когда был курс баз данных на полуавтомате понял как создаются базы. Подозреваю, что прочитав Дейта я б может тоже понял. А может надо не только Дейта было б прочитать.
Но суть в том, что надо было б это изучить заранее. Либо поработать на проекте со специалистами. В любом случае надо было б каким-то образом получить эти знания. И это не меньше полугода.
Нашел его. Он был в этой же книжке на шестисотой примерно странице.
НО! В сноске к параграфу, где писалось, что не создаются внешние ключи была сноска. Но сноска не на страницу с созданием внешних ключей, а более раннюю. Примерно 250какую-то. А на той странице было написано про создание ограничений триггерами. Триггера помогают с ограничениями в базе. Но они ни капельки не помогают анализу данных. Только этого в книжке этой не сказано. Это абстрактные знания, которые даются либо в университете, либо приходят с опытом.
К чему это всё я? К тому, что по этой книжке был сделан реальный проект, который считают образцом индусского кода у нас на работе сотрудники, которые что-то доделывали (или переделывали) там.
Вот так-то.