触发器实现当一个表中字段改变时同时改变另一个表中字段值

xiaoxiao2021-02-28  145

触发器实现当一个表中字段发生变化时同时改变另一个表中字段

1.建表

新建两个表一个叫做Telephonics用来存放航班全部字段的数据,主键为SelfNum航迹号;另一个一个叫做FlightAndSection用来存放航迹号、航班号、扇区编号、时间字段。

create table Telephonics( -------------------------------总体---------------------------------- TrackNum tinyint null, --包中航迹的数量,不能超过255 00 ID int identity(1,1), ---------------------------短字节共有部分--------------------- TrackRelted int null, --航迹相关性,第一个bit 1是 0非,后七个bit航迹来源 01 SelfNum int not null primary key, --航迹号 具有唯一性 02 SSRCode int null, --应答机编码 2字节非负整数 04 Latitude float null, --位置__纬度,4字节浮点数,单位:弧度, 网络序 06 Longitude float null, --位置__经度,4字节浮点数,单位:弧度, 网络序 10 VelComOfLati int null, --纬度速度分量,4字节,单位:弧度/秒, 网络序 14 VelComOfLong int null, -- 经度速度分量,4字节,单位:弧度/秒, 网络序 18 Altitude int null, -- 飞行高度,2字节整数,单位100英尺,网络序 22 TTime datetime null, --时间,自1970/1/1起,秒数 ---------------------------长字节特有------------------------ FlightNum varchar(20) null, --航班号,8字节 28 DepartAp varchar(20) null, --起飞机场,四字节代码 36 DepartTi varchar(20) null, --起飞时间,可能为UTC时间 40 Aircraft varchar(20) null, --机型,6字节 44 Section varchar(20) null, --扇区编号,2字节 50 Tail varchar(20) null, --尾流类型 51 ) create table FlightAndSection ( TrackCode int not null primary key, --航迹号 具有唯一性 02 FlightCode varchar(20) null, --航班号,8字节 28 SectionCode varchar(20) null, --扇区编号,2字节 50 FTime datetime null, --时间,自1970/1/1起,秒数 )

2.创建触发器

在Telephonics表上创建触发器,当Telephonics表中插入新数据时FlightAndSection表中对应字段(航迹号、航班号、扇区编号、时间)同时插入相应的数据。

----当Telephonics发生了插入操作之后,会触发下面这个触发器的执行 go create trigger TR_Telephonics_Insert on Telephonics for insert as begin /*声明临时变量*/ declare @TrackCode int --存储航迹号 declare @FlightCode varchar(20) --存储航班号 declare @SectionCode varchar(20) --存储扇区号 declare @FTime datetime --当时时间 /*给临时变量赋相应值*/ select @TrackCode=SelfNum from inserted select @FlightCode=FlightNum from inserted select @SectionCode=Section from inserted select @FTime=TTime from inserted /*更新航班表中数据*/ insert into FlightAndSection(TrackCode,FlightCode,SectionCode,FTime) values(@TrackCode,@FlightCode,@SectionCode,@FTime) end

说明:定义临时变量是为了接收Telephonics新插入字段的数据

3.运行结果

转载请注明原文地址: https://www.6miu.com/read-82445.html

最新回复(0)