- •7. Двойственный симплекс-метод.
- •17. Понятие второй нормальной формы.
- •18. Понятие третьей нормальной формы
- •23. Оператор выборки, синтаксис и описание
- •26. Оператор создания таблицы, основные параметры
- •27. Функуции субд. Типовая организация субд.
- •28. Понятие транзакции. Управление Транзакциями.
- •Раздел VI экономико-математическое моделирование
- •Межотраслевые балансовые модели в анализе экономических показателей.
26. Оператор создания таблицы, основные параметры
Как известно, таблица базы данных представляет собой основную структуру данных, используемую в реляционных базах данных. Для создания таблицы базы данных в любой СУБД необходимо отправить в СУБД специальную команду на языке SQL. Для создания таблиц используется оператор CREATE TABLE.
Синтаксис выглядит следующим образом:
Самое общее представление синтаксиса CREATE TABLE
CREATE TABLE <имя таблице> (<список полей>);
где <имя таблицы> - последовательность букв и цифр латинского алфавита или русского алфавита, обозначающее будущую таблицу <список полей> - наименование столбцов таблицы через запятую с указанием типов данных, которые будут храниться в этих полях.
Более детальное представление синтаксиса CREATE TABLE выглядит следующим образом:
CREATE TABLE <имя таблицы>
(<Имя поля1> <Тип данных1> <Ключевые слова-признаки1>,
<Имя поля1> <Тип данных1> <Ключевые слова-признаки1>, … );
Пример:
CREATE TABLE Продажа
(
ДатаОперации DATETIME NOT NULL,
НомерСделки INTEGER NOT NULL,
НаименованиеКлиента VARCHAR(50),
НаименованиеТовара VARCHAR(30),
Количество NUMERIC(6, 2),
Цена NUMERIC(6, 2)
Сумма NUMERIC (10, 2)
);
В результате выполнения оператора система управления базами данных создает таблицу базы данных с именем Продажа и указанными в скобках полями.
27. Функуции субд. Типовая организация субд.
Осн. Функции СУБД.
управление данными во внешней памяти (на дисках); управление данными в оперативной памяти с использованием дискового кэша;
журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
поддержка языков БД (язык определения данных, язык манипулирования данными).
Логически в современной реляционной СУБД можно выделить внутреннюю часть - ядро СУБД (часто его называют Data Base Engine), компилятор языка БД (обычно SQL), подсистему поддержки времени выполнения, набор утилит. В некоторых системах эти части выделяются явно, в других - нет, но логически такое разделение можно провести во всех СУБД. Ядро СУБД отвечает за управление данными во внешней памяти, управление буферами оперативной памяти, управление транзакциями и журнализацию. Соответственно, можно выделить такие компоненты ядра (по крайней мере, логически, хотя в некоторых системах эти компоненты выделяются явно), как менеджер данных, менеджер буферов, менеджер транзакций и менеджер журнала. Как можно было понять из первой части этой лекции, функции этих компонентов взаимосвязаны, и для обеспечения корректной работы СУБД все эти компоненты должны взаимодействовать по тщательно продуманным и проверенным протоколам. Ядро СУБД обладает собственным интерфейсом, не доступным пользователям напрямую и используемым в программах, производимых компилятором SQL (или в подсистеме поддержки выполнения таких программ) и утилитах БД. Ядро СУБД является основной резидентной частью СУБД. При использовании архитектуры "клиент-сервер" ядро является основной составляющей серверной части системы. Основной функцией компилятора языка БД является компиляция операторов языка БД в некоторую выполняемую программу. Основной проблемой реляционных СУБД является то, что языки этих систем (а это, как правило, SQL) являются непроцедурными, т.е. в операторе такого языка специфицируется некоторое действие над БД, но эта спецификация не является процедурой, а лишь описывает в некоторой форме условия совершения желаемого действия (вспомните примеры из первой лекции). Поэтому компилятор должен решить, каким образом выполнять оператор языка прежде, чем произвести программу. Применяются достаточно сложные методы оптимизации операторов, которые мы подробно рассмотрим в следующих лекциях. Результатом компиляции является выполняемая программа, представляемая в некоторых системах в машинных кодах, но более часто в выполняемом внутреннем машинно-независимом коде. В последнем случае реальное выполнение оператора производится с привлечением подсистемы поддержки времени выполнения, представляющей собой, по сути дела, интерпретатор этого внутреннего языка. Наконец, в отдельные утилиты БД обычно выделяют такие процедуры, которые слишком накладно выполнять с использованием языка БД, например, загрузка и выгрузка БД, сбор статистики, глобальная проверка целостности БД и т.д. Утилиты программируются с использованием интерфейса ядра СУБД, а иногда даже с проникновением внутрь ядра.
