繁体   English   中英

sql-更改表以添加默认值基于其他值的列

[英]sql- Alter table to add a column which default value is based on other value

我的sql表:

  CREATE TABLE [dbo].[PayrollParameter]
  (
     [PayrollParameterID]  [CHAR](36) NOT NULL,
     [Description]         [NVARCHAR](50) NOT NULL,
     [NumberOfDaysInMonth] [INT] NOT NULL,
     [IsFixedDaysInMonth]  [BIT] NOT NULL,
     CONSTRAINT [PK_PayrollParameter] PRIMARY KEY CLUSTERED (
     [PayrollParameterID] ASC )WITH (pad_index = OFF, statistics_norecompute =
     OFF, ignore_dup_key = OFF, allow_row_locks = on, allow_page_locks = on) ON
     [PRIMARY]
  )
 ON [PRIMARY]
 GO 

数据库已包含记录; 我想改变表格 ,将IsFixedDaysInMonth的默认值设置为Checked,如果NumberOfDaysInMonth!=0

我怎样才能做到这一点?

CREATE DEFAULT需要一个常量值作为默认值

是仅包含常量值的表达式(它不能包含任何列或其他数据库对象的名称)。

我知道做你想做的事的唯一方法是使用存储过程使用触发器或插入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM