Execl(2003)資料 匯入 SQL Server(2005)
最近在做這個問題的時候,發現網上很多資料不是很全,而且有些是有錯的,現在我把問題解決了,特把相應的方法貼出來。
在執行插入語句前,需要做下面幾步操作:
1、從開始選單進入到 配置工具 > sql server 2005 外圍應用配置器 > 服務和連線的外圍配置器 > Datebase Engine > 服務,然後重啟sqlserver服務。(在資料庫非正常關閉之後,可能會出現,“沒法初始化資料來源的錯誤”,此時重啟一下sqlserver服務就可以了)
2、然後執行 regedit 進入登錄檔編輯器 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\Providers\Microsoft.Jet.OLEDB.4.0 新建DWORD (64位值)名為DisallowAdhocAccess 值為0.
3、注意:
3.1、把需要匯入的Execl檔案關閉;
3.2、配置工具 > SQL Server 外圍配置管理器 > 功能的外圍應用配置器 > Database Engine > 即席遠端查詢 > 啟用OPENROWSET 和 OPENDATASOURCE 支援 (勾選上)
3、在執行插入語句前,必須先開啟這個元件服務:
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
注意:在每次用完之後,記得把它關閉。
exec sp_configure 'Ad Hoc Distributed Queries',0
reconfigure
exec sp_configure 'show advanced options',0
reconfigure
4、插入語句:
/*新建表y,同時插入資料*/
select * into y from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="G:\1.xls";Extended properties= "Excel 8.0;HDR=YES;IMEX=1"')...[Sheet1$]
/*新建表y,同時插入資料*/
/*插入到已有的表x中*/
insert into x select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;DATABASE=G:\1.xls',Sheet1$);
/*插入到已有的表x中*/
引數HDR的值:
HDR=Yes,這代表第一行是標題,不做為資料使用 ,如果用HDR=NO,則表示第一行不是標題,做為資料來使用。系統預設的是YES
引數Excel 8.0
對於Excel 97以上版本都用Excel 8.0
IMEX ( IMport EXport mode )設定
IMEX 有三種模式,各自引起的讀寫行為也不同,容後再述:
0 is Export mode
1 is Import mode
2 is Linked mode (full update capabilities)
我這裡特別要說明的就是 IMEX 引數了,因為不同的模式代表著不同的讀寫行為:
當 IMEX=0 時為“匯出模式”,這個模式開啟的 Excel 檔案只能用來做“寫入”用途。
當 IMEX=1 時為“匯入模式”,這個模式開啟的 Excel 檔案只能用來做“讀取”用途。
當 IMEX=2 時為“連結模式”,這個模式開啟的 Excel 檔案可同時支援“讀取”與“寫入”用途。
意義如下:
0 ---輸出模式;
1---輸入模式;
2----連結模式(完全更新能力)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-672111/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL server2005的ssis包資料匯入匯出SQLServer
- SQL Server 2005和SQL Server 2000資料的相互匯入SQLServer
- SQL server資料匯入OracleSQLServerOracle
- [zt] SQL Server匯出匯入資料方法SQLServer
- SQL Server快速匯入資料分享SQLServer
- SQL Server海量資料匯入方法SQLServer
- sql server 2005資料庫載入SQLServer資料庫
- 在SQL Server資料庫中匯入匯出資料SQLServer資料庫
- 匯入xml檔案到SQL Server 2005XMLSQLServer
- SQL Server匯入、匯出、備分資料方法SQLServer
- SQL SERVER 和EXCEL的資料匯入匯出SQLServerExcel
- SQL Server海量資料匯入的方法SQLServer
- SQL Server資料庫匯入匯出資料方式比較SQLServer資料庫
- 匯出Sql server 2005資料庫中某表的資料SQLServer資料庫
- 資料庫SQL Server DAC 匯入匯出資料到SQL Azure問題資料庫SQLServer
- ASP.NET利用NPOI元件快速匯入匯出Execl資料ASP.NET元件
- 使用SqlBulkCopy匯入資料至MS SQL ServerSQLServer
- SQL Server Bulk Insert批量資料匯入SQLServer
- SQL2005 匯入其它伺服器資料SQL伺服器
- SQL Server 2008匯入、匯出資料庫SQLServer資料庫
- SQL Server資料匯入匯出工具BCP詳解(轉)SQLServer
- 在SQL Server資料庫中匯入MySQL資料庫Server資料庫MySql
- ORACLE資料庫裡表匯入SQL Server資料庫Oracle資料庫SQLServer
- Sql Server資料庫資料匯入到SQLite資料庫中Server資料庫SQLite
- 在SQL Server中謹慎匯入匯出大容量資料SQLServer
- 從EXCEL匯入資料到SQL SERVERExcelSQLServer
- sql server 2005資料庫快照SQLServer資料庫
- Excel資料匯入Sql Server,部分數字為NullExcelSQLServerNull
- SQL Server海量資料匯入最快方法的詳解SQLServer
- SQL Server資料匯入匯出技術概述與比較(轉)SQLServer
- Execl匯入notes JAVA代理Java
- Sql Server 匯入另一個資料庫中的表資料SQLServer資料庫
- 四種方法在SQL Server資料庫中成批匯入資料SQLServer資料庫
- Sql Server 2005資料庫分割槽SQLServer資料庫
- 從Excel匯入sql serverExcelSQLServer
- asp.net 操作Excel表資料匯入到SQL Server資料庫ASP.NETExcelSQLServer資料庫
- 如何將資料匯入到 SQL Server Compact Edition 資料庫中SQLServer資料庫
- 利用NPOI匯出資料到Execl