天蓝色 sql DB_ID 不起作用
azure sql DB_ID doesn't work
我已经通过 SSMS 在 AzureSql 服务器中手动创建了一个名为 SnapshotsDb
的数据库。
正在尝试使用 DB_ID()
函数获取 SnapshotsDb
的 ID:
DECLARE @db_id int;
SET @db_id = DB_ID(N'SnapshotsDb')
PRINT @db_id
不输出
如果我在 sql 服务器的本地实例上尝试相同的逻辑,它会 return 一个与数据库 ID 匹配的 int。
如果您需要 database_id 数据库,您需要查询 sys.databases 系统视图并按数据库名称过滤 WHERE 子句。 sys.databases中的database_id字段是一致的,在数据库的生命周期内不会改变。
您不能依赖 DB_ID(),因为该函数可能 return 不同的值,具体取决于您 运行 将其作为异地复制设置的一部分的数据库。您可以阅读更多 here.
我已经通过 SSMS 在 AzureSql 服务器中手动创建了一个名为 SnapshotsDb
的数据库。
正在尝试使用 DB_ID()
函数获取 SnapshotsDb
的 ID:
DECLARE @db_id int;
SET @db_id = DB_ID(N'SnapshotsDb')
PRINT @db_id
不输出
如果我在 sql 服务器的本地实例上尝试相同的逻辑,它会 return 一个与数据库 ID 匹配的 int。
如果您需要 database_id 数据库,您需要查询 sys.databases 系统视图并按数据库名称过滤 WHERE 子句。 sys.databases中的database_id字段是一致的,在数据库的生命周期内不会改变。
您不能依赖 DB_ID(),因为该函数可能 return 不同的值,具体取决于您 运行 将其作为异地复制设置的一部分的数据库。您可以阅读更多 here.