【问题标题】:CSV Import Decimal in Integer Access整数访问中的 CSV 导入小数
【发布时间】:2017-09-06 16:49:08
【问题描述】:

我必须每天将 .CSV 导入 Access。其中一个领域正在引起问题。该值存储为“5,000”。这不是“5 点 0”,而是“5000”(五千)。

我尝试了多种十进制符号和数据类型的组合,但似乎无法将数字转换为“5000”。

CSV 中的示例行:

*Item;Supp Part Ref;description;Source;Descr;OrderCode;*Dest;LT;UPO;OrderPlaceDate;ActionDate;ReqdQty;Open Qty;RCVG QTY;OrdLineStat;FlmtPlnr;BuyerName
1929637;1929637;Ppc screw;XFV;VOSS FLUID GMBH;G;ODC;21D;23925340001;27/06/2017;06/09/2017;5,000;5,000;0;30;DA;WILL VERMEULEN

当前进口规格:

我有什么选择,最好不必更改数据源。

【问题讨论】:

    标签: csv ms-access integer comma


    【解决方案1】:

    从 text/xls 导入可能会有很多其他的“惊喜”,所以最可靠的方法是导入到所有字段都具有 Text 数据类型的临时表中,分析数据然后复制到工作表。在应对期间,您可以进行任何转换。

    【讨论】:

    • 此方法将起作用,因为在导入期间没有设置千位分隔符的选项。
    • 该文件在任何一天都有大约 30000 条记录,这种方法仍然可行吗?
    • 这并不过分。是的,会工作。但有时您需要压缩数据库。
    【解决方案2】:

    我猜您使用的是具有欧洲区域设置的计算机,并且您的数据来自美国。

    在导入向导的某个地方,您有“区域选项”,然后是“配置”,您可以在那里定义数字的小数点(通常是点或逗号),您的选择应该会自动调整千位分隔符以适应对面。

    请注意,CSV 的区域分隔符不应是逗号。

    谢尔盖的回答也是一个好办法。

    【讨论】:

      【解决方案3】:

      经过一番摆弄后,我设法通过以下解决方法使其工作。

      首先,我链接我将所有字段的数据类型设置为文本的 CSV 文件(感谢 Sergey S.)。

      接下来,我创建了一个本地表,就格式而言,它是 CSV 文件的副本。但在这张表中,我已将必填字段设置为整数、日期等。

      最后,我使用了以下追加查询(注意 Replace 函数)来填充该表:

      INSERT INTO Tbl_JDA ([*Item], [Supp Part Ref], description, Source, Descr, OrderCode, [*Dest], LT, UPO, OrderPlaceDate, ActionDate, ReqdQty, [Open Qty], [RCVG QTY], OrdLineStat, FlmtPlnr, BuyerName)
        SELECT
          [*Item],
          [Supp Part Ref],
          description,
          Source,
          Descr,
          OrderCode,
          [*Dest],
          LT,
          UPO,
          OrderPlaceDate,
          ActionDate,
          REPLACE([ReqdQty], ",", ""),
          REPLACE([Open Qty], ",", ""),
          REPLACE([RCVG QTY], ",", ""),
          OrdLineStat,
          FlmtPlnr,
          BuyerName
        FROM [JDA Orderbook];
      

      我现在有一个格式正确的本地表,可以在其他查​​询中使用。

      【讨论】:

        猜你喜欢
        • 2017-05-25
        • 2015-08-20
        • 1970-01-01
        • 1970-01-01
        • 2021-06-02
        • 1970-01-01
        • 2011-03-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多