мне нужен запрос T-SQL для получения списка всех баз данных в SQL Server 2008 с указаниемSQL Server - получить все базы данных с MDF и LDF Расположение файла
- имя базы данных и
- местоположении файлов
.mdf
и.ldf
.
мне нужен запрос T-SQL для получения списка всех баз данных в SQL Server 2008 с указаниемSQL Server - получить все базы данных с MDF и LDF Расположение файла
.mdf
и .ldf
.SELECT
db.name AS DBName,
type_desc AS FileType,
Physical_Name AS Location
FROM
sys.master_files mf
INNER JOIN
sys.databases db ON db.database_id = mf.database_id
Вместо того, чтобы присоединяться к таблице баз данных, вы можете «SELECT DB_NAME (database_id) AS DBName' –
select
d.name as 'database',
mdf.physical_name as 'mdf_file',
ldf.physical_name as 'log_file'
from sys.databases d
inner join sys.master_files mdf on
d.database_id = mdf.database_id and mdf.[type] = 0
inner join sys.master_files ldf on
d.database_id = ldf.database_id and ldf.[type] = 1
Спасибо за ваше внимание и ответ –
Мне не нравится это решение, потому что оно становится сложным, если в базе данных много файлов mdf/log. –
Попробуйте этот запрос:
SELECT name [Database Name], physical_name [File Location],size *(8.0/1024) /1024 [Size in GBs]
FROM sys.master_files
Хотя это отвечает на вопрос, это в основном повторение других ответов. В этом случае правильный способ пойти по этому вопросу - это ответить на другие ответы (если у вас есть достаточная репутация), повторите еще один ответ. –
нанять кого-то, кто знает, программирования и SQL Server? Прочитайте документацию и потратите несколько минут, чтобы понять это самостоятельно? Здесь вы приходите, когда вы что-то пробовали. И приложите немного усилий. – TomTom
Пожалуйста, используйте таблицу, sys.database_files –
Согласовано. Если бы вы на самом деле просто разобрали его, у вас было бы уже много ответов. – Jaques