- •История развития вычислительной техники
- •Файлы и файловые системы
- •Базы данных на больших эвм
- •Базы данных на персональных компьютеров
- •Распределенные базы данных
- •Основные понятия и определения
- •Классификация моделей данных
- •Теоретико-графовые модели данных
- •Иерархическая модель данных
- •Язык манипулирования данными в иерархических базах данных
- •Сетевая модель данных
- •Реляционная модель данных Основные определения
- •Операции над отношениями. Реляционная алгебра
- •Специальные операции реляционной алгебры
- •Языковые средства современных субд Некоторые термины и определения, используемые при работе с базами данных
- •История развития sql
- •Структура sql
- •Типы данных
- •Оператор выбора select
- •Применение агрегатных функций и вложенных запросов в операторе выбора select
- •Вложенные запросы
- •Внешние объединения
- •Операторы манипулирования данными
- •Insert into books values (‘3-77777-444-2’, ‘Сказки Пушкина’, ‘Пушкин а.С.’, ‘’, 2010, 316)
- •Insert into books (isbn, title, autor, yearizd, pages) values (‘3-77777-444-2’, ‘Сказки Пушкина’, ‘Пушкин а.С.’, 2010, 316)
- •Общая идея языка запросов (xPath)
- •Проектирование реляционных бд на основе принципов нормализации
- •Системный анализ предметной области
- •Пример системного анализа предметной области
- •Даталогическое проектирование для реляционной модели данных
- •Инфологическое проектирование
- •Модель "сущность-связь"
- •Переход к реляционной модели данных
- •Принципы поддержки целостности в реляционной модели данных
- •Операторы ddl в языке sql с заданием ограничений целостности
- •Средства определения схемы базы данных
- •Средства изменения описания таблиц и средства удаления таблиц
- •Понятие представления операции создания представлений
- •Горизонтальное представление
- •Вертикальное представление
- •Сгруппированные представления
- •Объединенные представления
- •Физические модели баз данных Файловые структуры, используемые для хранения информации в бд
- •Индексные файлы
- •Файлы с плотным индексом, или индексно-прямые файлы
- •Файлы с неплотным индексом, или индексно-последовательные
- •Организация индексов в виде b-tree (в-деревьев)
- •Инвертированные списки
- •Модели безфайловой физической организации данных
- •Архитектура разделяемой памяти
- •Распределенная обработка данных Архитектура и принципы распределенного подхода. Требования и критерии построения информационных систем на базе распределенных бд (рбд)
- •Многомерное представление данных. Хранилище данных и olap. Назначение. Основные характеристики
- •Основные элементы и операции olap
- •Типы olap. Преимущества и недостатки
- •Моделирование многомерных кубов в реляционной модели данных
- •Логическая модель рбд. Бизнес-логика файл-серверной, клиент-серверной и n-уровневой архитектуры Логическая модель рбд
- •Понятие транзакции. Неявные и явные транзакции. Уровни изолированности транзакций. Понятие блокировок. Основные типы блокировок Понятие транзакции. Неявные и явные транзакции
- •Уровни изолированности транзакций
- •Особенности реализации транзакций в Oracle и ms Sql Server Общие операторы управления транзакциями
- •Особенности субд Oracle
- •Особенности субд ms sql Server
- •Понятие блокировок. Основные типы блокировок
- •Взаимоблокировки
- •Репликация данных. Виды репликации
- •Синхронная репликация
- •Асинхронная репликация
- •Процедурные расширения языка sql
- •Основные характеристики pl/sql и t-sql
- •Хранимые процедуры и функции
- •Триггеры
- •Защита информации в базах данных
- •Проверка полномочий
- •Обобщенная архитектура субд
- •Оптимизация sql-запросов
- •Методы синтаксической оптимизации запросов
- •Методы семантической оптимизации запросов
- •Электронная библиотека
- •Учет успеваемости студентов
- •Склад товаров
- •Интернет-магазин
- •Медицинский центр
Средства определения схемы базы данных
В стандарте SQL1 задается спецификация оператора описания схемы базы данных, но не указывается способ создания собственно базы данных, поэтому в различных СУБД используются неодинаковые подходы к этому вопросу.
Например, в СУБД ORACLE база данных создается в ходе установки программного обеспечения собственно СУБД. Все таблицы пользователей помещаются в единую базу данных. Однако они могут быть разделены на группы, объединенные в подсхемы. Понятие подсхемы не стандартизировано в SQL и не используется в других СУБД.
В СУБД MS SQL Server существует специальный оператор CREATE DATABASE, который является частью языка определения данных, для удаления базы данных в языке определен оператор DROP DATABASE.
CREATE DATABASE database_name
[ON [PRIMARY][<спецификация файла>[,…n]][,<группа файлов> [,…n]]]
[ LOG ON [ <спецификация файла> [,…n]} ][ FOR LOAD | FOR ATTACH ]
<спецификация файла> ::=
( [ NAME = логическое имя файла,]FILENAME = 'физическое имя файла'
[, SIZE = размер][, MAXSIZE = { максимальный размер | UNLIMITED } ]
[, FILEGROWTH = инкремент увеличения файла] ) [,…n]
<группа файлов>::= FILEGROUP <имя группы файлов спецификация файла> [,…n]
database_name — имя базы данных, идентификатор в системе;
ON — ключевое слово, которое означает, что далее будут заданы спецификации файлов, которые будут использованы для размещения базы данных;
PRIMARY — ключевое слово, которое определяет первичное файловое пространство, в котором будет размещена собственно база данных;
LOG ON — ключевое слово, которое задает спецификацию файлов, которые будут использованы для хранения журналов транзакций;
FOR LOAD — ключевое слово, которое определяет, что после создания базы данных будет произведена загрузка базы данных данными;
FOR ATTACH — предложение, которое определяет, что база данных для управления будет подсоединена к другому серверу.
Почти все параметры, кроме имени базы данных, являются необязательными, поэтому оператор создания простой БД «Библиотека» может выглядеть следующим образом:
CREATE DATABASE Library
Для изменения схемы базы данных в MS SQL Server может быть использована команда:
ALTER DATABASE database
{ ADD FILE <спецификация файлов> [,…n] [TO FILEGROUP filegroup_name]
| ADD LOG FILE <спецификация файлов> [,…n]
| REMOVE FILE <имя файла>
| ADD FILEGROUP <имя группы файлов> REMOVE FILEGROUP <имя группы файлов>
| MODIFY FILE <спецификация файлов>
| MODIFY FILEGROUP <имя группы файлов> <имя свойства группы файлов>}
Свойства группы файлов определяет одно из допустимых ключевых слов:
READONLY — только для чтения;
READWRITE — для чтения и записи;
DEFAULT — назначает данную группу файлов в качестве группы по умолчанию, в которой размещаются данные, если не задано дополнительных условий размещения информации.
Как видно, при изменении схемы базы данных в нее могут быть добавлены (ADD) дополнительные файлы и файловые группы или удалены (REMOVE) ранее определенные файлы или файловые группы.
В MS SQL Server команда удаления БД имеет следующий синтаксис:
DROP DATABASE database_name
После выполнения этой команды уничтожается вся база данных вместе с данными.
