前几天调了一下数据库的内容,现在保存不了了,不知道怎么回事,EMPID是INT自增,程序保存时跟踪如下:
为什么EMPID=-4,有点不解.
exec sp_executesql N'Insert Into Rs_BasicInfo (EmpNo,EmpName,Birthday,Gender,Nation,IdentityNo,Marrige,DeptCode,DeptName,WorkType,Position,Knowledge,GraduateTime,SchoolName,SpecialtyName,HireProp,EmpSort,HireTime,InductionTime,DimissionTime,InsuNo,PmAccounts,PmLastYAvgSalary,Business,Grade,ImpactGrade,YNStop,Pcdyn,Pic,Pic2,Re,Address,TEL,TEL2) Values (@EmpID,@EmpNo,@EmpName,@Birthday,@Gender,@Nation,@IdentityNo,@Marrige,@DeptCode,@DeptName,@WorkType,@Position,@Knowledge,@GraduateTime,@SchoolName,@SpecialtyName,@HireProp,@EmpSort,@HireTime,@InductionTime,@DimissionTime,@InsuNo,@PmAccounts,@PmLastYAvgSalary,@Business,@Grade,@ImpactGrade,@YNStop,@Pcdyn,@Pic,@Pic2,@Re,@Address,@TEL,@TEL2)', N'@EmpID int,@EmpNo varchar(30),@EmpName varchar(10),@Birthday datetime,@Gender nvarchar(60),@Nation nvarchar(60),@IdentityNo varchar(20),@Marrige nvarchar(60),@DeptCode varchar(12),@DeptName nvarchar(40),@WorkType nvarchar(60),@Position nvarchar(60),@Knowledge nvarchar(60),@GraduateTime datetime,@SchoolName nvarchar(60),@SpecialtyName nvarchar(60),@HireProp nvarchar(60),@EmpSort nvarchar(60),@HireTime datetime,@InductionTime datetime,@DimissionTime datetime,@InsuNo nvarchar(60),@PmAccounts nvarchar(60),@PmLastYAvgSalary nvarchar(60),@Business varchar(20),@Grade varchar(20),@ImpactGrade int,@YNStop bit,@Pcdyn bit,@Pic image,@Pic2 image,@Re nvarchar(60),@Address varchar(200),@TEL varchar(20),@TEL2 varchar(20)', @EmpID = -4, @EmpNo = '1149', @EmpName = 'TEST', @Birthday = NULL, @Gender = N'男', @Nation = NULL, @IdentityNo = NULL, @Marrige = NULL, @DeptCode = '001', @DeptName = N'001', @WorkType = NULL, @Position = NULL, @Knowledge = NULL, @GraduateTime = NULL, @SchoolName = NULL, @SpecialtyName = NULL, @HireProp = NULL, @EmpSort = NULL, @HireTime = NULL, @InductionTime = NULL, @DimissionTime = NULL, @InsuNo = NULL, @PmAccounts = NULL, @PmLastYAvgSalary = NULL, @Business = '新员工', @Grade = NULL, @ImpactGrade = NULL, @YNStop = 0, @Pcdyn = NULL, @Pic = NULL, @Pic2 = NULL, @Re = NULL, @Address = NULL, @TEL = NULL, @TEL2 = NULL

解决方案 »

  1.   

    你的插入语句里就是 -4
    exec sp_executesql N'Insert Into Rs_BasicInfo (EmpNo,EmpName,Birthday,Gender,Nation,IdentityNo,Marrige,DeptCode,DeptName,WorkType,Position,Knowledge,GraduateTime,SchoolName,SpecialtyName,HireProp,EmpSort,HireTime,InductionTime,DimissionTime,InsuNo,PmAccounts,PmLastYAvgSalary,Business,Grade,ImpactGrade,YNStop,Pcdyn,Pic,Pic2,Re,Address,TEL,TEL2) Values (@EmpID,@EmpNo,@EmpName,@Birthday,@Gender,@Nation,@IdentityNo,@Marrige,@DeptCode,@DeptName,@WorkType,@Position,@Knowledge,@GraduateTime,@SchoolName,@SpecialtyName,@HireProp,@EmpSort,@HireTime,@InductionTime,@DimissionTime,@InsuNo,@PmAccounts,@PmLastYAvgSalary,@Business,@Grade,@ImpactGrade,@YNStop,@Pcdyn,@Pic,@Pic2,@Re,@Address,@TEL,@TEL2)', N'@EmpID int,@EmpNo varchar(30),@EmpName varchar(10),@Birthday datetime,@Gender nvarchar(60),@Nation nvarchar(60),@IdentityNo varchar(20),@Marrige nvarchar(60),@DeptCode varchar(12),@DeptName nvarchar(40),@WorkType nvarchar(60),@Position nvarchar(60),@Knowledge nvarchar(60),@GraduateTime datetime,@SchoolName nvarchar(60),@SpecialtyName nvarchar(60),@HireProp nvarchar(60),@EmpSort nvarchar(60),@HireTime datetime,@InductionTime datetime,@DimissionTime datetime,@InsuNo nvarchar(60),@PmAccounts nvarchar(60),@PmLastYAvgSalary nvarchar(60),@Business varchar(20),@Grade varchar(20),@ImpactGrade int,@YNStop bit,@Pcdyn bit,@Pic image,@Pic2 image,@Re nvarchar(60),@Address varchar(200),@TEL varchar(20),@TEL2 varchar(20)', @EmpID = -4, @EmpNo = '1149', @EmpName = 'TEST', @Birthday = NULL, @Gender = N'男', @Nation = NULL, @IdentityNo = NULL, @Marrige = NULL, @DeptCode = '001', @DeptName = N'001', @WorkType = NULL, @Position = NULL, @Knowledge = NULL, @GraduateTime = NULL, @SchoolName = NULL, @SpecialtyName = NULL, @HireProp = NULL, @EmpSort = NULL, @HireTime = NULL, @InductionTime = NULL, @DimissionTime = NULL, @InsuNo = NULL, @PmAccounts = NULL, @PmLastYAvgSalary = NULL, @Business = '新员工', @Grade = NULL, @ImpactGrade = NULL, @YNStop = 0, @Pcdyn = NULL, @Pic = NULL, @Pic2 = NULL, @Re = NULL, @Address = NULL, @TEL = NULL, @TEL2 = NULL
      

  2.   


    exec sp_executesql 
    N'Insert Into Rs_BasicInfo 
    (EmpNo,EmpName,Birthday,Gender,Nation,IdentityNo,Marrige,
    DeptCode,DeptName,WorkType,Position,Knowledge,GraduateTime,
    SchoolName,SpecialtyName,HireProp,EmpSort,HireTime,InductionTime,
    DimissionTime,InsuNo,PmAccounts,PmLastYAvgSalary,Business,Grade,
    ImpactGrade,YNStop,Pcdyn,Pic,Pic2,Re,Address,TEL,TEL2) 
    Values 
    (@EmpID,@EmpNo,@EmpName,@Birthday,@Gender,@Nation,@IdentityNo,
    @Marrige,@DeptCode,@DeptName,@WorkType,@Position,@Knowledge,
    @GraduateTime,@SchoolName,@SpecialtyName,@HireProp,@EmpSort,
    @HireTime,@InductionTime,@DimissionTime,@InsuNo,@PmAccounts,
    @PmLastYAvgSalary,@Business,@Grade,@ImpactGrade,@YNStop,
    @Pcdyn,@Pic,@Pic2,@Re,@Address,@TEL,@TEL2)', 
    N'@EmpID int,@EmpNo varchar(30),@EmpName varchar(10),@Birthday datetime,
    @Gender nvarchar(60),@Nation nvarchar(60),@IdentityNo varchar(20),
    @Marrige nvarchar(60),@DeptCode varchar(12),@DeptName nvarchar(40),
    @WorkType nvarchar(60),@Position nvarchar(60),@Knowledge nvarchar(60),
    @GraduateTime datetime,@SchoolName nvarchar(60),@SpecialtyName nvarchar(60),
    @HireProp nvarchar(60),@EmpSort nvarchar(60),@HireTime datetime,
    @InductionTime datetime,@DimissionTime datetime,@InsuNo nvarchar(60),
    @PmAccounts nvarchar(60),@PmLastYAvgSalary nvarchar(60),@Business varchar(20),
    @Grade varchar(20),@ImpactGrade int,@YNStop bit,@Pcdyn bit,@Pic image,
    @Pic2 image,@Re nvarchar(60),@Address varchar(200),@TEL varchar(20),
    @TEL2 varchar(20)', @EmpID = -4, @EmpNo = '1149', @EmpName = 'TEST', 
    @Birthday = NULL, @Gender = N'男', @Nation = NULL, @IdentityNo = NULL, 
    @Marrige = NULL, @DeptCode = '001', @DeptName = N'001', @WorkType = NULL,
    @Position = NULL, @Knowledge = NULL, @GraduateTime = NULL, @SchoolName = NULL, 
    @SpecialtyName = NULL, @HireProp = NULL, @EmpSort = NULL, @HireTime = NULL, 
    @InductionTime = NULL, @DimissionTime = NULL, @InsuNo = NULL, @PmAccounts = NULL, 
    @PmLastYAvgSalary = NULL, @Business = '新员工', @Grade = NULL, @ImpactGrade = NULL, 
    @YNStop = 0, @Pcdyn = NULL, @Pic = NULL, @Pic2 = NULL, @Re = NULL, @Address = NULL, 
    @TEL = NULL, @TEL2 = NULL
    @EmpID = -4?