Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Работа с БД в архитектуре 'клиент-сервер'_RTF.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
454.08 Кб
Скачать

Validate record fragments - проверять фрагменты записей

Read-only validation - проверка "только для чтения"

Ignore checksum errors - игнорировать контрольные суммы

По умолчанию проверяется только структура страниц БД. При выборе первой опции проверяется также структура записей.

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

Для восстановления БД с ошибками контрольных сумм, выберите 3-ю опцию.

Disable WAL (Write-ahead Log) - Только для серверов NetWare

Database Properties - свойства базы данных.

В этом диалоге вы можете посмотреть:

-из каких файлов состоит БД;

-кто владелец БД (Owner)

-сколько страниц выделено, и размер страницы.

8.Задание к лабораторной работе

  1. Создать псевдоним удаленной БД.

  2. Создать БД.

  3. Создать таблицы БД. При создании таблиц реализовать бизнес-правила для ограничения значений столбцов:

–ограничение первичного ключа;

–ограничение ссылочной целостности;

–значение по умолчанию | по смыслу | диапазона.

  1. Создать триггеры для поддержки каскадного воздействия.

  2. Создать генератор и хранимую процедуру для присвоения уникального значения столбцу первичного индекса.

  3. Создать хранимые процедуры для реализации бизнес-логики.

  4. Создать приложение для занесеня данных в БД.

  5. Работа с утилитой Windows Interactive sql (wisql)

-просмотр содержимого таблицы;

-выборка данных из таблицы;

-просмотр структуры компонентов БД.

9. Работа с утилитой InterBase Server Manager.

Отчет по лабораторной работе (по пунктам 2-5) оформить как Script-файл.

Пример оформления Script-файла приведен в приложении 2.

Приложение 1

Формат sql-операторов (субд InterBase)

База данных

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

CREATE {DATABASE I SCHEMA} "<имя_файла>"

[USER "имя_пользователя" [PASSWORD "пароль"]]

[PAGE_SIZE [=] целое]

[LENGTH [=] целое [PAGE [S]]]

[DEFAULT CHARACTER SET набор_символов]

[<вторичный файл>];

<втopичный файл> = FILE "<имя файла>" [<файлов_информ>] [<вторичный_файл>]

<файлов_информ> = LENGTH [=] целое [PAGE [S]] ! STARTING

[AT [PAGE] ] целое [<файлов_информ>]

Определение типа данных

<тип данных> = {

{SMALLINT ! INTEGER ! FLOAT ! DOUBLE PRECISION}

[<размерность массива>]

! {DECIMAL I NUMERIC} [(точность [, масштаб])] [<размерность_массива>]

! DATE [<размерность_массива>]

! {CHAR ! CHARACTER ! CHARACTER VARYING ! VARCHAR}

[ (целое) ] [<размерность_массива>] [CHARACTER SET набор символов]

! {NCHAR ! NATIONAL CHARACTER ! NATIONAL CHAR}

[VARYING] [ (целое) ] [<размерность_массива>]

! BLOB [SUB_TYPE {целое ! имя_полтипа}] [SEGMENT SIZE целое]

[CHARACTER SET набор_символов]

! BLOB [(длина_сегмента [, подтип])] }

Домены Создание домена

CREATE DOMAIN домен [AS] <тип_данных>

[DEFAULT {литерал ! NULL ! USER}]

[NOT NULL] [СHECK (<усл.поиска_домена>) ]

[COLLATE collation];

Ограничения, накладываемые на значения полей, ассоциированных с доменом

<огранич_ домена>= {

VALUE <оператор> <значение>

! VALUE [NOT] BETWEEN <значение1> AND.<значение2>

! VALUE [NOT] LIKE <значение> [ESCAPE<значение>]

! VALUE [NOT] IN <значение1> [, <значение2>….])

! VALUE IS [NOT] NULL

! VALUE [NOT] CONTAINING <значение>

! VALUE [NOT] STARTING [WITH] <значение>

!(<огранич_ домена>)

! NOT <огранич_домена>

! <огранич_домена> OR <огранич_домена>

! <огранич домена> AND <огранич_домена>}

где <оператор> = {= ! < ! > ! <= ! >= ! !< I !> ! <> ! !=}

Изменение определения домена

ALTER DOMAIN имя {

[SET DEFAULT {литерал! NULL ! USER}

! [DROP DEFAULT]

! [ADD [CONSTRAINT] CHECK (<огранич_домена>)]

! [DROP CONSTRAINT] };

Таблицы базы данных

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

CREATE TABLE ИмяТаблицы [EXTERNAL [FILE] "<имя файла>"]

(<опр_столбца> [, <опр_столбца> ! <ограничение> ...]);

<опр_столбца> = опр_столбца{тип_данных ! COMPUTED [BY] (<выражение> ! домен}

[DEFAULT {литерал ! NULL ! USER}]

[NOT NULL] [<огранич столбца>]

[COLLATE collation]

Определение первичного ключа

PRIMARY KEY (список_столбцов)

Определение уникального ключа

UNIQUE (список_столбцов)