Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие ТБД.doc
Скачиваний:
36
Добавлен:
04.09.2019
Размер:
1.92 Mб
Скачать

3.3.2.Создание бд

CREATE { DATABASE | SHEMA } “<имя_файла>”

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

[ PAGE_SIZE [=] целое ]

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

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

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

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

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

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

----------------------------------------------------------

<имя_файла>” – спецификация файла, в котором будет храниться создаваемая БД.

USER “имя_пользователя” – имя пользователя

PASSWORD “пароль” – пароль пользователя

PAGE_SIZE [=] целое – размер страницы БД в байтах

DEFAULT CHARASTER SET набор_символов – определяет используемый в БД набор символов

FILE “<имя_файла>” – имя одного или нескольких файлов, в которых располагается БД

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

LENGTH [ = ] целое [ PAGE [S] ] – длина файла в страницах. По умолчанию 50. Минимум 50.

Пример:

CREATE DATABASE “D:\BD\SKLAD.GDB”

FILE “D:\BD\SKLAD.GD1” STARTING AT PAGE 1001

LENGTH 500

FILE “D:\BD\SKLAD.GD\2”

Здесь определяется БД D:\BD\SKLAD.GDB, состоящая из 3 файлов: первичного длиной 1000 страниц, второго длиной 500 страниц и третьего неопределенной длины.

3.3.3.Типы данных и домены

Типы данных:

  • Символьные (CHAR, VARCHAR)

  • Целочисленные (INTEGER, SMALLINT)

  • Вещественные (FLOAT, DOUBLE PRECISION)

  • Фиксированно-десятичные значения (DECIMAL, NUMERIC)

  • Значения типа даты (DATE)

  • Двоичные (BLOB)

Понятие домена:

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

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

[NOT NULL] [CHECK (<Ограничение домена>) ]

Пример:

CREATE DOMAIN ID_TYPE AS INTEGER

CHECK (VALUE >= 100);

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

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

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

| VALUE [NOT] LIKE <значение1> [ESCAPE <значение2>]

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

| VALUE IS [NOT] NULL

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

| < Ограничение домена >

| NOT < Ограничение домена >

| < Ограничение домена > OR | < Ограничение домена >

| < Ограничение домена > AND < Ограничение домена >

};

где

<оператор> = { = | < | > | <= | >= | != | !< | !> | <> }

3.3.4.Общий формат оператора создания таблиц

CREATE TABLE ИмяТаблицы

( <опр_столбца>

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

<опр_столбца> - определение столбца таблицы.

<опр_столбца> =столбец { тип_данных | COMPUTED [ BY ]

(<выражение>) | домен }

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

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

Пример оператора создания таблиц:

CREATE TABLE SAL_HIST

QUORTER INTEGER NOT NULL,

LAST_YEAR INTEGER,

THIS_YEAR INTEGER,

DELTA COMPUTED_BY (THIS_YEAR - LAST_YEAR),

PRIMARY KEY (QUORTER) );

QUORTER

LAST_YEAR

THIS_YEAR

DELTA

1

100

129

29

2

200

280

-20

3

300

350

0

4

400

403

3