如何将触发器改写成存储过程?(为解决触发器对象 名称 'XX' 包含的前缀超出了最大限值。
两个数据库做用户表同步。
数据库1 建立了 srv2连接 数据2这里先不用管。
--主站触发器(INSERT USER)create trigger tr_insert_User on [ZJ_User]for insertasset xact_abort onalter table srv2.sqldata02.dbo.Dv_User disable trigger all--禁用论坛表触发器,为防止2个表插入死循环insert srv2.sqldata02.dbo.Dv_User(UserName,UserPassword,UserEmail,UserSex,JoinDate,LastLogin,UserLogins,UserBirthday,UserQuesion,UserAnswer,UserLastIP,LastIPInfo) select UserName,UserPassword,UserEmail,UserSex,JoinDate,LastLogin,UserLogins,UserBirthday,UserQuesion,UserAnswer,UserLastIP,LastIPInfo from insertedalter table srv2.sqldata02.dbo.Dv_User enable trigger all--启用论坛表触发器go--主站触发器(UPDATE USER)create trigger tr_update_User on [ZJ_User]for updateasset xact_abort onalter table srv2.sqldata02.dbo.Dv_User disable trigger all--禁用论坛表触发器update srv2.sqldata02.dbo.Dv_User set UserPassword=i.UserPassword,UserEmail=i.UserEmail,UserSex=i.UserSex,JoinDate=i.JoinDate,LastLogin=i.LastLogin,UserLogins=i.UserLogins,UserBirthday=i.UserBirthday,UserQuesion=i.UserQuesion,UserAnswer=i.UserAnswer,UserLastIP=i.UserLastIP,LastIPInfo=i.LastIPInfo from srv2.sqldata02.dbo.Dv_User,inserted i,deleted d where i.[UserName]=d.[UserName] and i.[UserName]=srv2.sqldata02.dbo.Dv_User.[UserName]alter table srv2.sqldata02.dbo.Dv_User enable trigger all--启用论坛表触发器