我試圖使用ssis將單個sql表導出到具有單個Excel文件的多個excel表單中。場景:使用ssis將單個sql表導出到單個Excel文件中的單個sql表格
- 在SQL表中具有區域明智的數據。我每天都會從客戶區域獲取數據。
- 必須將這些數據導出到不同的Excel工作表中,如同一個Excel文件中的region1,region2
- 也是每天運行ssis包前一天數據應該被截斷,並且必須插入新值。
我試圖使用ssis將單個sql表導出到具有單個Excel文件的多個excel表單中。場景:使用ssis將單個sql表導出到單個Excel文件中的單個sql表格
創建一個Excel文件命名爲測試具有相同表中的列標題和使用這些查詢
1個將數據導出到現有的Excel文件從SQL Server表
insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:\testing.xls;',
'SELECT * FROM [SheetName$]') select * from SQLServerTable
2將數據從Excel導出到新SQL Server表中
select *
into SQLServerTable FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:\testing.xls;HDR=YES',
'SELECT * FROM [Sheet1$]')
從Excel個
3將數據導出到現有的SQL Server表
Insert into SQLServerTable Select * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:\testing.xls;HDR=YES',
'SELECT * FROM [SheetName$]')
4如果你不想提前創建一個Excel文件,並希望將數據導出到它,使用
EXEC sp_makewebtask
@outputfile = 'd:\testing.xls',
@query = 'Select * from Database_name..SQLServerTable',
@colheaders =1,
@FixedFont=0,@lastupdated=0,@resultstitle='Testing details'
(現在你可以查找帶有表格格式數據的文件)
最後,這是相當全面的。
那麼你已經嘗試過什麼?你究竟在幹什麼? –
我已經使用數據流task.in,我已經添加源爲sql服務器,然後添加條件分割分類表(區域1,區域2 ...),然後添加三個指向相同的Excel連接管理器的Excel目標。在運行包後,我可以在單個Excel文件中的不同工作表(區域1,區域2,區域3)中獲取數據區域。現在的問題是,當我運行下一次數據時,會追加上一次運行的數據。我想要截斷舊數據,並且當我每天運行包裹時必須插入新數據。 – Jagan
我從你之前的問題中刪減了緊急乞討。不得不再次做,並修剪txtspk,我已經downvoted。在編寫問題時請多加小心,儘可能使用真實的單詞,不要乞求。謝謝。 – halfer