Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование / Конспект (Архитектуры обработки данных + SQL).doc
Скачиваний:
74
Добавлен:
10.12.2013
Размер:
336.9 Кб
Скачать
      1. Использование подзапросов для команд модификации данных

        1. Использование подзапросов в insert

Наиболее часто подзапрос используется с командой INSERT, которая добавляет строки в таблицу. Фактически случай вставки в таблицу результатов запроса рассмотренный в 5.6.1.3 и является случаем использования подзапроса с INSERT. Приведем еще один пример.

Предположим, есть таблица с именем Тклиент (содержащая информацию о клиентах из Перми) определения столбцов которой полностью соответствуют определениям таблицы Клиент. Заполнение таблицы ТКлиент:

INSERT INTO ТКЛИЕНТ

SELECT * FROM КЛИЕНТ

WHERE IDN_ ГОРОДА= 104;

Выходные данные:

Idn

Idn_города

Имя

реквизиты

Idn_банка

205

104

Кузнецов

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

314

208

104

Золин

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

311

Подзапрос отыскивает всех клиентов с Idn_ города = 104, а INSERT помещает результат подзапроса в ТКлиент.

        1. Использование подзапросов с delete

DELETE используется для удаления строк из таблицы. В предикате команды

DELETEможно использовать подзапросы. Например, если необходимо закрыть (удалить) банки с которым не работает ни один клиент :

DELETE FROM БАНКИ

WHERE ( SELECT COUNT(*) FROM КЛИЕНТ

WHERE IDN_БАНКА = БАНКИ.IDN) = 0;

В результате из таблицы Банки будут исключены строки Альфа-банк, Менатеп, Западуралбанк.

    1. Модификация структуры данных

      1. Команда сreate table

CREATE TABLE создает пустую таблицутаблицу, не имеющую строк . Команда СREATE TABLE определяет имя таблицы и множество поименованных столбцов в указанном порядке. Для каждого столбца устанавливается тип и размер. Каждая таблица должна иметь хотя бы один столбец.

Синтаксис команды СREATE TABLE :

СREATE TABLE < имя таблицы >

(< имя столбца > < тип данных >[(размер)],

< имя столбца > < тип данных >[(размер)],…);

Пробелы применяются для разделения отдельных частей команд в SQL, поэтому

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

Следующая команда позволяет создать таблицу Банки :

CREATE TABLE Банки

( Idn integer, реквизиты char (10));

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

      1. Команда alter table.

ALTER TABLE изменяет уже созданную таблицу.

Синтаксис команды :

ALTER TABLE < имя таблицы > ADD < имя столбца >

< тип данных > < размер >

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

Добавим в таблицу Банки столбец имя клиента

ALTER TABLE БАНКИ ADD ИМЯ КЛИЕНТА CHAR(10)

Соседние файлы в папке Программирование