外键只是限定B表AID的值必须是A表ID已经存在的值,外键只是一个约束,他不会帮你插入值。但它可以帮你更新或删除列(即当A表某ID更新或删除后,B会随之更新删除)
alter table B add constraint FK_Aid foreign key (Aid) references A(id)
on update cascade | no action
on delete cascade | no action
要想a表插入记录后,b表同时新增一笔必须在A表中建立触发器向b表插入
create trigger 触发器名称 on A after insert
as
begin
set nocount on;
declare @id int
declare @id char
declare @数量 char
declare @单价 char
declare @金额 char
select @AID = ID FROM INSERTED --从插入暂存表中取值,同方法给其他变量取值。
insert b values(@id ,@id,@数量,@单价,@金额 )-- 向b表插入值
end
思路大概是这样,细节你自己去补充一下。祝你成功哦
alter table B add constraint FK_Aid foreign key (Aid) references A(id)
把B的Aid作为A的id的外键就可以了
以上,希望对你有所帮助!
首先得给表A建立主键id
然后给表B的Aid建立外键
alter table A add constraint pk primary key(id);
alter table B add constraint fk foreign key(Aid) references A(id);