fey*_*eyd 3 sql database sql-server
DECLARE @options TABLE
(
name nvarchar(max),
minimum int,
maximum int,
config_value int,
run_value int
)
-- Gets the advanced options enabled flag and sets @value accordingly
INSERT INTO @options EXEC sp_configure @configname='show advanced options'
DECLARE @value AS BIT = 0
SELECT @value = config_value FROM @options
Run Code Online (Sandbox Code Playgroud)
这是可行的,但我觉得声明一个变量表只是为了保存 sp_configure 的结果以从中保存单个值是多余的。有没有更简洁的方法来做到这一点?我想做的就是将“显示高级选项”的当前值获取到变量中。我使用 Microsoft SQL 进行此查询。
您可以使用该sys.configurations对象:
SELECT [value]
FROM sys.configurations
WHERE [name] = N'show advanced options'
Run Code Online (Sandbox Code Playgroud)