Lum*_*mpy 3 sql-server t-sql snapshot sql-server-2012
我需要以编程方式删除一个包含所有快照的数据库,然后重新创建该数据库并创建一个新快照。我无法从查询中找到快照文件所在的位置。
本质上,我们有几个环境,它们在放置这些文件的位置上不一致,所以我需要我的代码足够聪明,以便将这些文件放回原来的位置。
澄清一下:当我说快照文件时,我指的是 .ss 文件。
您可以sys.databases通过列source_database_id不为空来识别数据库快照。
加入它sys.master_files,你就完成了:
SELECT mf.database_id,
dbs.source_database_id,
mf.type_desc,
mf.name,
mf.physical_name
FROM sys.master_files AS mf
INNER JOIN sys.databases AS dbs
ON mf.database_id = dbs.database_id
WHERE source_database_id IS NOT NULL
Run Code Online (Sandbox Code Playgroud)
如果您需要过滤一个特定的源数据库,您可以将该谓词添加到WHERE子句中。
| 归档时间: |
|
| 查看次数: |
252 次 |
| 最近记录: |