Операторы языка SQL для работы с реляционной базой данных




Создание реляционных таблиц. Создание реляционной базы данных означает спецификацию состава полей: указание имени, типа и длины каждого поля (если это необходимо). При этом каждая таблица должна иметь уникальное имя.

Синтаксис оператора создания новой таблицы:

 

CREATE TABLE таблица (поле1 тип [(размер)] [индекс1]

[, поле2 тип [(размер)] [индекс2] [,...] ] [, составной индекс [,...]])

 

Здесь таблица — имя создаваемой таблицы; поле1, поле2 — имена полей таблицы; тип — тип поля; размер — размер текстового поля; индекс1, индекс2 — директивы создания простых индексов; составной индекс — директива создания составного индекса.

Некоторые типы данных:

AUTOINCREMENT – Счетчик

INTEGER – Числовой

TEXT – Текстовый

CURRENCY – Денежный

DATE – Дата/время

BIT - Логический

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

CONSTRAINT имя индекса {PRIMARY KEY | UNIQUE | REFERENCES внешняя таблица [(внешнее поле)]}

Директива создания составного индекса (размещаемая в любом месте после определения его элементов) имеет следующий вид:

 

CONSTRAINT имя {PRIMARY KEY (ключевое]. [, ключевое2 [,...]]) | UNIQUE (уникальное! [,...]]) | FOREIGN KEY (ссыл ка1[, ссылка2[,...]]) REFERENCES внешняя таблица [(внешнее поле1[, внешнее поле2[,...]])]}

 

Значения служебных слов:

UNIQUE — уникальный индекс (в таблице не может быть двух записей, имеющих одно и то же значение полей, входящих в него);

PRIMARYKEY — первичный ключ таблицы, который может состоять из нескольких полей (упорядочивает записи таблицы);

FOREIGN KEY внешний ключ для связи с другими табли­цами (может состоять из нескольких полей);

REFERENCES — ссылка на внешнюю таблицу.

 

Пример 1. Создание таблицы Производители:

 

CREATE TABLE Производители ([КодПроизводителя] AUTOINCREMENT, [Наименование] TEXT, CONSTRAINT Код PRIMARY KEY ([КодПроизводителя]));

 

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

 

Пример 2. Создание таблицы Товары:

 

CREATE TABLE Товары (КодТовара INTEGER PRIMARY KEY, Наименование TEXT, Производитель INTEGER, CONSTRAINT Пр FOREIGN KEY (Производитель) REFERENCES Производитель)

 

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

Изменение структуры таблиц. При необходимости можно изменить структуру таблицы:

• удалить существующие поля;

• добавить новые поля;

• создать или удалить индексы

Приэтом все указанные действия затрагивают только одно поле или один индекс:

ALTER TABLE таблица

ADD {[COLUMN] поле тип[(размер)] [CONSTRAINT индекс]

CONSTRAINT составной индекс} |

DROP {[COLUMN] поле i CONSTRAINT имя индекса}}

 

Опция ADD обеспечивает добавление поля таблицы, а опция DROP — удаление. Добавление опции CONSTRAINT означает подобные действия для индексов таблицы.

 

Пример 3. Изменение структуры таблицы:

ALTER TABLE Товары ADD COLUMN [Гарантия] TEXT (6)

Для создания нового индекса в существующей таблице можно также использовать следующую команду:

CREATE [UNIQUE] INDEX индекс ON таблица (поле[,...]) [WITH {PRIMARY|DISALLOW NULL|IGNORE NULL}]

Фраза WITH обеспечивает наложение условий на значения полей, включенных в индекс:

DISALLOW NULL — запретить пустые значения в индексированных полях новых записей;

IGNORE NULL — включать в индекс записи, имеющие пустые значения в индексированных полях

 

Пример 4. Создание индекса таблицы:

 

CREATE INDEX Н ON Товары ([Наименование]) WITH DISALLOW NULL

 

Откройте таблицу Товары в режиме конструктора и посмотрите, какое значение приняло свойство Индексированное поле для поля «Наименование»

 

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

DROP TABLE имя таблицы

Для удаления только индекса таблицы (сами данные при этом не разрушаются) необходимо выполнить следующую команду:

DROP INDEX имя индекса ON имя таблицы

Пример 5. Удаление только индекса Нтаблицы:

DROP INDEX Н ON Товары

Откройте таблицу Товары в режиме конструктора и посмотрите, какое значение приняло свойство Индексированное поле для поля «Наименование»

 

Пример 6. Удаление всей таблицы:

DROP TABLE Товары

Ввод данных в таблицу. Формирование новой записи в таблице выполняется следующей командой:

INSERT INTO таблица [(поле1[, поле2[,...]])] VALUES (значение1[, значение2 [,...])

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

Пример 7. Ввод данных в таблицу:

INSERT INTO Производитель ([Наименование]) VALUES ("LG")



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: