簡體   English   中英

SQL Server中是否有標量數據庫變量?

[英]Is there a scalar database variable in SQL Server?

我們正在為我們的數據庫創建一個模式版本。 現在我們有一個數據庫表,其中包含列版本和帶有版本的單行。

是否可以在數據庫上創建標量變量,而不是表格?

就像是:

SET DBNAME.dbo.DBVersion = 1;

您可能考慮將標量值存儲在數據庫附加的擴展屬性中。

要添加擴展屬性,請使用sp_addextendedproperty

EXEC sp_addextendedproperty @name = N'DBVersion', @value = '1';

獲取屬性值fn_listextendedproperty

SELECT value FROM fn_listextendedproperty(N'DBVersion', default, default, default, default, default, default);

輸出:

Value
-----
    1

進一步閱讀:

當我需要將常量值存儲在數據庫中某個不一定相關的地方時,我通常會得到dbo.Config表,該表對於需要保存的每種成本都有一列。

如果你真的想將它存儲在表外的某個地方,你可以考慮擴展屬性,視圖,函數或存儲過程。

您總是可以創建一個看起來像

CREATE FUNCTION dbo.GetSomeConst ()
RETURNS int
BEGIN
    return 12
END

對於靜態(只讀)數據,您還可以定義單行視圖:

CREATE VIEW V_Constants AS
SELECT '1' AS DBVersion

如先前答案中所述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM