2017-09-05 47 views
0

我必須每天將.CSV導入Access。其中一個領域造成問題。該值存儲爲'5,000'。這不是'5點0',而是'5000'(五千)。整數訪問CSV導入小數點

我試過十進制符號和數據類型的多種組合,但我似乎無法將數字轉換爲'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 File Import Specs

我有哪些選項,優選而無需改變的數據源。

回答

1

從text/xls導入可能會有很多其他的「驚喜」,所以最可靠的方法是導入到臨時表中,所有字段都有Text數據類型,分析數據然後複製到工作表。在應對期間,您可以進行任何轉換。

+0

此方法將工作,因爲沒有選項可以在導入期間設置千位分隔符。 – Gustav

+0

該文件在任何特定日期都會保存大約30000條記錄,這種方法仍然可行嗎? – TheNiers

+0

這不是太多。是的,將工作。但是你有時需要壓縮分貝。 –

0

我想你是在一臺機器與歐洲的地區設置,你的數據來自美國。

在導入嚮導中,某處有「區域選項」,然後是「配置」,您可以定義數字的小數點位置(通常是點或逗號),您的選擇應該自動使千位分隔符適應相反。

請注意,您的CSV區域分隔符不應該是逗號。

謝爾蓋的答案也是一個很好的方法。

0

經過一番搗亂之後,我設法使用以下解決方法來解決問題。

首先,我將設置數據類型的CSV文件鏈接到所有字段的文本(功勞歸於Sergey S.)。

接下來,我創建了一個本地表格,它是格式明智的CSV文件的副本。但在這個表,我設置了必填字段爲整型,日期等

最後,我用下面的追加查詢(請注意替換功能)來填充該表:

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]; 

我現在有我可以在其他查​​詢中使用的正確格式的本地表格。