- •Лекция 1. Создание баз данных Знакомство с sql Server
- •Создание Базы данных
- •Команда создания бд (create database)
- •Опции базы данных
- •Категории опций базы данных
- •Источники информации о бд
- •Изменение параметров бд (alter database)
- •Удаление бд (drop database)
- •Создание Групп файлов (Filegroups)
- •Создание Схем (Schemas)
- •Создание Снапшотов (Snapshots)
- •Лекция 2. Создание типов данных и таблиц
- •Создание типов данных (Types)
- •Создание таблиц
- •Как организовано хранение данных в строках
- •Как хранятся большие значения данных
- •Рекомендации по созданию таблиц
- •Изменение и удаление таблиц
- •Создание секционированных таблиц
- •Функции секционирования (Partition Functions)
- •Операции над секционированными таблицами
- •Лекция 3 Получение xml-документов из реляционных таблиц (for xml)
- •Введение
- •Введение в for xml
- •Введение
- •Синтаксис фразы for xml
- •Примеры использования for xml
- •Запросы в режиме raw
- •Введение
- •Получение данных в сгенерированных элементах-строках
- •Получение данных в виде элементов
- •Получение данных при использовании корневого элемента и настроенного имени элемента строки
- •Запросы в режиме auto
- •Введение
- •Получение вложенных данных при использовании режима auto
- •Получение данных в виде элементов
- •Запросы в режиме explicit
- •Введение
- •Универсальные таблицы
- •Определение столбцов универсальной таблицы
- •Создание запроса для построения универсальной таблицы
- •Запросы в режиме path
- •Введение
- •Получение данных при использовании режима path
- •Изменение имени элемента row
- •Синтаксис для получения вложенных xml-документов
- •Введение
- •Использование режима auto для получения вложенных xml
- •Использование type для получения типа данных xml в подзапросе
- •Вложение таблиц при использовании режима explicit
- •Лекция 4 Разбор документов xml с использованием синтаксиса openxml
- •Введение
- •Порядок разбора данных xml
- •Хранимые процедуры для управления внутренним представлением дерева
- •Создание дерева с помощью хранимой процедуры sp_xml_preparedocument
- •Удаление дерева с использованием sp_xml_removedocument
- •Примеры a. Использование простой инструкции select с openxml
- •Б. Указание ColPattern для сопоставления столбцов xml-атрибутам
- •Дополнительная информация
- •Что такое xQuery?
- •Введение
- •Синтаксис xQuery
- •Операторы flowr
- •Метод value
- •Метод exist
- •Связывание реляционных столбцов и переменных
- •Метод modify
- •Введение
- •Оператор insert
- •Оператор replace
- •Оператор delete
- •Лекция 5 Реализация Хранимых Процедур и Функций
- •Лекция 7 Поддержка целостности данных
Источники информации о бд
Источниками информации о БД и ее объектах являются:
SQL Server Management Studio (различные графические инструменты)
Catalog views (Представления системного каталога, возвращающие информацию об объектах БД в виде таблиц)
Системные функции (Каждая функция возвращает одно значение)
Системные хранимые процедуры
Когда вам необходимо просмотреть информацию о каком-либо объекте БД, проще всего использовать графические инструменты SQL Server Management Studio. В случае, если вы создаете приложение, требующее метаданные об объекте БД, вам следует использовать команды Transact-SQL, обращающиеся к представлениям системного каталога или использующее системные функции или системные хранимые процедуры.
SQL Server Management Studio имеет следующие визуальные компоненты для отображения метаданных о БД:
Object Explorer – графический инструмент для управления серверами, базами данных и объектами БД.
Properties window – каждый объект БД внутри Object Explorer имеет связанное с ним окно свойств, которое вызывается из контекстного меню объекта БД.
Reports – для некоторых узлов из Object Explorer можно создать отчет.
Представления каталога (Catalog views) позволяют просматривать информацию о таких объектах, как таблицы, хранимые процедуры, ограничения. Несколько представлений возвращают информацию о сервере, но большинство из них – информацию о БД. Существует более 200 представлений каталога, и все они определены в схеме sys.
Представления каталога распределены по категориям в соответствии с их функциями. Некоторые ключевые представления каталога приведены в таблице:
Категория |
Представление |
Описание |
Базы данных и файлы |
sys.database_files
|
Возвращает строку для каждого файла БД |
Объекты |
sys.columns
sys.indexes
sys.tables sys.views |
Возвращает строку с описанием столбца некоторого объекта, например таблицы или представления Возвращает строку для каждого индекса или кучи табличного объекта Возвращает строку для каждой таблицы БД Возвращает строку для каждого представления БД |
Схемы |
sys.schemas |
Возвращает строку для каждой схемы БД |
Безопасность |
sys.database_permissions |
Возвращает строку для каждого разрешения, определенного в БД |
Функции метаданных. В SQL Server 2005 определены несколько категорий функций, возвращающих информацию о БД или об объектах БД. В отличие от представлений каталога, функции возвращают только одно значение.
Несколько наиболее используемых функций:
DB_ID – возвращает ID базы данных по указанному имени БД или для текущей БД, если имя не указано.
DB_NAME – возвращает имя БД по указанному ID или для текущей БД, если ID не указано.
FILE_ID – возвращает ID файла базы данных по заданному логическому имени файла в текущей БД.
FILE_NAME – возвращает логическое имя файла по заданному ID файла.
FILEGROUP_ID – возвращает ID файловой группы по заданному имени группы.
FILEGROUP_NAME – возвращает имя файловой группы по заданному ID группы.
Системные хранимые процедуры. Эти процедуры являются альтернативой представлениям системного каталога. Некоторые наиболее используемые системные процедуры:
sp_databases. Предоставляет список баз данных, доступных внутри экземпляра SQL Server.
sp_stored_procedures. Возвращает список хранимых процедур в текущей БД.
sp_helpdb. Возвращает информацию о параметрах БД
sp_help. Возвращает информацию об объектах БД – таблицах, пользовательских типах, индексах и т.д.
Например, просмотреть параметры созданной БД можно с помощью вызова хранимой процедуры sp_helpdb:
EXEC sp_helpdb имя_БД
Пример.
EXEC sp_helpdb TestDB1