русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Создание базы данных


Дата добавления: 2015-07-09; просмотров: 641; Нарушение авторских прав


Теперь создадим базу данных описанной выше фирмы с использованиемклиентской программы mysql. Создадим базу данных taxi таксопарка командой CREATE DATABASE:

mysql> CREATE DATABASE taxi;

Команда должна завершаться точкой с запятой (этот символ называется разделителем – delimiter), получив команду, сервер выполняет ее и выдает сообщение (при успехе – Query OK, 1 row affected).

При создании базы данных она автоматически не выбирается, выбирать ее нужно отдельно. Для этого надо дать команду использовать только что созданную базу данных: mysql>USE taxi;

Создавать базу нужно только однажды, но выбирать ее приходится в каждом сеансе работы с mysqi.

Таблицы создаются командой CREATE TABLE.

При создании нужно указать не только имя таблицы, но и ее полное определение, состоящее из определений отдельных полей. Таблица cars должна содержать поля:

· model – с названием модели автомобиля;

· madein года ее выпуска;

· reg_number – государственного регистрационного номера;

· color – цвета.

Кроме того, вам понадобится столбец id, однозначно идентифицирующий запись об автомобиле — первичный ключ. Значения этого поля не должны повторяться и не могут быть пустыми, желательно, чтобы эти значения были целыми числами, увеличивающимися на единицу в каждой новой записи.

 

 

mysql> CREATE TABLE cars (

model CHAR(50) NOT NULL,

madein YEAR(4) NOT NULL,

reg_number CHAR(12) NOT NULL,

color CHAR(15) NOT NULL,

id SMALLINT AUTO_INCREMENT,

PRIMARY KEY(id) ) ;

 

Атрибут NOT NULL означает, что все строки таблицы должны иметь значение в этом столбце. Если NOT NULL не указано, поле может быть пустым (NULL).

PRIMARY KEY после имени столбца определяет, что этот столбец является первичным ключом для таблицы. Данные в этом столбце должны быть уникальными.



AUTO_INCREMENT – атрибут, используемый для создания столбца с уникальными значениями. Если при вставке строк в таблицу оставлять такое поле пустым, MySQL автоматически генерирует уникальное значение идентификатора. Это значение будет на единицу больше максимального значения, уже существующего в столбце. В каждой таблице может быть не больше одного такого поля.

MySQL использует следующий алгоритм для инициализации счетчика для столбца id, имеющего атрибут AUTO_INCREMENT: после запуска сервера MySQL при первом запросе на добавление данных в таблицу cars сервер высчитывает максимальное значение в столбце id. Полученное значение увеличивается на единицу, заносится в новую запись и в счетчик. Если таблица была пуста, то счетчик устанавливается в единицу.

Таблица drivers содержит столбцы для хранения имени, отчества и фамилии водителя – name, second_name, family_name; даты его рождения birth, домашнего адреса address и даты поступления на работу startdate.

 

mysql> CREATE TABLE drivers (

name CHAR(30) NOT NULL,

second_name CHAR(30),

family_name CHAR(30) NOT NULL,

birth DATE NOT NULL,

address CHAR(150) NOT NULL DEFAULT 'unkonwn',

startdate DATE NOT NULL DEFAULT '2002-01-01',

id SMALLINT AUTO_INCREMENT,

PRIMARY KEY(id) );

 

Кроме этого, при создании таблицы для некоторых полей могут применяться дополнительные ключевые слова, уточняющие диапазон возможных значений. Ключевое слово UNSIGNED может применяться после указания целочисленного типа и означает, что его значение может быть либо положительным, либо нулевым.

DEFAULT – после этого ключевого слова указывается значение по умолчанию для данного столбца. Например:

DEFAULT 'no description'

Таблица timetable состоит из полей use_on с датой, номером машины car_number и идентификатором водителяdriver_number.

 

mysql> CREATE TABLE timetable (

use_on DATE DEFAULT NULL,

car_number SMALLINT,

driver_number SMALLINT,

id SMALLINT AUTO_INCREMENT,

PRIMARY KEY(id),

INDEX (car_number),

INDEX (driver_number),

FOREIGN KEY (car_number) REFERENCES cars(id),

FOREIGN KEY (driver_number) REFERENCES drivers (id) );

 

MySQL поддерживает ссылочную целостность базы с помощью ограничения внешнего ключа foreign key. Назначение этого ключа — проверять соответствие значений в столбцах родительского и внешнего ключей. Эти столбцы должны иметь одинаковый тип данных, и только те значения, которые встречаются в родительском ключе, могут использоваться во внешнем ключе. Родительский ключ должен содержать неповторяющиеся значения и не содержать значений NULL.

Последние два столбца таблицы timetable являются внешними ключами, и MySQL 5 требует, чтобы перед созданием внешних ключей на этих столбцах были созданы индексы.

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

После создания таблиц можно просмотреть их список и структуру. Посмотреть список таблиц в базе можно командой.

 

 

mysql> SHOW TABLES;

 

а структуру таблицы –

mysql> DESCRIBE table_name;

 

Здесь tabie_name – имя таблицы. Эта команда позволит посмотреть типы данных столбцов и дополнительные атрибуты, указанные при создании таблицы.



<== предыдущая лекция | следующая лекция ==>
Форматы записи даты и времени | Самостоятельная работа №1


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.048 сек.