Ste*_*o64 3 t-sql azure-sql-database
我希望能够使用 TSQL 获取当前数据库所属的弹性池的名称,但我可以找到包含弹性列的唯一 DMV 是 sys.elastic_pool_resource_stats & 我在那里没有看到任何对数据库的引用。我还检查了 sys.databases,看看是否有一个额外的列被偷偷地藏在那里,但我什么也认不出来。
理想情况下,这应该像 @@servername 或 db_name() 一样工作(他们到底什么时候才能创建 server_name() 或 @@dbname 以便我们可以一致地编码?)
有谁知道合适的命令?
(顺便说一句,没有“弹性池”标签)
那这个呢?
-- TSQL to find Databases, corresponding elastic pool names and DB edition
SELECT
@@SERVERNAME as [ServerName],
dso.elastic_pool_name,
d.name as DatabaseName,
dso.edition
FROM
sys.databases d inner join sys.database_service_objectives dso on d.database_id = dso.database_id
WHERE d.Name <> 'master'
ORDER BY
d.name, dso.elastic_pool_name
Run Code Online (Sandbox Code Playgroud)