79.以另一表的字段做默认值

本文通过实例演示了如何使用SQL触发器实现数据依赖更新。在创建两个测试表tb1和tb2的基础上,通过触发器在tb2表插入数据时,自动根据id字段从tb1表获取对应的name值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

--以另一个表的字段做默认值

--创建测试表
create table tb1(id int,name varchar(10))
insert into tb1
select 1,'张三'
union all select 2,'李四'

--测试表2,其中name是根据id字段的值从tb1中取得的.
create table tb2(id int,name varchar(10),sex int)
go

--创建处理的触发器
create trigger t_insert on tb2
after insert
as
update tb2 set name=b.name
from tb2 a
	join tb1 b on a.id=b.id
	join inserted  c on a.id=c.id
go

--插入数据测试
insert into tb2(id,sex)
select 1,10
union all select 1,20
union all select 2,20

--显示结果
select * from tb2

go
--删除测试环境
drop table tb1,tb2


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值