SQL Server 2000
Реферат - Компьютеры, программирование
Другие рефераты по предмету Компьютеры, программирование
в столбце unused.
Чтобы получить информацию об использовании пространства в таблице titleauthor, можно использовать следующую команду: ЕХЕС sp_spaceused " titleauthor"
В результате процедура выдаст примерно следующее:
namerows reserved data index_size unused
titleauthor 25 48 KB8 KB 40 KB 0 KB
В столбце name указано имя таблицы, о которой выводится информация, а в столбце rows число строк данных, которое введено в таблице. Объем памяти, выделенный в базе данных для таблицы, указывается в столбце reserved (data + index_s1ze + unused). В столбце data указан объем памяти, занимаемой данными, хранящимися в таблице, а в столбце i ndex_si ze объем памяти, отведенный для индекса. Объем свободного пространства указывается в столбце unused
Для получения информации о журнале транзакций Transact-SQL предлагает команду DBCC SQLPERF, выдающую информацию об использовании журналов транзакций в каждой из баз данных, созданных на сервере.
Для получения информации об использовании журналов транзакций нужно выполнить следующую команду: DBCC SQLPERF (LOGSPACE)
В результате будет выдана следующая информация: DatabaseName LogSize(MB) Log Space Used ( % ) Status
Samp! e_3
1.9921875
33.039215
0
Sample_2
1.9921875
34.264706
0
Sample 1
1.9921875
33.553921
0
Distribution
0.9921875
56.98819
0
Abba
0.9921875
38.877953
0
Northwi nd
0.9921875
46.948818
0
Pubs
0.9921875
55.610237
0
Msdb
2.4921875
35.442791
0
Tempdb
0.4921875
85.079521
0
Model
0.7421875
45.328949
0
Master
1.2421875
34.709118
0
(12 row(s) affected)
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Вся информация о файлах и группах файлов базы данных хранится в системных таблицах. Хранимые процедуры обращаются к этим таблицам и возвращают пользователю результат в удобном виде. Хотя в некоторых случаях бывает проще напрямую считать данные из системных таблиц, чем выполнять хранимые процедуры, Microsoft настоятельно советует не прибегать к прямому обращению к системным таблицам, так как их структура может быть изменена в следующих версиях, и поэтому программы, успешно работающие с одной из версий SQL Server, могут работать неправильно или вообще не работать со следующими версиями этой СУБД. При использовании хранимых процедур Microsoft гарантирует, что совместимость будет сохранена.
Все же для полноты картины приведем структуру системных таблиц, в которых хранится описание физической структуры базы данных.
Список файлов базы данных хранится в системной таблице sysfiles. Каждая строка этой таблицы соответствует одному файлу базы данных. Таблица sysfiles является виртуальной и не может быть изменена непосредственно с помощью команд DELETE, UPDATE или INSERT. Тем не менее, пользователи могут считывать данные из этой таблицы, используя команду SELECT. Структура таблицы sysf i I es приведена в табл. 14.3.
Таблица. Структура системной таблицы sysfiles
Имя столбца
Тип данных
Назначение
Field
Smallint
Идентификационный номер (ID) файла в базе данных
GroupID
Smallint
ID группы файлов, к которой принадлежит файл
Size
Int
Текущее количество страниц в файле
Maxsize
Int
Максимальный размер файла. Значение -1 означает,
что размер файла не ограничен
Growth
Int
Шаг приращения
Status
Int
Текущий статус файла
Perf
Int
Зарезервировано
Name
Nchar(128)
Логическое имя файла
Filename
Nchar(260)
Физическое имя файла
Таблица sysf lies описывает подробную структуру файлов. Более компактное описание файлов хранится в таблице sysfilesl, которая содержит столбцы status, field, name и filename, назначение которых аналогично. Для просмотра информации о файлах базы данных с помощью таблицы sysfilesl можно выполнить следующую команду: SELECT * FROM sysfilesl
В итоге будет возвращен следующий результат:
statusfileid name filename
31 pubs ...\data\pubs.mdf
492182 pubsjog ...\data\pubs_log.ldf
(2 row(s)affected)
Описание групп файлов, созданных в базе данных, хранится в системной таблице sysfilegroups. Каждая строка этой таблицы соответствует одной группе. Структура этой таблицы приведена в табл.
Таблица. Структура таблицы sysfilegroups
Имя столбца
Тип данных
Назначение
GroupID Allocpolicy Status Groupname
Smallint Smallint Ins Sysname
Идентификационный номер группы файлов Зарезервировано Текущий статус группы: 0x8 READONLY, 0x10 Имя группы файлов
DEFAULT
Например, для получения информации о группах файлов, определенных в базе данных pubs, можно использовать следующий запрос:
SELECT * FROM sysfilegroups
Будет возвращен примерно следующий результат:
groupld allocpolicy statusgroupname
10 16 PRIMARY
(1 row(s) affected)
Удаление базы данных
Для удаления базы данных используется следующая команда: DROP DATABASE databasejiame [,...n]
Аргумент database_name указывает имя базы данных, которую необходимо удалить. Одной командой можно удалить несколько баз данных, перечислив их имена через запятую.
Например, для удаления баз данных Pubs и Northwind нужно выполнить следующую команду: DROP DATABASE Pubs. Northwind
Управление пользовательскими типами данных
В главе 5 в разделе Типы данных были рассмотрены встроенные в SQL Server 2000 типы данных. Эти типы данных всегда имеются в распоряжении пользователей и могут быть использованы для столбцов таблиц, представлений, переменных и т. д. Однако помимо встроенных типов данных пользователи могут на их основе создавать свои собственные типы данных так называемые пользовательские типы данных.
Пользовательские типы данных (user-defined data type) это типы данных, создав?/p>