CREATE PROCEDURE sp_into_department @department varchar(30),
                 @Description varchar(50) =null AS 
SET NOCOUNT ON
insert into Department(DepartmentName,Description) 
values (@Department,@Description)SELECT @@IDENTITY --你加这句看看@@IDENTITY的值是不是新增的那个自增值UPDATE  department  
SET Department_ID=RIGHT('00'+CAST(Auto_Value  as  char),2)  
WHERE  Auto_Value  =  @@IDENTITY
GO

解决方案 »

  1.   

    --数据类型的问题,用下面的就可以了:CREATE PROCEDURE sp_into_department @department varchar(30),@Description varchar(50) =null AS 
    SET NOCOUNT ON
    insert into Department (DepartmentName,Description) values (@Department,@Description)
    UPDATE  department  SET  Department_ID=RIGHT('00'+CAST(Auto_Value  as  varchar),2)  WHERE  Auto_Value  =  @@IDENTITY
    GO
      

  2.   

    对于这句:
    RIGHT('00'+CAST(Auto_Value  as  char),2)因为char类型是会自动在后面被空格的,所以:
    '00'+CAST(Auto_Value  as  char)
    的结果为'00x                '
    后面有很多空格,再取右边两位,当然是空格了.