使用存储过程复制活动会向上舍入小数

时间:2018-01-13 16:21:34

标签: azure azure-data-factory

我正在使用Azure数据工厂将数据从一个内部数据库获取到Azure sql数据库。

我分两步完成:

  1. 复制到blob
  2. 使用运行存储过程的复制活动插入azure。
  3. 我遇到的问题是小数被四舍五入,目标值与源不同。

    对于整个过程,我定义了3个数据集:

    1. SQLDataset - 结构节点是{..." name" :" MyColumn","输入":"十进制"}。
    2. BlobDataset - 结构节点与上面相同
    3. AzureSQLDataset - 结构节点是相同的
    4. 在SQL数据库上,我有一个用户定义的表类型,如下所示:

      CREATE TYPE dbo.myType TABLE (...MyColumn decimal(28,10) null)
      

      存储过程执行插入或更新,不进行数据转换。但是,当我查询MyColumn值时,值最终会被四舍五入。

      如果来源的值为 266222451894.019990000 ,则目标的值为 266222451894.0200000000

      我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

如果要精确的数值,最好的选择是将数值作为字符串发送出去。