剛剛在用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 "
excel導入sqlserver觸發觸發器的問題
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.