您的位置:首页 > 移动开发

数据库修改之更新员工表,根据ID删除Mapping表数据,再插入数据

2013-05-24 12:27 721 查看
改(根据ID更新员工主表,根据员工ID删除部门和员工表中的数据,再次插入新数据到部门和员工关系表中)

--根据员工ID更新员工表和关系表

create proc myUpdate

(

@EmployeeID int

,@DepartmentID varchar(200)

,@FName int

,@FAge varchar(50)

,@FBirthday datetime

,@FJiGuan varchar(50)

,@FSexID int

,@IsAbled int

,@FNumber varchar(50)

,@IsConfirmed int

)

as

begin

begin tran myTran--声明一个事务

update TEmployee set
FName=@FName

,FAge=@FAge

,FBirthday=@FBirthday

,FJiGuan=@FJiGuan

,FSexID=@FSexID

,IsAbled=@IsAbled

,FNumber=@FNumber

,IsConfirmed=@IsConfirmed

where ID=@EmployeeID--根据员工ID更新员工表数据

--根据员工ID删除部门关系表中的数据

delete from Mapping_Employee_Department where
employeeID=@EmployeeID

--从员工部门ID字符串拆分成的表中取到本部门ID字段,然后再加上员工ID一起放进员工部门关系表中

insert into Mapping_Employee_Department(employeeID,departmentID)

select @EmployeeID,value from SplitToTable(@DepartmentID,',')

if(@@ERROR<>0)

rollback tran myTran--回滚事务

else

commit tran myTran--提交事务
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐