0
我使用ACE OLE DB提供程序和執行SQL任務來創建Excel文件。 我使用的連接字符串是像這樣的:使用ACE OLEDB提供程序創建Excel文件的數據類型問題
Data Source=C:\MyFolder\MyFile.xlsx;Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties="EXCEL 12.0 XML;HDR=YES";
和SQL命令是這樣的一個:
CREATE TABLE [Query] (
[ProductAssemblyID] Numeric,
[ComponentID] Numeric,
[ComponentDesc] String,
[TotalQuantity] Numeric,
[StandardCost] Currency,
[ListPrice] Currency,
[BOMLevel] Numeric,
[RecursionLevel] Numeric)
然後我用Excel目標來填充文件。當我打開結果文件時,所有列都是文本列,數字以文本形式存儲。 我在哪裏做錯了?
謝謝。
邁克你好,我嘗試更改Excel目標外部列數據類型,但Excel目標顯示一條警告,指出元數據不同步,並且生成的Excel文件始終有文本列...我還檢查了Excel目標輸入列數據類型,分配在th正確的方式。我找不出一個解決方案... – lucazav
一個不是很優雅的嘗試是有一個「虛擬」行與數據,因爲你需要它(即7月19日13日在日期字段)。這是一種混亂,我只用在數據源中,但是這是一件可以嘗試的事情。當SSIS將一個列作爲一個字符串進行投射時,我曾使用它,並且我需要它作爲一個int。 –
是的,我知道這個解決方法。唯一的問題是我必須在運行時創建Excel文件,所以我不能使用具有隱藏行的模板。我只是試圖使用Jet提供程序,一切正常!所以SSIS以一種錯誤的方式管理ACE! :( – lucazav