我有一张桌子ProviderValueCard
。如果列SessionsProgress
是>,是否可以在创建新行时设置默认约束。 0然后自动设置列SurveyCompleted
= 1的条目值,如果SessionProgress = 0,则设置为0?
所以psedo:如果SessionsProgress> 0,然后SurveyCompleted = 1否则SurveyCompleted = 0
我从marc_s回答了这个问题的想法:Automatically inserting datetime with insert
答案 0 :(得分:0)
感谢abatishchev,这是有效的。我无法弄清楚>语法错误:/。我在那个重要的专栏中没有任何内容,所以放弃它不是问题。
ALTER TABLE ProviderValueCard DROP COLUMN SurveyCompleted
ALTER TABLE ProviderValueCard ADD SurveyCompleted AS CASE [SessionsProgress] WHEN '1' THEN 1
WHEN '2' THEN 1
WHEN '3' THEN 1
WHEN '4' THEN 1
WHEN '5' THEN 1
WHEN '0' THEN 0
END
答案 1 :(得分:0)
你用bit
获得了这种行为 declare @bit bit;
set @bit = 0;
print @bit;
set @bit = 1;
print @bit;
set @bit = 2;
print @bit;
set @bit = 2000;
print @bit;