64位系统使用Access 数据库文件的彻底解决方法
最近,有PDF.NET用户问我怎么在64位 系统 下无法访问Access 数据库 的问题,我第一反应是我怎么没有遇到呢?今天一看自己的VS和Office都是32位版本的,所以在VS里面调试访问Access是没有问题的,但是直接 使用 编译好的.NET程序访问Access,就出问题了,报:
最近,有PDF.NET用户问我怎么在64位系统下无法访问Access数据库的问题,我第一反应是我怎么没有遇到呢?今天一看自己的VS和Office都是32位版本的,所以在VS里面调试访问Access是没有问题的,但是直接使用编译好的.NET程序访问Access,就出问题了,报:
未在本地计算机上注册“Microsoft.Jet.Oledb.4.0”提供程序。
于是,又在公司的电脑上(Win7 64位)做了实验,发现跟家里面的Win8.1 64位 问题一样,上网搜索了一下,大部分都建议将.NET程序编译的时候,目标平台设定为 x86 ,我试了下,果然成功。
但是,如果你的.NET程序是别人编译好的,且在64位系统上运行,要访问Access数据库,怎么办呢?
首先想到,看能否通过应用程序配置文件,将.NET程序配置成运行在 32位 系统下,找了很久资料,无果,放弃。
再想想,是不是跟自己的Office是32位有关呢?
关键问题不在于是Access 2010还是Access 2013而已,不必钻牛角尖,何不求其次,安装一个Access 2007/2010的Database Engine不就行了。
解决办法:
① 下载安装Microsoft Access Database Engine 2010 Redistributable(28MB),共有32bit(下载)和64bit(下载)两个版本,具体要安装哪个要看你的Office程序是32bit的还是64bit的,比如:我的PC是64bit的Win8 Pro,但是我Office的程序是32bit的,所以我应当安装AccessDatabaseEngine.exe(32bit);
② 打开你的.NET应用程序配置文件(应用程序名.config,Web应用程序为 Web.config),设置数据库连接字符串的Provide Microsoft.ACE.OLEDB.12.0,例如标准连接字符串为:"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Data.accdb;Persist Security Info=False;"
再次运行程序,OK,数据库连接成功,一切正常。
注意:64位系统下一定要修改提供程序为 Microsoft.ACE.OLEDB.12.0,而此时的文件名,可以是 早期的 mdb文件,也可以是新的 accdb 文件。
如果你虽然是64位系统,但是你的Office 是32位的,所以你只能安装32位的ACE驱动,因此你的.NET应用程序也只能发布成32位的,如果编译成anycpu版本,还是无法访问ACE。
(PS:如果你发布成x86格式的目标平台,并且不想使用accdb格式的Access数据库文件,那么就不必安装上面的32位ACE驱动了,省得折腾:-《)
此问题受影响的 PDF.NET 开发框架相关程序:
1,SimpleAccessWinForm 程序,下载地址 , PDF.Net_V4.6 WinForm 数据表单实例
example, 526K, uploaded Mar 27, 2013 - 809 downloads
运行该程序后,请修改 SimpleAccessWinForm.config 文件的内容,如果是第一次运行,程序会自动创建该文件 并自动创建数据库文件,文件内容比如:
<span></span><span>xml version="1.0" encoding="utf-8"</span><span>?></span> <span><span>configuration</span><span>></span> <span><span>connectionStrings</span><span>></span> <span><span>add </span><span>name</span><span>="AccessConn"</span><span> connectionString</span><span>="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=TEST.mdb"</span><span> providerName</span><span>="Access"</span> <span>/></span> <span></span><span>connectionStrings</span><span>></span> <span></span><span>configuration</span><span>></span></span></span></span>
2,PDF.NET集成开发工具,下载地址: 安装程序
application, 1576K, uploaded May 25, 2011 - 1943 downloads
下载后,请找到运行目录下的 子目录 Config ,然后打开配置文件 DataConnectionCfg.xml ,找到相关的配置节:
<span></span><span>xml version="1.0" encoding="utf-8" </span><span>?></span> <span><span>DataConnections</span><span>></span> <span><span>Group </span><span>Name</span><span>="默认分组"</span><span>></span> <span><span>Connection </span><span>DbType</span><span>="SQLServer"</span><span> Name</span><span>="default"</span><span> ConnectionString</span><span>="Data Source=.;Integrated Security=True"</span> <span>/></span> <span><span>Connection </span><span>DbType</span><span>="SQLServer"</span><span> Name</span><span>=".\SQLEXPRESS"</span><span> ConnectionString</span><span>="Data Source=.\SQLEXPRESS;Integrated Security=True"</span> <span>/></span> <span><span>Connection </span><span>DbType</span><span>="SQLServerCe"</span><span> Name</span><span>="SQLCE"</span><span> ConnectionString</span><span>="Data Source=E:\DAC\LocalDB.sdf;Password=sasa;Persist Security Info=True"</span> <span>/></span> <span></span><span>Group</span><span>></span> <span><span>Group </span><span>Name</span><span>="XX二期"</span><span>></span> <span><span>Connection </span><span>DbType</span><span>="SQLite"</span><span> Name</span><span>="SQLite"</span><span> ConnectionString</span><span>="Data Source=E:\jjzd.db"</span><span> Provider</span><span>="PWMIS.DataProvider.Data.SQLite,DataAccess"</span><span>/></span> <span><span>Connection </span><span>DbType</span><span>="SQLServer"</span><span> Name</span><span>="192.168.50.1"</span><span> ConnectionString</span><span>="server=192.168.50.5;uid=sa;pwd=sasa"</span><span> Provider</span><span>=""</span><span>/></span> <span></span><span>Group</span><span>></span> <span><span>Group </span><span>Name</span><span>="分组2"</span><span>></span> <span><span>Connection </span><span>DbType</span><span>="Access"</span><span> Name</span><span>="default"</span><span> ConnectionString</span><span>="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=TEST.mdb"</span><span> Provider</span><span>="Access"</span><span>/></span> <span><span>Connection </span><span>DbType</span><span>="SQLServer"</span><span> Name</span><span>="50.25"</span><span> ConnectionString</span><span>="server=192.168.50.25;uid=sa;pwd=sasa"</span><span> Provider</span><span>=""</span><span>/></span> <span></span><span>Group</span><span>></span> <span></span><span>DataConnections</span><span>></span></span></span></span></span></span></span></span></span></span></span></span>
经过这样的配置以后,就可以直接打开集成开发工具了,如下图:
总结:
64位系统下.NET访问Access 数据库,最彻底的方法是安装64位的Access数据访问驱动安装程序 并使用新的Access提供程序 Microsoft.ACE.OLEDB.12.0

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Bagaimana cara mengkonfigurasi zend di Apache? Langkah -langkah untuk mengkonfigurasi Rangka Kerja Zend dalam pelayan web Apache adalah seperti berikut: Pasang Rangka Kerja Zend dan ekstraknya ke dalam direktori pelayan web. Buat fail .htaccess. Buat direktori aplikasi Zend dan tambahkan fail index.php. Konfigurasikan aplikasi Zend (Application.ini). Mulakan semula pelayan web Apache.

Oracle bukan sahaja syarikat pangkalan data, tetapi juga pemimpin dalam pengkomputeran awan dan sistem ERP. 1. Oracle menyediakan penyelesaian yang komprehensif dari pangkalan data ke perkhidmatan awan dan sistem ERP. 2. Oraclecloud mencabar AWS dan Azure, menyediakan perkhidmatan IaaS, PaaS dan SaaS. 3. Sistem ERP Oracle seperti E-BusinessSuite dan FusionApplications membantu perusahaan mengoptimumkan operasi.

MySQL sesuai untuk aplikasi web dan sistem pengurusan kandungan dan popular untuk sumber terbuka, prestasi tinggi dan kemudahan penggunaan. 1) Berbanding dengan PostgreSQL, MySQL melakukan lebih baik dalam pertanyaan mudah dan operasi membaca serentak yang tinggi. 2) Berbanding dengan Oracle, MySQL lebih popular di kalangan perusahaan kecil dan sederhana kerana sumber terbuka dan kos rendah. 3) Berbanding dengan Microsoft SQL Server, MySQL lebih sesuai untuk aplikasi silang platform. 4) Tidak seperti MongoDB, MySQL lebih sesuai untuk data berstruktur dan pemprosesan transaksi.

VProcesserAzrabotKiveB-disengajakan, мнепришосоаookaнноаяадачейтераце hadapan LeavallysumballanceFriablanceFaumdoptomification, čtookazalovnetakprosto, Kakaožidal.posenesko

Pemantauan dan penyelesaian masalah prestasi Nginx terutamanya dilakukan melalui langkah-langkah berikut: 1. Gunakan Nginx-V untuk melihat maklumat versi, dan membolehkan modul Stub_status untuk memantau bilangan sambungan aktif, permintaan dan kadar hit cache; 2. Gunakan arahan atas untuk memantau pekerjaan sumber sistem, iostat dan vmstat monitor cakera I/O dan penggunaan memori masing -masing; 3. Gunakan TCPDUMP untuk menangkap paket untuk menganalisis trafik rangkaian dan menyelesaikan masalah sambungan rangkaian; 4. Konfigurasikan dengan betul bilangan proses pekerja untuk mengelakkan keupayaan pemprosesan serentak yang tidak mencukupi atau konteks proses yang berlebihan beralih ke atas; 5. Konfigurasikan cache Nginx dengan betul untuk mengelakkan tetapan saiz cache yang tidak betul; 6. Dengan menganalisis log nginx, seperti menggunakan arahan AWK dan GREP atau rusa

MySQL dengan cekap menguruskan data berstruktur melalui struktur jadual dan pertanyaan SQL, dan melaksanakan hubungan antara meja melalui kunci asing. 1. Tentukan format data dan taip apabila membuat jadual. 2. Gunakan kunci asing untuk mewujudkan hubungan antara jadual. 3. Meningkatkan prestasi melalui pengindeksan dan pengoptimuman pertanyaan. 4. Secara kerap sandaran dan memantau pangkalan data untuk memastikan pengoptimuman keselamatan data dan prestasi.

Apache Server adalah perisian pelayan web yang kuat yang bertindak sebagai jambatan antara penyemak imbas dan pelayan laman web. 1. Ia mengendalikan permintaan HTTP dan mengembalikan kandungan laman web berdasarkan permintaan; 2. Reka bentuk modular membolehkan fungsi lanjutan, seperti sokongan untuk penyulitan SSL dan laman web dinamik; 3. Fail konfigurasi (seperti konfigurasi tuan rumah maya) perlu ditetapkan dengan teliti untuk mengelakkan kelemahan keselamatan, dan mengoptimumkan parameter prestasi, seperti kiraan thread dan masa tamat, untuk membina aplikasi web berprestasi tinggi dan selamat.

Masalah had semasa nginx boleh diselesaikan dengan: Gunakan ngx_http_limit_req_module untuk mengehadkan bilangan permintaan; Gunakan ngx_http_limit_conn_module untuk mengehadkan bilangan sambungan; Gunakan modul pihak ketiga (ngx_http_limit_connections_module, ngx_http_limit_rate_module, ngx_http_access_module) untuk melaksanakan lebih banyak dasar had semasa; Gunakan Perkhidmatan Awan (CloudFlare, Kadar Awan Google, AWS WAF) ke DD
