Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД_1 / Лекции / Лекция 5 СУБД_Общ_св.doc
Скачиваний:
38
Добавлен:
11.06.2015
Размер:
699.39 Кб
Скачать

Операторы sql для управления соединениями. В эту группу входят операторы connect, set connection и disconnect. Оператор connect определяется следующими синтаксическими правилами:

CONNECT TO connection_target

connection_target ::= SQL_server_name

[ AS connection_name ]

[ USER connection_user_name ]

DEFAULT

Здесь SQL_server_name - это литерально заданная символьная строка, идентифицирующая сервер, к которому требуется подключиться. В необязательном разделе AS указываемое имя (connection_name) выступает в роли временного имени соединения, которое впоследствии может быть использовано в операторах SET CONNECTION и DISCONNECT. Если в операторе CONNECT раздел AS не содержится, то по умолчанию connection_name совпадает с SQL_server_name.

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

Определение схемы:

Create Schema <DDD>

Authorization - <Name>

Определение таблиц включает:

  • присвоение имени;

  • определение типа данных (Integer - целое; Numeric - число; Decimal - десятичное; Real - действительное; Float - с плавающей запятой; Character; Character varying - символьное; Bit - двоичное; Date - дата);

  • определение полей с ограничительными условиями;

  • определение ограничительных условий на таблицу.

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

Create TABLE Name_table1 (

Worker_ID Int (5) Primary key

Worker_name Character (12)

City Character (12)

birth_day Date

)

Create TABLE Name_table2 (……)

Команда select – выборка, самая часто используемая команда, с помощью её идет выбор данных из таблицы. Запроса с применением select выглядит с.О.:

SELECT Worker_ID, Worker_name, city, birth_day FROM Name_table1;

Такой запрос выведет из таблицы Name_table1 все значения столбцов указанных через запятую после команды SELECT. Также, можно выводить все столбцы одним символом - (*), т.е. запрос SELECT * FROM Name_table1; выведет все данные из таблицы.

Структура команды select следующая:

SELECT {Имена столбцов, которые необходимо вывести в запросе, записываются через запятую} FROM {имя таблицы в базе данных} - это простейший вид запроса. Существуют дополнительные команды для удобства извлечения данных.

SELECT name_1 FROM Name_table1 WHERE name_2 = 'XXXX'

Операторы сравнения: =, >, <, <=, >=

Булевы операции: AND, OR, NOT

WERE name_3 BETWEEN 10 and 15

WERE name_4 LIKE (''AAA%')

N_date + interval '14' DAY

N_date + interval '7' * Num_weeks (дата = текущая дата плюс 7 умноженное на число недель)

Многотабличные запросы:

SELECT name_поля FROM Name_table1, Name_table2 WHERE Name_table1.Worker_ID = Name_table2.Worker_ID Name_Id=435

Результат: объединение полей двух таблиц при условии Name_Id = 435.

Встроенные функции: SUM, AVG, COUNT, MAX, МIN

SELECT max (Name_1), Min (Name_2)

From Name_table1

Where Name_3=15

Подзапросы:

SELECT Name_1 FROM Name_table1 WHERE Name_3 = or >

(SELECT max (Name_2)

From Name_table1)

Операции реляционной алгебры:

UNION – объединение таблиц,

INTERSECT - пересечение,

EXCEPT - разница.

Применяются для двух таблиц, которые должны быть совместимы (одинаковые число столбцов и типы данных в них).

(SELECT * FROM (TABLE Name_table1 UNION TABLE Name_table2)

Операции изменения данных:

Значения могут быть помещены и удалены из полей, тремя командами языка манипулирования данными:

INSERT – вставка;

UPDATE - обновление, модификация;

DELETE – удаление.