首页 > 解决方案 > 从 SQL Server 使用插入到 OPENQUERY 时如何修复 Postgres 数字自动变为 6 个小数位

问题描述

当尝试使用 OPENQUERY 将 SQL Server 中的数据插入 Postgres 时,我发现 Postgres 小数位数自动变为 6 位的问题。

我搜索了许多建议使用 CAST 或 Convert 来限制 SQL Server 的小数位的参考资料,当我刚尝试从 SQL Server 端选择时一切正常(它是 0.001),但无论何时在 Postgres 中运行如下查询(例如,“舍入”将变为 0.001000)。

例如:

INSERT INTO OPENQUERY(RND,
'SELECT
    name,
    rounding
FROM test.public.product_uom')
SELECT
    UoMID,
        0.001
FROM dbo.tUoM
WHERE UoMID IN ('YEAR', 'ZAK');

我想要的预期结果是在从 SQL Server 插入到 Postgres 时具有相同的舍入值,即 0.001。任何帮助或建议将不胜感激,并提前致谢。

标签: postgresqlnumericpgadminopenquery

解决方案


推荐阅读