ALTER       proc VindicateEmployee
(@OperateClass Varchar(10),
@Name VarChar(20),
@sex int,
@age int,
@birthday Date,
@OfDept int,
@Position int,
@HomeAddress varchar(100),
@HomeTel VarChar(20),
@HomePostCode VarChar(10),
@MoblePhone VarChar(20),
@QQ VarChar(20),
@Msn VarChar(50),
@Email VarChar(50),
@InputCode VarChar(10),
@CurrState Int,
@EmployeeID Int,
@QueryName VarChar(20),
@ReturnInfo Cursor varying output 
)
With RECOMPILE--,ENCRYPTION
AS 
begin
 declare @Condition VarChar(30)
 set @Condition = '%'+@QueryName+'%'
 if UPPER(@OperateClass) = 'INSERT'
      insert into LiuJun.EmployeeInfo (c_Employee,B_Sex,I_Age,D_Birthday,I_DeptID,
I_PositionCode,C_HouseAddress,C_Phone,C_HousePost,C_MoblePhone,C_qq,C_MSN,
C_Email,C_SpellCode,I_CurrState)Values(@Name,@sex,@age,@birthday,@OfDept,
                                       @Position,@HomeAddress,@HomeTel,
       @HomePostCode,@MoblePhone,@QQ,@Msn,
       @Email,@InputCode,@CurrState) else IF UPPER(@OperateClass) = 'QUERY'
Begin
Set @ReturnInfo =Cursor Forward_only Static For
select c_Employee,B_Sex,I_Age,D_Birthday,I_DeptID,
I_PositionCode,C_HouseAddress,C_Phone,C_HousePost,C_MoblePhone,
C_qq,C_MSN,C_Email,C_SpellCode,I_CurrState From  LiuJun.EmployeeInfo 
Where I_EmployeeID=@EmployeeID  Or C_Employee Like @Condition
open @ReturnInfo
End ELSE IF  UPPER(@OperateClass) = 'UPDATE'
UPDATE LiuJun.EmployeeInfo set C_Employee= @Name,
B_Sex = @sex,
I_Age = @age,
D_Birthday = @birthday,
I_DeptID = @OfDept,
I_PositionCode = @Position,
C_HouseAddress = @HomeAddress,
C_Phone = @HomeTel,
C_HousePost = @HomePostCode,
C_MoblePhone = @MoblePhone,
C_QQ = @QQ,
C_MSN =@MSN,
C_Email = @Email,
C_SpellCode = @InputCode,
I_CurrState = @CurrState  
  Where I_EmployeeID =@EmployeeID 
return @@error
end