русс | укр

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

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

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

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


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

Операторы создания индексов.


Дата добавления: 2013-12-24; просмотров: 828; Нарушение авторских прав


Создание и удаление таблиц

Операторы создания схемы базы данных.

При описании команд предполагается, что:

§ - текст, набранный строчными буквами (например, CREATE TABLE) является обязательным

§ - текст, набранный прописными буквами и заключенный в угловые скобки (например, <имя_базы_данных>) обозначает переменную, вводимую пользователем

§ - в квадратные скобки (например, [NOT NULL]) заключается необязательная часть команды

§ - взаимоисключающие элементы команды разделяются вертикальной чертой (например, [UNIQUE | PRIMARY KEY]).

 

Операторы базы данных

Команда Описание
CREATE DATABASE <имя_базы_данных> Создание базы данных.
DROP DATABASE <имя_базы_данных> Удаление базы данных.


Создание таблицы:

 

CREATE TABLE <имя_таблицы>

(<имя_столбца> <тип_столбца>

[NOT NULL]

[UNIQUE | PRIMARY KEY]

[REFERENCES <имя_мастер_таблицы> [<имя_столбца>]]

, ...)

Пользователь обязан указать имя таблицы и список столбцов. Для каждого столбца обязательно указываются его имя и тип (см. таблицу в предыдущем разделе), а также опционально могут быть указаны параметры

NOT NULL - в этом случае элементы столбца всегда должны иметь определенное значение (не NULL)

один из взаимоисключающих параметров UNIQUE - значение каждого элемента столбца должно быть уникальным или PRIMARY KEY - столбец является первичным ключом.

REFERNECES <имя_мастер_таблицы> [<имя_столбца>] - эта конструкция определяет, что данный столбец является внешним ключом и указывает на ключ какой мастер_таблицы он ссылается.

Контроль за выполнением указанных условий осуществляет СУБД.

Пример: создание базы данных institut:

CREATE DATABASE institut;



 

CREATE TABLE groups (id_group INT PRIMARY KEY,

Group_name VARCHAR(7));

 

CREATE TABLE students (id INT PRIMARY KEY,

FIO VARCHAR(50) NOT NULL,

God_rogdenia INT,

id_group INT REFERENCES groups(id_group));

 

CREATE TABLE oblast (id_oblast INT PRIMARY KEY,

Obl_name VARCHAR(200));

 

CREATE TABLE student_adres ( id_adres INT PRIMARY KEY,

Id_oblast INT REFERENCES oblast(id_oblast),

Gorod VARCHAR(255),

Adres VARCHAR(255));

 

CREATE TABLE predmets (id_predmet INT PRIMARY KEY,

Predmet_name VARCHAR(255) NOT NULL);

 

CREATE TABLE exams (id_exam INT PRIMARY KEY,

id INT REFERENCES students(id),

id_predmet INT REFERENCES predmets(id_predmet),

otmetka INT);

 

Удаление таблицы:


DROP TABLE <имя_таблицы>

 

Модификация таблицы:

Добавить столбцы ALTER TABLE <имя_таблицы> ADD (<имя_столбца> <тип_столбца> [NOT NULL] [UNIQUE | PRIMARY KEY] [REFERENCES <имя_мастер_таблицы> [<имя_столбца>]] ,...)
Удалить столбцы ALTER TABLE <имя_таблицы> DROP (<имя_столбца>,...)
Модификация типа столбцов ALTER TABLE <имя_таблицы> MODIFY (<имя_столбца> <тип_столбца> [NOT NULL] [UNIQUE | PRIMARY KEY] [REFERENCES <имя_мастер_таблицы> <имя_столбца>]] ,...)

 

Создание индекса:

 

CREATE [UNIQUE] INDEX <имя_индекса> ON <имя_таблицы> (<имя_столбца>,...)

Эта команда создает индекс с заданным именем для таблицы <имя_таблицы> по столбцам, входящим в список, указанный в скобках. Индекс часто представляет из себя структуру типа B-дерева, но могут использоваться и другие структуры. Создание индексов значительно ускоряет работу с таблицами. В случае указания необязательного параметра UNIQUE СУБД будет проверять каждое значение индекса на уникальность.

Очень часто встает вопрос, какие поля необходимо индексировать. Обязательно надо строить индексы для первичных ключей, поскольку по их значениям осуществляется доступ к данным при операциях соединения двух и более таблиц. Также в ответе на этот вопрос поможет анализ наиболее частых запросов к базе данных. Например, для БД institut можно ожидать, что одним из наиболее частых запросов будет выборка списка студентов по ФИО. Для минимизации времени этого запроса необходимо построить индекс для таблицы students по ФИО:

CREATE INDEX idx_fio ON students (FIO);

Создание индексов для первичных ключей:

CREATE INDEX idx_students ON authors (id);

CREATE INDEX idx_oblast ON oblast (id_oblast);

CREATE INDEX idx_adres ON student_adres (id_adres);

CREATE INDEX idx_ predmets ON predmets (id_ predmet);

CREATE INDEX idx_ exams ON exams (id_ exam);

Первоначальное определение структуры индексов производится разработчиком на стадии создания прикладной системы. В дальнейшем она уточняется администратором системы по результатам анализа ее работы, учета наиболее часто выполняющихся запросов и т.д.

 

Удаление индекса:

DROP INDEX <имя_индекса>



<== предыдущая лекция | следующая лекция ==>
Типы данных SQL. | Команды модификации данных.


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


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

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

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


 


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

 
 

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

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