还是不行啊
sqlHelper.CreateInParam("@MoneyNum",SqlDbType.Decimal,9,MoneyNum),
这里怎么改?

解决方案 »

  1.   

    declare @b float
    set @b=23.45
    print cast(floor(@b * 10)/10.0 as decimal(18,1))
      

  2.   

    CREATE  PROCEDURE Pr_AddRecord
    (
        @UserID int,
        @myDateTime DateTime,
        @MoneyType bit,
        @MoneyNum decimal(10,1),---(10,2)也不行啊
        @myKeyword varchar(50),
        @Others varchar(200)
    )
    AS
       BEGIN   
    INSERT INTO
               [MoneyRecord]
              (
                  UserID,
                  myDateTime,
                  MoneyType,
    MoneyNum,
    myKeyword,
    Others
               )
               VALUES
              (
    @UserID,
                  @myDateTime,
                  @MoneyType,
    @MoneyNum,
    @myKeyword,
    @Others
               )
       END
    GO
      

  3.   

    CreateInParam("@MoneyNum",SqlDbType.Decimal,9,MoneyNum),
    需要做相应的修改吗?
      

  4.   

    CREATE  PROCEDURE Pr_AddRecord
    (
    ...
        @MoneyNum decimal(长度,小数位数),
    ...
    )小数位不填,默认是0
      

  5.   

    CREATE  PROCEDURE Pr_AddRecord
    (
    ...
        @MoneyNum decimal(长度,小数位数),
    ...
    )小数位不填,默认是0
    --------------------
    @MoneyNum decimal(10,1),
    @MoneyNum decimal(10,2),
    都不行啊
      

  6.   

    CREATE  PROCEDURE Pr_AddRecord
    (
    ...
        @MoneyNum decimal(长度,小数位数),
    ...
    )小数位不填,默认是0
    --------------------
    @MoneyNum decimal(10,1),
    @MoneyNum decimal(10,2),
    都不行啊
      

  7.   

    CREATE  PROCEDURE Pr_AddRecord
    (
    ...
        @MoneyNum decimal(长度,小数位数),
    ...
    )小数位不填,默认是0
    --------------------
    @MoneyNum decimal(10,1),
    @MoneyNum decimal(10,2),
    都不行啊
      

  8.   

    numeric[(p[, s])]用这个数据类型看看
      

  9.   

    numeric[(p[, s])]用这个数据类型看看
    ----------------------------------------
    还是不行啊
      

  10.   

    @MoneyNum numeric(10,2) 
    你不会是从外部传数据给@MoneyNum吧,如果这样那么数据类型要保持一致的。