检查下
Insert Into Bs_strain_MonthEigen Values 
    ( @STCD, @SysYear, @SysMonth, 
      @Maxstrain, @Minstrain, 
      @MaxstrainDate, @MinstrainDate, @Maxstraintemper, @Minstraintemper     )  
这个语句写的字段顺序与Bs_strain_MonthEigen表的字段顺序是否一致

解决方案 »

  1.   

    再检查表Bs_strain_MonthEigen的最大应变出现日期、最小应变出现日期 两个字段的类型是不是错了,设置成real了
      

  2.   

    systime--為datetime
    @Maxstraintemper
    @Minstraintemper
    變量不可用浮點類型賦值,可用convert(varchar(8),systime,112)--轉換
      

  3.   

    Insert Into Bs_strain_MonthEigen Values 
        ( @STCD, @SysYear, @SysMonth, 
          @Maxstrain, @Minstrain, 
          @MaxstrainDate, @MinstrainDate, @Maxstraintemper, @Minstraintemper     )  
        Set @SysMonth=@SysMonth+1 
      End 
    字段是否對應,數據類型是否匹配?
      

  4.   

    哦,发现问题,是字段名写错了,一下两句 --  最大应变出现时温度 
        Select @Maxstraintemper=SysTime From Bs_strain 
        Where STCD=@STCD and Year(SysTime)=@SysYear and Month(SysTime)=@SysMonth and strain=@Maxstrain 
        --  最小应变出现时温度 
        Select @Minstraintemper=SysTime From Bs_strain 
        Where STCD=@STCD and Year(SysTime)=@SysYear and Month(SysTime)=@SysMonth and strain=@Minstrain 
      

  5.   

    应该是@Maxstrain float(8), -- 最大应变 
              @Minstrain  float(8), -- 最小应变 
              @MaxstrainDate DateTime,  -- 最大应变出现日期 
              @MinstrainDate DateTime,  -- 最小应变出现日期 
              @Maxstraintemper  float(8), -- 最大应变出现时温度 
              @Minstraintemper  float(8) -- 最小应变出现时温度 
    这几个变量的使用
      

  6.   


    你把datetime值赋给float当然会报错。
    可能是你从上面copy的时候笔误了吧。哈哈!
    把SysTime改成你要的字段就行了。
      

  7.   

    感谢 Haiwer 。。
    我自己检查了好几遍都没看出是那里写错了眼睛有点歪