За последние 24 часа нас посетил 18551 программист и 1657 роботов. Сейчас ищут 928 программистов ...

Организация связей при нормализации MySql базы

Тема в разделе "MySQL", создана пользователем CJ_Junyor, 6 окт 2009.

  1. CJ_Junyor

    CJ_Junyor Активный пользователь

    С нами с:
    6 окт 2009
    Сообщения:
    1
    Симпатии:
    0
    Добрый вечер.

    Не могу никак разобраться со связями между первичными ключами и внешними ключами, например:

    У нас есть две таблицы (users,logs):

    users
    user_id (PK)
    user_login
    user_pass
    user_name
    log_id (FK)

    logs
    log_id (PK)
    log_ip
    log_count

    Что нам дает организация такой связи?
    Ну задали мы внешний ключ, и что дальше, значение log_id же все равно прийдется задавать самостоятельно в таблице users?
    Или же связь подразумевает то, что при добавлении данных в таблицу logs эти данные (в данном случае поле log_id) заполниться автоматически?

    Не могу поять....

    И как нужно обращаться через PHP к таким нормализованым базам?
     
  2. nimistar

    nimistar Активный пользователь

    С нами с:
    30 май 2007
    Сообщения:
    919
    Симпатии:
    0
    заполнится - нет
    а вот удалится вполне может ...

    (думаю ты перепутал - это лог должен содержать айди пользователя, а не наоборот ;-))

    например:
    в логах ведется учет действий пользователя - и как только мы удаляем пользователя все записи о его действиях в логах тоже удаляются автоматически.... это вполне реально!
     
  3. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    :) только как раз из логов лучше ничего не удалять пару лет :) Даже если удалили пользователя :)

    Случаи разные бывают :)