Penyedia 'Microsoft.ACE.OLEDB.16.0' tidak terdaftar di mesin lokal. (System.Data)

103

Saya mendapatkan kesalahan ini ketika saya mencoba untuk menyambung ke excel apa pun melalui Impor Data Server MSSQL yaitu paket SSIS Microsoft.ACE.OLEDB.16.0Penyedia tidak terdaftar di mesin lokal. ( System.Data)

Ini bukan versi yang sama, saya pikir perlu beberapa perbaikan lain

Suhail Abdul Rehman Chougule
sumber
5
Saya tidak mengerti mengapa pertanyaan ini dipilih untuk ditutup sebagai duplikat ... Ini jelas merupakan versi yang lebih baru dalam pesan kesalahan dan membutuhkan seperangkat komponen yang lebih baru! Pertanyaan dan jawaban ini membantu saya Microsoft.ACE.OLEDB.16.0mengatasi masalah saya . Pertanyaan yang ditunjukkan oleh close request adalah untuk Microsoft.ACE.OLEDB.12.0dan jawaban menjawab versi ITU. Pertanyaan ini harus dibuka kembali.
Arvo Bowen
@ArvoBowen Tidak masalah. Saya membukanya kembali. Namun kedua pertanyaan tersebut memiliki solusi yang sama.
Hadi
3
Bagaimana? Mereka adalah versi berbeda yang membutuhkan unduhan berbeda. Mereka terkait tetapi memiliki solusi yang berbeda. Jika saya mengikuti jawaban dari pertanyaan lain, itu tidak akan menyelesaikan masalah saya.
Arvo Bowen

Jawaban:

116

Catatan: Saya menjalankan SQL 2016 Developer 64bit, Office 2016 64bit.

Saya memiliki masalah yang sama dan menyelesaikannya dengan mengunduh yang berikut ini:

  1. Unduh dan instal ini: https://www.microsoft.com/en-us/download/details.aspx?id=54920

  2. File apa pun yang Anda coba akses / impor, pastikan Anda memilihnya sebagai file Office 2010 (meskipun itu mungkin file Office 2016).

Berhasil.

Sumber

FA911
sumber
4
Bekerja dengan sempurna untuk saya, terima kasih! Apakah memuat file office 2016 saya sebagai office 2007-2010 dan berfungsi dengan baik. Jauh lebih baik daripada mencoba CSV / TSV.
tc_NYC
2
Terima kasih telah menyebutkan bahwa saya seharusnya tidak memilih Office 2016. Tidak yakin saya akan mencoba salah satu dari yang lain.
birdus
Tautan pertama rusak
jcvegan
1
Saya baru saja memperbarui tautan ke URL saat ini untuk Microsoft Access Database Engine 2016 yang Dapat
Didistribusikan Ulang
Pada WS 2016 64Bit saya harus menggunakan versi 32Bit untuk membuatnya berfungsi ...
Lambda
98

Bagi siapa pun yang masih terjebak dalam masalah ini setelah mencoba cara di atas. Jika Anda mengklik kanan pada database dan membuka tugas-> impor, maka inilah masalahnya. Buka menu awal Anda dan di bawah server sql, temukan wizard ekspor impor x64 bit dan coba itu. Bekerja seperti pesona bagi saya, tapi butuh waktu terlalu lama bagi saya untuk menemukannya Microsoft!

Paul Dove
sumber
3
Agar Excel tersedia dari versi 64-bit DTSWizard, instal 2016 Access Database Engine yang dapat didistribusikan ulang: microsoft.com/en-us/download/details.aspx?id=54920 Sumber: sqlblog.com/blogs/john_paul_cook/archive/ 2017/06/11 /… Saya menguji ini sendiri dan ini berhasil. Perhatikan bahwa SSDT adalah aplikasi 32-bit jadi jika Anda meluncurkan wizard impor / ekspor dari itu, itu adalah versi 32-bit dari wizard yang diluncurkan. Ini masih terjadi bahkan pada Visual Studio 2017 dan SQL Server 2017.
otravers
1
Terima kasih atas jawaban Anda, sangat berguna. Saya memiliki Office (2016) 64-bit dan SQL 64-bit DAN konektor yang sesuai Microsoft.ACE.OLEDB.16.0. Namun saya mendapatkan pesan "Penyedia 'Microsoft.ACE.OLEDB.16.0' tidak terdaftar di mesin lokal." Ini sama sekali tidak masuk akal. Setelah membuka langsung Import wizard 64-bit saya tidak punya masalah untuk mengimpor file excel. Kesan saya adalah bahwa secara default jalur tugas-> impor pergi ke wizard 32-bit dan itu mengacaukan item 64-bit, tidak yakin. Terima kasih Paul.
Kopi
@otravers, saya mengunduh dan menginstal 2016 Access Database Engine yang dapat didistribusikan ulang, tetapi tidak membantu. Kemudian saya tersadar, itu untuk Access, bukan Excel.
Batang
2
@ Batang, terlepas dari namanya, saya jamin ini memecahkan masalah khusus ini dengan Excel dan DTSWizard.
otravers
1
Saya tidak memiliki wizard Impor / Ekspor versi x64
PeterX
20

Sebagai solusi cepat, saya baru saja menyimpan buku kerja sebagai file .xls Excel 97-2003. Saya dapat mengimpor dengan format itu tanpa kesalahan.

Russ
sumber
Tidak berhasil untuk saya. Mendapat, "Kesalahan tak terduga dari driver basis data eksternal (1). (Mesin Basis Data Microsoft JET)"
Batang
2
Butuh beberapa kali percobaan tetapi pada akhirnya saya menemukan ini solusi tercepat untuk masalah saya.
ClubbieTim
1
Ini hanya berfungsi jika Anda memiliki kurang dari 64K baris untuk diimpor.
Cougar9000
Berhati-hatilah karena spreadsheet Anda tidak memiliki lebih dari 65.536 baris, jika tidak, Anda dapat kehilangan data saat melakukan konversi ini.
Fiach Reid
9

Alternatif yang berhasil bagi saya adalah dengan mengonversi ke CSV.

PeterX
sumber
2
Untuk masalah besar, solusi hebat, terima kasih @PeterX
ElMatador
1
@PeterX Menyelamatkan Hari saya bro
Mohammad Heydari
1
Bekerja seperti pesona! Saya hanya perlu memilih file datar daripada ms excel 2016 ketika saya mengunggah csv.
Kiradotee
6

Jika Anda memiliki OS (64bit) dan SSMS (64bit) dan sudah menginstal AccessDatabaseEngine (64bit) dan Anda masih menerima kesalahan, coba solusi berikut ini:

1: langsung membuka wizard impor dan ekspor server sql.

jika Anda dapat terhubung menggunakan wizard impor dan ekspor server sql langsung, maka masalahnya adalah mengimpor dari SSMS, seperti mengaktifkan 32bit jika Anda mengimpor data dari SSMS.

Alih-alih menginstal AccessDatabaseEngine (64bit) , coba gunakan AccessDatabaseEngine (32bit) , setelah penginstalan, windows akan menghentikan Anda untuk melanjutkan penginstalan jika Anda sudah menginstal aplikasi lain, jika demikian, gunakan langkah-langkah berikut. Ini dari MICROSOFT . Instalasi yang Tenang.

Jika Office 365 sudah diinstal, deteksi berdampingan akan mencegah penginstalan melanjutkan. Alih-alih, lakukan / instal diam-diam komponen ini dari baris perintah. Untuk melakukannya, unduh AccessDatabaseEngine.exe atau AccessDatabaeEngine_x64.exe yang diinginkan ke PC Anda, buka prompt perintah administratif, dan berikan jalur penginstalan dan alihkan. Contoh: C: \ Files \ AccessDatabaseEngine.exe / quiet

atau periksa konten Informasi Penambahan dari tautan di bawah ini ,

https://www.microsoft.com/en-us/download/details.aspx?id=54920

jpcarts23
sumber
1
Wow, ini membuat frustrasi. Ternyata penginstal SSMS 18.5 64bit, tetapi aplikasinya sendiri 32 bit. Saya terus menginstal komponen kantor AccessDatabaseEngine 64bit dengan kesalahan yang sama. Melihat task manager, melihat SSMS adalah 32 bit ... Kemudian, saya menggunakan metode Anda: C: \ Files \ AccessDatabaseEngine.exe / quiet karena saya menginstal Office 2016 64bit. Ini berhasil !! Itu berhasil menginstal mesin database 32bit bersama dengan kantor 64bit.
rjkunde
5

ACE.oledb.16.0 tidak berfungsi di os 64-bit

unduh patch dari https://www.microsoft.com/en-us/download/details.aspx?id=13255

arnav
sumber
8
Itu tidak berhasil Saya mencoba masih mendapatkan kesalahan yang sama
Suhail Abdul Rehman Chougule
1
ini berfungsi untuk mengimpor Microsoft Excel 2007-2010 di SQL Server Import and Export Wizard
Junior Mayhé
1

Sekarang Anda harus menggunakan XLSX -Driver baru dari Access-Redist (32/64-Bit). Driver XLS saat ini rusak sejak pembaruan kumulatif terakhir.

bfuerchau.dll
sumber
0

Ikuti langkah ini:

  1. Buka [di sini] [1], unduh Microsoft Access Database Engine 2016 Redistributabledan instal
  2. Tutup SQL Server Management Studio
  3. Buka Menu Mulai -> Microsoft SQL Server 2017 -> SQL Server 2017 Impor dan Ekspor Data (64-bit)
  4. Buka aplikasi dan coba impor data menggunakan opsi "Excel 2016", seharusnya berfungsi dengan baik.
Francesco Mantovani
sumber