SQL中的常量和包含文件

时间:2010-07-14 03:05:18

标签: tsql stored-procedures include

是否可以在TSQL存储过程中包含一组“常量”值?我有一种情况,我使用整数字段来存储位值,我有一小组“常量”值,我用来插入/选择该字段

DECLARE @CostsCalculated int = 32
DECLARE @AggregatedCalculated int = 64

--Set CostCalculated bit
update MyTable set DataStatus = ISNULL(DataStatus, 0) | @CostsCalculated
where Id = 10

--How many rows have that bit set
select count(*) from MyTable where ISNULL(DataStatus, 0) & @CostsCalculated = @CostsCalculated

我可以在每个SP的顶部重复相同的DECLARES集,但我宁愿包含代码,这意味着我可以在添加新位值时在一个地方进行更改。

1 个答案:

答案 0 :(得分:2)

在我的头顶,你不能包含这样的常数。

你在谈论多少常数?而不是声明常量,我想你可以为你想要的每个常量创建一个函数,并调用函数而不是@CostsCalculated,但我不确定它是多么逼真。

或者,将值存储在指定的表中。