MySQL & mSQL

         

Для остальных колонок установлен тип


Для остальных колонок установлен тип TEXT с длиной 50. Такое определение годится и для MySQL, и для mSQL. Для MySQL, впрочем, лучше было бы выбрать VARCHAR, но это несущественно для нашего примера. Выбор правильного типа данных для колонок очень важен, но мы не будем сейчас на этом останавливаться, поскольку не касались еще типов данных, поддерживаемых MySQL и mSQL.

Теперь у нас есть отправная точка для физической схемы. Мы еще не перевели отношения в физическую модель данных. Как указывалось ранее, после уточнения логической модели у вас должны остаться отношения типа «один-к-одному» и «один-ко-многим» - отношения «М-к-М» разрешаются через таблицы-связки. Отношения моделируются путем добавления внешних ключей к одной из участвующих в них таблиц. Внешний ключ - это уникальный идентификатор или первичный ключ таблицы на другом конце отношения.

Позднее мы коснемся типов данных, поддерживаемых MySQL и mSQL. В каждой из них свои правила относительно того, какие типы данных можно индексировать. Ни в одной из них, например, нельзя индексировать поля типа TEXT. Поэтому недопустимо иметь колонку первичного ключа типа TEXT.

Чаще всего отношение имеет тип «1-к-М». Ему соответствует первичный ключ со стороны «1», помещенный в таблицу на стороне «многие». В нашем примере это означает, что нужно сделать следующее:

  • Поместить колонку RecordLabelId в таблицу CD.

  • Поместить колонку CDId в таблицу Song.

  • Поместить колонку Artistic! в таблицу Song. Полученная схема показана в таблице 2-3.

    Таблица 2-3. Физическая модель данных для базы данных CD









































































































































































































    Таблица





    Колонка





    Тип данных





    Примечания





    CD



    Cdld



    INT



    primary key







    CDTitle



    TEXT(50)











    RecordLabelld



    INT



    foreign key



    Artist



    Artistld



    INT



    primary key







    ArtistName



    TEXT(50)







    Song



    Songld



    INT



    primary key







    SongName



    TEXT(50)











    Cdld



    INT



    foreign key







    Artistld



    INT



    foreign key



    RecordLabel



    RecordLabelld



    INT



    primary key







    RecordLabelName



    TEXT(50)





    <

    Содержание  Назад  Вперед







    Forekc.ru
    Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий