我有多个 Azure SQL Server,每个可能包含至少一个 SQL 弹性池。我正在尝试构建一个 SQL 脚本,该脚本可以在任何这些服务器上执行 CREATE DATABASE 语句并选择该服务器上的一个可用池。为此,我想知道列出此服务器上所有可用弹性池的 T-SQL 语句。我发现下面的 SQL 将列出服务器上的所有数据库以及它们所在的池:
SELECT d.database_id, d.name, elastic_pool_name
FROM sys.databases d
JOIN sys.database_service_objectives dso ON d.database_id = dso.database_id
但是,这只会master
在新服务器上返回,所以我不知道在服务器上的池中创建新数据库的池名称是什么。我还发现这个 REST API 端点列出了服务器上的所有弹性池,但我需要在 SQL 中执行它,而不是通过 HTTP。