Раздел 2.Проектирование серверной части приложения баз данным


Тема 2.1.Проектирование структуры базы данных с помощью команд

 

Создание и модификация таблиц

 

Операции с таблицами

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

Осуществляется оператором:

CREATE TABLE <имя таблицы> (<список вида <имя поля> <тип> [<размер>]>);

Пример:

CREATE TABLE Pers (Num smallint not null primary key, fam char(20), name char(20), year_b smallint() default 1950, Age Calculate by (2004 – year_b));

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

CREATE TABLE <имя таблицы> (<список вида <имя поля> <тип> [<размер>]>)Primary key (<имя поля>)Foreign key (<список ключевых полей>)[references<имя родит. таблицы> <список ключевых полей родит. таблицы>][on delete <действие>][on update <действие>];

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

· NO ACTION – запретить удаление и модификацию при наличии связных записей в дочерней таблице;

· CASCADE – производить каскадные изменения (т.е. одновременные аналогичные действия) в дочерней таблице.

Пример:

CREATE TABLE Dep( Dep char(15) not null Primary key, Proisv char(1) );CREATE TABLE Pers( Num smallint not null primary key, Dep char(15), Fio char(60), Sex char(1), Foreign key (Dep) references Dep {взаимосвязь} On delete set default on update cascade, {целостность данных на уровне ссылок} CONSTRAINT Dep CHECK (EXISTS( {значение можно ввести в дочернюю таблицу только при наличии такого значения в родительской таблице}SELECT Dep FROM Dep WHERE Pers.Dep=Dep.Dep));

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

ALTER TABLE <имя таблицы> <действие> <имя поля> <тип>

Пример:

ALTER TABLE Pers Drop Sex, add year_b date

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

Drop <имя таблицы>

 

Операции с индексами

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

Производится оператором:

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

Пример:

Create index Depycar on Pers, Dep, year_b

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

Производится оператором:

Drop Index <имя таблицы> <имя индекса>

Пример:

DROP INDEX Pers depycar

Команды перестройки индекса обеспечивают переиндексацию.

ALTER Index <имя индекса> deactivateALTER Index <имя индекса> activate

Тема 2.2.Визуальные средства проектирования структуры базы данных

 

Графическое проектирование структуры БД

Просмотры View

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

Создание просмотра

Create View <имя просмотра> as select <список полей> from <таблица> where <условия>

Удаление просмотра

Drop view <имя просмотра>

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

Создание БД

CREATE {database | schema} "<имя файла>"[user "имя пользователя" [Password "пароль"]][Page_size [=] целое] {размер БД в байтах}[Length [=] целое Page [s]][Default character set набор_символов][<вторичный файл>];<вторичный файл> = File "имя файла" [<файловая информация>[<вторичный файл>]]<файловая информация> = LENGTH [=] целое [PAGE[S]|STARTING AT [PAGE] целое] [<файловая информация>]

STARTING AT [PAGE] – указывает, с какой страницы располагается тот или иной вторичный файл для многофайловых БД.

LENGTH [=] целое – указывает длину файла.

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

Создание и использование доменов

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

CREATE DOMAIN <имя домена>[AS]<описание домена>

Пример:

CREATE DOMAIN D_Position AS varchar (20) not null;CREATE TABLE Position (code integer not null primary key, Position D_Position note varchar(50));

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

Пример:

CREATE DOMAIN D_PRICE AS FLOAT CHECK(VALUE>0)

 



Дата добавления: 2021-09-25; просмотров: 359;


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

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.009 сек.