簡體   English   中英

將數據從Excel移動到SQL Server表

[英]Moving data from Excel to SQL Server table

我有一個非常簡單的excel表:

在此輸入圖像描述

我想將此數據放入SQL Server中的表中。 我還想添加一個包含日期的字段。

做這個的最好方式是什么?

在SQL Server中創建一個表,其中包含與電子表格中相同的字段數。

在SQL Server Management Studio對象資源管理器中,您可以右鍵單擊您創建的表,然后選擇“編輯前200行”。 在Excel中突出顯示要復制的數據,然后右鍵單擊 - >復制。 右鍵單擊SSMS編輯tabe窗口中第一行左側的空格並粘貼。

導入后檢查SQL表以確保它具有與電子表格相同的行數。

執行數據導入后,可以將日期列添加到SQL表中。 或者在導入之前將其添加到電子表格中。

您可以先在SQL Server中使用添加的字段創建表,然后使用Mangement Studio中的導入向導導入excel文件。 或者您在導入任務期間創建表,然后稍后添加新字段。

選項1:

讀取IDataReader中的數據,然后調用存儲過程以插入數據。

http://granadacoder.wordpress.com/2009/01/27/bulk-insert-example-using-an-idatareader-to-strong-dataset-to-sql-server-xml/

當我要導入~~很多行時,我會使用上面的內容,我想在數據庫之外驗證它們。

選項2:

http://support.microsoft.com/kb/321686

或搜索:

Select  FROM OPENDATASOURCE Excel

選項N:

還有其他選擇。

這取決於你喜歡什么,你想要投入多少時間,它是一個“一次性”或你必須每天做333個文件。

我的解決方案是將.xlsx轉換為.csv,然后使用此站點將.csv轉換為.sql。 然后我在sql server中運行sql文件並生成我的表。

也可以通過創建批處理文件來完成。

為此,您需要在服務器上創建一個具有與excel中相同的數據結構的表。

現在使用BCP,您可以從excel文件導入該數據並將其插入到sql表中。

BCP實用功能

sqlcmd -S IP -d databasename -U username -P passwd -Q "SQL query mostly it should be truncate query to truncate the created table"
bcp databasename.dbo.tablename in "Excel file path from where you need to input the data" -c -t, -S Server_IP -U Username -P passwd -b provide batch size

有關bcp實用程序的更多選項,請參閱以下鏈接:

https://msdn.microsoft.com/en-IN/library/ms162802.aspx

打開SQL Server界面軟件,將日期字段添加到表中。

轉到Excel,添加日期列,復制Excel數據。

轉到SQL Server界面軟件並使用該功能從剪貼板導入數據。 (具有此功能的SQL服務器接口軟件是例如Database4.net,但如果您有另一個具有該功能的軟件包,則使用該軟件。)


或者使用帶有DOA或ADO的VBA與SQL服務器數據庫交互,並使用SQL語句添加字段並將數據復制到表中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM