Программирование >>  Формирование связанных подзапросов 

1 ... 8 9 10 [ 11 ] 12 13 14 15


Создание объектов базы данных

4.1. Создание таблиц базы данных

Создание объектов базы данных осуществляется с помощью операторов языка определения данных (DDL).

Таблице! базы данных создаются с помощью команды CREATE TABLE. Эта команда создает пустую таблицу, то есть таблицу, не имеющую строк. Значения в эту таблицу вводятся с помощью команды INSERT. Команда CREATE TABLE определяет имя таблице! и множество поименованных столбцов в указанном порядке. Для каждого столбца должен быть определен тип и размер. Каждая создаваемая таблица должна иметь, по крайней мере, один столбец. Синтаксис команде! CREATE TABLE имеет следующий вид:

CREATE TABLE <ИМЯ ТабЛИЦЫ>

(<имя столбцаХтип данных>[(<размер>)]);

Используемхе в SQL типх данньгх как минимум поддерживают стандарте! ANSI (American National Standards Institute - Аме риканский национальный институт стандартов) (см. раздел 1.5 Типы данных SQL ):

CHAR (CHARACTER) ,

INT (INTE) ,

SMALLINT,

DEC (DECIM) ,

NUMERIC,

FLOAT,

Тип данных, для которого обязательно должен быть указан размер, - это CHAR. Реальное количество символов, которое



может находиться в поле, изменяется от нуля (если в поле содержится NULL-значение) до заданного в CREATE TABLE максимального значения.

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

CREATE TABLE STUDENT 1

(STUDENT ID INTEGER,

SURNAME VARCHAR(60;,

NAME VARCHAR (60),

STIPEND DOUBLE,

KURS INTEGER,

CITY VARCHAR(60>,

BIRTHDAY DATE,

UNIV ID INTEGER);

4.2. Использование индексации для быстрого доступа к данным

Операции поиска-выборки (SELECT) даннхх из таблиц по значениям их полей могут быть существенно ускорены путем использования индексации даннхх. Индекс содержит упорядо-ченнхй (в алфавитном или числовом порядке) список содержимого столбцов или группы столбцов в индексируемой таблице с идентификаторами этих строк (ROWID), Для пользователей индексирование таблицы по тем или иным столбцам представляет собой способ логического упорядочения значений индексированных столбцов, позволяющего, в отличие от последовательного перебора строк, существенно повысить скорость доступа к конкретным строкам таблицы при выборках, использующих значения этих столбцов. Индексация позволяет находить содержащий индексированную строку блок данных, выполняя небольшое число обращений к внешнему устройству.

При использовании индексации следует, однако, иметь в виду, что управление индексом существенно замедляет время выполнения операций, связанных с обновлением данных (та-



4.3. Изменение существующей таблиц! 89

ких, как INSERT и DELETE), так как эти операции требуют перестройки индексов.

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

Синтаксис команды создания индекса имеет следующий вид:

CREATE INDEX <имя индекса> ON <имя табпицы> (<имя столбца>

[,<имя столбца>]);

При этом таблица должна бгть уже создана и содержать столбце!, имена которхх указаны в команде создания индекса. Имя индекса, определенное в команде, должно быть уникаль-нтм в базе даннхх. Будучи однажды созданнтм, индекс является невидимым для пользователя, все операции с ним осуществляет СУБД.

Пример

Если таблица EXAMMARKS часто используется для поиска оценки конкретного студента по значению поля STUDENT ID, то следует создать индекс по этому полю.

CREATE INDEX STUDENT ID 1 ON EXAM MARKS (STUDENT ID) ;

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

DROP NDEX <имя индекса>;

Удаление индекса не изменяет содержимого поля или полей, индекс которых удаляется.

4.3. Изменение существующей таблице!

Для модификации структуры и параметров существующей таблице! используется команда ALTER TABLE. Синтаксис ко-



1 ... 8 9 10 [ 11 ] 12 13 14 15

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика