MAXSIZE – отсутствует ограничение на максимальный размер файла,
FILEGROWTH = 10%
Пример 1. Создание БД TestDB1 c параметрами, устанавливаемыми по умолчанию.
CREATE DATABASE TestDB1;
Пример 2. Создание БД TestDB2 состоящей из двух файлов данных и файла журнала.
CREATE DATABASE TestDB2
ON
( NAME = TestDB2_1,
FILENAME = ‘D:\SQL_Data\TestDB2_1.mdf’,
SIZE = 10,
MAXSIZE = 100,
FILEGROWTH = 10),
( NAME = TestDB2_2,
FILENAME = ‘E:\SQL_Data\TestDB2_2.ndf’,
SIZE = 50,
MAXSIZE = 500,
FILEGROWTH = 50)
LOG ON
( NAME = TestDB2_Log,
FILENAME = ‘F:\SQL_Log\TestDB2_Log.ldf’,
SIZE = 25,
MAXSIZE = 250,
FILEGROWTH = 10%)
Опции базы данных
После создания базы данных Вы можете установить опции базы данных, используя визуальные инструменты SQL Server Management Studio или оператор ALTER DATABASE языка Transact-SQL.
Вы можете сконфигурировать множество опций базы данных, но только для каждой базы данных в отдельности. Чтобы изменить опции во всех новых базах данных, Вы должны изменить базу данных model.
Категории опций базы данных
Чтобы было проще управлять опциями БД, более чем 25 опций базы данных сгруппированы в различные категории. Следующая таблица содержит некоторые из наиболее часто используемых опций.
Категории
Опции БД
Описание
Автоматические
AUTO_CREATE_ STATISTICS
Автоматически создает любые статистики, необходимые для оптимизации запросов. По умолчанию ON.
AUTO_UPDATE_ STATISTICS
Автоматически обновляет устаревшие статистики, необходимые для оптимизации запросов. По умолчанию ON.
AUTO_CLOSE
Если установлено в ON, автоматически закрывает базу данных при выходе последнего пользователя. По умолчанию OFF для всех версий SQL Server 2005 кроме SQL Server 2005 Express.
AUTO_SHRINK
Если установлено в ON, файлы базы данных периодически сжимаются. По умолчанию OFF.
Доступность
OFFLINE | ONLINE | EMERGENCY
Определяет состояние базы данных.
EMERGENCY отсоединяет всех пользователей, кроме системных администраторов и переводит базу данных в состояние только для чтения. По умолчанию БД в состоянии ONLINE.
READ_ONLY | READ_WRITE
Определяет, могут ли пользователи изменить данные. По умолчанию READ_WRITE.
SINGLE_USER | RESTRICTED_USER | MULTI_USER
Определяет, какие пользователи могут соединиться с базой данных. SINGLE_USER позволяет соединиться только одному пользователю. RESTRICTED_USER позволяет соединиться только членам ролей БД db_owner и dbcreator и членам роли сервера sysadmin.
MULTI_USER позволяет соединиться любому пользователю, у которого есть соответствующее разрешение.
По умолчанию MULTI_USER.
Курсор
CURSOR_CLOSE_ ON_COMMIT
Автоматически закрывают открытые курсоры по завершении транзакций. По умолчанию OFF, и курсоры остаются открытыми.
CURSOR_DEFAULT
CURSOR_DEFAULT_LOCAL ограничивает область видимости курсора. Эта опция относится к пакетам команд, хранимой процедуре или триггеру, в котором был создан курсор.
По умолчанию опция установлена CURSOR_DEFAULT_GLOBAL; т.е. курсор глобален для соединения.
Восстановление
RECOVERY
Определяет стратегию восстановления.
FULL обеспечивает полное восстановление после сбоя и является стратегией по умолчанию.
BULK_LOGGED использует меньше места в журнале, т.к. журнализация минимальна, но имеет больший риск.
SIMPLE возвращает базу данных к последней резервной копии базы данных, полной или дифференциальной.
PAGE_VERIFY
Позволяет SQL Server обнаруживать незавершенные операции ввода/вывода (I/O), вызванные отключениями электричества или другими отказами системы.
CHECKSUM хранит рассчитанное значение контрольной суммы страницы в заголовке. При считывании данных страницы это значение повторно вычисляется и сравнивается с сохраненным значением. Это значение опции устанавливается по умолчанию.
TORN_PAGE_DETECTION хранит определенный бит для каждого 512-байтового сектора в 8-килобайтной (КБ) странице данных как часть заголовка. Когда страницы данных считываются с диска, биты, сохраненные в заголовке, сравниваются с фактической информацией сектора страницы,
SQL
ANSI_NULL_ DEFAULT
Позволяет пользователю управлять NULL-умолчаниями при определении столбцов в базе данных. В SQL Server 2005 данная опция по умолчанию OFF и поэтому - NOT NULL
ANSI_NULLS
Когда ON, все сравнения с NULL-значением дают в результате NULL. Когда OFF, сравнения не-Unicode значений с NULL-значением дает TRUE, если оба значения являются NULL. По умолчанию, опция база данных ANSI_NULLS установлена в OFF
RECURSIVE_ TRIGGERS
Запрещает или разрешает рекурсивное срабатывание триггеров AFTER. По умолчанию OFF, что запрещает прямую рекурсию.
Источники информации о БД
Источниками информации о БД и ее объектах являются:
· 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: