Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
23
Добавлен:
01.05.2014
Размер:
526.34 Кб
Скачать

Элементы языка SQL

Общие сведения

Базовым требованием к реляционным СУБД является наличие мощного и в тоже время простого языка, позволяющего выполнять все необходимые пользователям операции. В последние годы таким повсеместно принятым языком стал язык реляционных БД SQL.

SQL - Structured Query Language

(иногда понимается как Standard Query Language).

Язык SQL стал фактически стандартным языком доступа к базам данных. Все СУБД, претендующие на название "реляционные", реализуют тот или иной диалект SQL. Многие нереляционные системы также имеют в настоящее время средства доступа к реляционным данным. Целью стандартизации является переносимость приложений между различными СУБД.

В настоящее время, ни одна система не реализует стандарт SQL в полном объеме. Кроме того, во всех диалектах языка имеются возможности, не являющиеся стандартными. Таким образом, можно сказать, что каждый диалект - это надмножество некоторого подмножества стандарта SQL. Это затрудняет переносимость приложений, разработанных для одних СУБД в другие СУБД.

Элементы языка SQL

Общие сведения

Язык SQL оперирует терминами, несколько отличающимися от терминов реляционной теории, например, вместо "отношений" используются "таблицы", вместо "кортежей" - "строки", вместо "атрибутов" - "колонки" или "столбцы".

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

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

Элементы языка SQL

Средства определения схемы БД DDL (Data Definition Language)

CREATE SCHEMA - создать схему базы данных

DROP SHEMA - удалить схему базы данных

CREATE TABLE - создать таблицу

ALTER TABLE - изменить таблицу

DROP TABLE - удалить таблицу

CREATE DOMAIN - создать домен

ALTER DOMAIN - изменить домен

DROP DOMAIN - удалить домен

CREATE VIEW - создать представление

DROP VIEW - удалить представление

 

Элементы языка SQL

 

Средства определения схемы БД

 

Создание БД

CREATE

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

{ USER

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

[ PAGE_SIZE [=] целое ]

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

[ DEFAULT CHARASTER SET набор_символов ] [ <вторичный_файл> ];

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

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

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

Элементы языка SQL

Средства определения схемы БД

Создание БД

Аргумент

Описание

“<имя_файла>”

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

PASSWORD “пароль” PAGE_SIZE [=] целое

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

FILE “<имя_файла>” STARTING [AT [PAGE]]

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

Имя пользователя Пароль пользователя

Размер страницы БД в байтах

Определяет используемый в БД набор символов

Имя одного или нескольких файлов, в которых располагается БД

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

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

Длина файла в страницах. По умолчанию 50. Минимум 50.

Элементы языка SQL

Средства определения схемы БД

Создание БД

Пример:

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 страниц и третьего неопределенной длины.

Элементы языка SQL

Средства определения схемы БД

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

Типы данных:

Символьные (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);

Элементы языка SQL

Средства определения схемы БД

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

< Ограничение домена >= { 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 < Ограничение домена > };

где

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

Элементы языка SQL

Средства определения схемы БД

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

CREATE TABLE ИмяТаблицы ( <опр_столбца>

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

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

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

[ DEFAULT {литерал | NULL | USER } ] [NOT NULL] [<огранич_столбца>]

Элементы языка SQL

Средства определения схемы БД

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

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

Соседние файлы в папке Презентации по технологиям БД