Spec-Zone .ru
спецификации, руководства, описания, API

3.3.2. Составление Таблицы

Создание базы данных является легкой частью, но в этой точке это пусто, как SHOW TABLES говорит Вам:

mysql> SHOW TABLES;Empty set (0.00 sec)

Более твердая часть решает, какова структура Вашей базы данных должна быть: что представляет Вас в виде таблицы потребность и чем столбцы должны быть в каждом из них.

Вы хотите таблицу, которая содержит запись для каждого из Ваших домашних животных. Это можно вызвать pet таблица, и это должно содержать, как пустой минимум, имя каждого животного. Поскольку имя отдельно не очень интересно, таблица должна содержать другую информацию. Например, если больше чем один человек в Вашем семействе сохраняет домашних животных, Вы могли бы хотеть перечислить владельца каждого животного. Вы могли бы также хотеть записать некоторую основную дескриптивную информацию, такую как разновидности и пол.

Как о возрасте? Это могло бы представлять интерес, но это не хорошая вещь сохранить в базе данных. Изменения возраста как время передают, что означает, что необходимо бы часто обновлять свои записи. Вместо этого лучше сохранить фиксированное значение, такое как дата рождения. Затем, всякий раз, когда Вы нуждаетесь в возрасте, можно вычислить его как различие между текущей датой и датой рождения. MySQL обеспечивает функции для того, чтобы они сделали арифметику дат, таким образом, это не является трудным. У хранения даты рождения, а не возраста есть другие преимущества, также:

Можно, вероятно, думать о других типах информации, которая была бы полезна в pet таблица, но те идентифицируемые до сих пор достаточны: имя, владелец, разновидности, пол, рождение, и смерть.

Используйте a CREATE TABLE оператор, чтобы определить расположение Вашей таблицы:

mysql> CREATE TABLE pet (name VARCHAR(20), owner
        VARCHAR(20),    -> species VARCHAR(20), sex CHAR(1), birth
        DATE, death DATE);

VARCHAR хороший выбор для name, owner, и species столбцы, потому что значения столбцов изменяются по длине. Длины в тех определениях столбца не должны все быть тем же самым, и не должны быть 20. Можно обычно выбирать любую длину от 1 к 65535, независимо от того, что кажется самым разумным Вам. Если Вы делаете плохой выбор, и оказывается позже, что Вы нуждаетесь в более длинном поле, MySQL обеспечивает ALTER TABLE оператор.

Несколько типов значений могут быть выбраны, чтобы представить пол в записях животных, такой как 'm' и 'f', или возможно 'male' и 'female'. Является самым простым использовать единственные символы 'm' и 'f'.

Использование DATE тип данных для birth и death столбцы являются довольно очевидным выбором.

Как только Вы составили таблицу, SHOW TABLES должен произвести некоторый вывод:

mysql> SHOW TABLES;+---------------------+| Tables in menagerie |+---------------------+| pet                 |+---------------------+

Чтобы проверить, что Ваша таблица была составлена путем, Вы ожидали, используйте a DESCRIBE оператор:

mysql> DESCRIBE pet;+---------+-------------+------+-----+---------+-------+| Field   | Type        | Null | Key | Default | Extra |+---------+-------------+------+-----+---------+-------+| name    | varchar(20) | YES  |     | NULL    |       || owner   | varchar(20) | YES  |     | NULL    |       || species | varchar(20) | YES  |     | NULL    |       || sex     | char(1)     | YES  |     | NULL    |       || birth   | date        | YES  |     | NULL    |       || death   | date        | YES  |     | NULL    |       |+---------+-------------+------+-----+---------+-------+

Можно использовать DESCRIBE любое время, например, если Вы забываете имена столбцов в Вашей таблице или что вводит, они имеют.

Для получения дополнительной информации о типах данных MySQL, см. Главу 11, Типы данных.