Published on

December 28, 2021

Получение информации о системе SQL Server

Доступ к информации о системе SQL Server является важным для административных скриптов и устранения конкретных проблем. Однако, с переходом от SQL Server 2000 к 2005 году, некоторые объекты, на которые мы полагались, больше не рекомендуются в качестве источников информации. В этой статье мы опишем основные наборы данных, которые необходимо получить для баз данных и сопоставим объекты из SQL Server 2000 с 2005 годом.

Таблица/Представление системы баз данных

Таблица/представление системы баз данных является источником для всех баз данных на SQL Server, включая имя, владельца, дату создания и другие данные. В SQL Server 2000 вы можете получить эту информацию с помощью следующего запроса:

SELECT * FROM master.dbo.sysdatabases

В SQL Server 2005 рекомендуется использовать следующий запрос:

SELECT * FROM sys.databases;

Таблица/Представление системы файлов баз данных

Таблица/представление системы файлов баз данных предоставляет информацию о именах файлов, их размере, расположении, типе (база данных или журнал) и других данных для текущей подключенной базы данных. В SQL Server 2000 вы можете получить эту информацию с помощью следующего запроса:

SELECT * FROM dbo.sysfiles

В SQL Server 2005 рекомендуется использовать следующий запрос:

SELECT * FROM sys.database_files;

Таблица/Представление системы файлов баз данных (все базы данных)

Таблица/представление системы файлов баз данных также предоставляет информацию о файлах для всех баз данных. В SQL Server 2000 вы можете получить эту информацию с помощью следующего запроса:

SELECT * FROM master.dbo.sysaltfiles

В SQL Server 2005 рекомендуется использовать следующий запрос:

SELECT * FROM sys.master_files;

Статистика ввода-вывода для файлов баз данных

Статистика ввода-вывода для файлов баз данных возвращает статистику использования на основе каждого файла. В SQL Server 2000 вы можете получить эту информацию с помощью следующего запроса:

-- Один файл базы данных
SELECT * FROM ::fn_virtualfilestats(1, 1)

-- Все файлы баз данных
SELECT * FROM sys.dm_io_virtual_file_stats(NULL, NULL);

Метаданные базы данных

Метаданные базы данных предоставляют важную информацию о базе данных, такую как имя, размер и примечания. В SQL Server 2000 вы можете получить эту информацию с помощью следующего запроса:

EXEC master.dbo.sp_databases

В SQL Server 2005 рекомендуется использовать следующий запрос:

EXEC master.dbo.sp_databases;

Изменение владельца базы данных

Хранимая процедура sp_changedbowner позволяет изменить владельца базы данных. В SQL Server 2000 вы можете использовать следующий запрос:

EXEC sp_changedbowner sa

В SQL Server 2005 рекомендуется использовать следующий запрос:

EXEC sp_changedbowner sa;

Перевод идентификатора базы данных в имя

Системная функция DB_NAME возвращает имя базы данных при передаче идентификатора базы данных из таблицы системы баз данных. В SQL Server 2000 вы можете получить имя базы данных master с помощью следующего запроса:

SELECT DB_NAME(1)

В SQL Server 2005 рекомендуется использовать следующий запрос:

SELECT DB_NAME(1);

Перевод имени базы данных в идентификатор

Системная функция DB_ID возвращает идентификатор базы данных при передаче имени базы данных из таблицы системы баз данных. В SQL Server 2000 вы можете получить идентификатор базы данных master с помощью следующего запроса:

SELECT DB_ID('master')

В SQL Server 2005 рекомендуется использовать следующий запрос:

SELECT DB_ID('master');

Статус базы данных

Системная функция DATABASEPROPERTYEX возвращает значение одного из приблизительно 25 специфических для базы данных значений. В SQL Server 2000 вы можете получить статус базы данных master с помощью следующего запроса:

SELECT DATABASEPROPERTYEX('master', 'Status')

В SQL Server 2005 рекомендуется использовать следующий запрос:

SELECT DATABASEPROPERTYEX('master', 'Status');

Понимая соответствие между SQL Server 2000 и 2005 годом для получения информации о системе, вы можете убедиться, что ваши скрипты работают правильно при переходе на SQL Server 2005. Эти запросы помогут вам собрать необходимые данные для административных задач и устранения неполадок.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.