这样实现实现两个表数据同步怎么不行呢?

来源:百度知道 编辑:UC知道 时间:2024/07/02 15:05:09
我要实现 mjkhb08表中的 shdf 字段与ykhbqk 中的shdf同步,这样写怎么不行呢?
CREATE TRIGGER Tig_mjkhb08 ON mjkhb08
FOR UPDATE
AS
declare @yf char(8)
declare @years varchar(40)
declare @mj_id varchar(80)
declare @sumfs varchar(80)
select @yf=yf,@years=years,@mj_id=mj_id from mjkhb08
SELECT @sumfs= (sum(convert(flaot,shdf))+sum(convert(float,znbmdkf)))
FROM ykhbqk
WHERE (yf = @yf) AND (years = @years) AND (mj_id = @mj_id)
begin
if update(khdf)
update mjkhb08 set khdf=@sumfs where yf=@yf and years=@years and mj_id=@mj_id
go

你的触发器本身用的都不正确,我根据你的意思写了一个投票系统,用到了触发器,具体sql语言你自己看吧
Create Table [User](
ID int identity(1,1) primary key ,
Name Varchar(20),
Propotion Char(10)
)
Create Table Vote(
ID int identity(1,1) primary key ,
User_ID int
)

Insert Into [User] Values('wangxiaoqiang','0')
Insert Into [User] Values('zhangsen','0')
Insert Into [User] Values('Fengerzhen','0')
Insert Into [User] Values('Liuyatao','0')

Create Trigger tr_vote On Vote for insert
As
Begin
Declare @SelVote int
Declare @TotalVote int
Declare @ID int
Select @TotalVote=Count(*) From Vote
Select @ID=User_ID From Inserted
Select @SelVote=Count(*) From Vote Where User_ID=@ID
Update [User] Set Propotion=Cast(@SelVote as Varchar) Where ID=@ID
End
--下面是投票
Insert Into Vote Values('3')