Sql 如何为列添加默认值?

Sql 如何为列添加默认值?,sql,Sql,我想将列seasure ID添加到Team表中,默认值引用None 季节表中的值(我不想说default='None',而是 将“无”作为季节年的行)在该列上放置外键约束。最后,我需要将2012年秋季外键值添加到季节ID列中 这是我的团队桌子 teamID teamName ----------- --------------- 100 No Winner 101 Purple Pilots 102 Red Devils

我想将列seasure ID添加到Team表中,默认值引用None 季节表中的值(我不想说default='None',而是 将“无”作为季节年的行)在该列上放置外键约束。最后,我需要将2012年秋季外键值添加到季节ID列中

这是我的团队桌子

teamID      teamName
----------- ---------------
100         No Winner      
101         Purple Pilots  
102         Red Devils     
103         Silver Lions   
104         Blue Jackets   
105         Green Hornets  
106         Gold Dragons   
这是我的季节表

SeasonID    SeasonName Year
----------- ---------- ----
100         None       0000
101         Fall       2012
102         Winter     2012
这是我试图做的,但我可以像处理默认值一样处理另一个表的引用

alter table team
add SeasonID int not null;

alter table team
add default 'None'
for SeasonID

alter table team
add constraint team_seasonid_fk foreign key (SeasonID)
references Season(SeasonID)
on update cascade
on delete cascade;


update team
set SeasonID = 101
where SeasonID = 'None';

如何正确执行此操作?

您的列的类型为
int
,因此无法将“无”指定为默认值。我建议您在表上设置一个触发器,插入后从季节表中找到默认记录并更新插入的记录,或者写入
而不是插入触发器来立即执行此操作。

错误是什么,数据库是什么?为什么没有?将默认值设置为0…您正在使用哪个DBMS?博士后?Oracle?我正在使用MS SQL Server 2008