excel導入sqlserver觸發觸發器的問題

剛剛在用excel導入sqlserver的時候居然發現沒有觸發對應的數據表中的觸發器,本來想想應該是可以觸發的,但是實際上直接導數據進去是不行的,最後找到了個方法可以到入數據,同時觸發目標表的觸發器.操作步驟如下:

--開啓高級設置
exec sp_configure'show advanced options',1 reconfigure

--開啓外圍設置
exec sp_configure'Ad Hoc Distributed Queries',1 reconfigure 

--再執行以下語句
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1 
GO 
EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1 
GO

--最後執行如下語句
insert  表名 
select   *   from   
OPENROWSET( 'MICROSOFT.JET.OLEDB.4.0','Excel 8.0;IMEX=1;HDR=YES;DATABASE=F:\aa.xls',sheet1$)
--F:\aa.xls是excel文件名 
--sheet1$是工作表名+$


其中要注意的是 "MICROSOFT.JET.OLEDB.4.0 "必須寫正確且之間不能有空格(如 "MICROSOFT.JET.OLEDB.4.0  "),否則容易報如下錯誤:
尚未註冊 OLE DB 訪問接口 "MICROSOFT.JET.OLEDB.4.0 "

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章