2009-01-23 105 views
12

我需要將一個excel電子表格導入到SQL Server 2005.我需要採取哪些步驟來實現它?如何將Excel電子表格導入SQL Server?

+0

您正在使用哪個版本的SQL Server ? – 2009-01-23 11:59:44

+0

我正在使用verison 2005 – Fee 2009-01-23 13:50:29

回答

17

「數據轉換服務」嚮導是你的朋友。

的這裏說明假定的SQL Server 2000

  • 打開SQL Server企業管理器
  • 適當的服務器上通過嚮導右鍵單擊
  • 選擇導入數據
  • 運行。
    • 單擊下一步的第一個屏幕
    • 選擇「Microsoft Excel中」作爲您的數據源
    • 輸入路徑XLS文件並點擊下一步。
    • 輸入數據庫的連接詳細信息,然後單擊下一步。

根據你想用數據做什麼,你有幾種選擇新的。對於一次性工作,我通常會發現導入所有excel數據最簡單,然後在SQL Server中進行編輯,但如果要對多個文件重複此操作,可能需要製作一個非常性感的導入腳本。

如果要再次運行它,可以使用嚮導保存DTS包,然後在企業管理器的「數據轉換服務」部分對其進行編輯。這是學習DTS如何工作的好方法。

7

另一種快速,(非常)骯髒的解決方案是將公式添加到Excel工作表,就像這樣:

="INSERT INTO table1(col1, col2, col3) SELECT " & A1 & ", '" & B1 & "', '" & C1 & "'" 

複製下來(CTRL + d)和你去好。

9

你也可以用OPENROWSET

INSERT INTO SOMETABLE SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
'Excel 8.0;Database=C:\testing.xls','SELECT * FROM [Sheet1$]') 
-1

做到這一點。如果您的電子表格不是爲一到一個進口很好地組織到SQL表,(如:格式化後小標題可讀性,空白,累加器列等),那麼現成的工具可以用來做這種事情。示例請參見Khronos Excel Pump。免責聲明 - 我爲銷售該產品的公司工作。這是非常可配置的,所以你可以保持你的電子表格人性化佈局,並仍然可靠地導入到結構化SQL表格中,包括用身份字段值替換文本值或者旋轉寬網格來縮小表格等。