【发布时间】:2019-08-16 21:14:15
【问题描述】:
我知道你可以做到this
IF NOT EXISTS (SELECT * FROM sys.schemas WHERE name = 'log')
BEGIN
-- some code
END
但是如何检查特定数据库中是否存在模式?数据库名称为@dbname。
第一次尝试
一个简单的解决方法是
exec ('use db_name; select schema_id(''log'')')
但如果你想在 ifconstruction 中使用它,你最终会得到一些丑陋的 sp_executesql 语法。那么检查特定数据库中是否存在模式的最佳方法是什么?
【问题讨论】:
-
SELECT * FROM databasename.sys.schemas不工作吗?
标签: sql-server database-schema