Seperti yang dikatakan Philip...pertama periksa eksekusi xp_cmdshell. Jika tidak berjalan karena masalah izin, konfigurasikan ulang opsi ini terlebih dahulu dengan menjalankan
SP_CONFIGURE 'XP_CMDSHELL',1
GO
RECONFIGURE
setelah ini jalankan perintah berikut untuk mengaktifkan izin server tertaut untuk kemampuan InProcess untuk driver ACE:
USE [master]
GO
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
Sekarang jalankan rangkaian perintah ini :
sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
jika terjadi kesalahan maka jalankan setiap perintah secara terpisah. Dan akhirnya jalankan impor semua data excel Anda ke SQL server dengan menjalankan perintah yang disebutkan di bawah ini:
SELECT * INTO TargetTableName FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=FilePath\fileName.xlsx;HDR=YES',
'SELECT * FROM [sheetName$]')
Ingat bahwa dalam kasus xls Anda harus menggunakan Jet Driver bukan ACE. Dan juga TargetTableName tidak boleh ada sebelum menjalankan kueri ini. Selamat coding :)