LINUX通过python连接ACCESS(.mdb和.accdb文件)数据库
前言
因为ACCESS主要还是微软的那一套,所以WIN平台的连接方式不再赘述,网上方案很多。
LINUX上的连接,主要还是分为ODBC和JDBC
ODBC方案
包安装
linux需安装的包:mdbtools, unixODBC, libmdbodbc
python需安装的包:pyodbc或pypyodbc
配置
配置/etc/odbcinst.ini
[MDBToolsODBC]
Description = MDB Tools ODBC
Driver = /usr/lib/libmdbodbc.so.0
Setup =
FileUsage =
CPTimeout =
CPReuse =
配置/etc/odbc.ini 或者 ~/.odbc.ini
[mytest]
Description = Microsoft Access Try DB
Driver = MDBToolsODBC
Database = /path/mytest.mdb
Servername = localhost
Username =
Password =
port = 5432
DEMO代码
import pyodbc
conn = pyodbc.connect('DSN=mytest');
cur = conn.cursor()
cur.execute('select * from test')
cur.fetchall()
JDBC方案
驱动下载
UCanAccess JDBC驱动程序下载
实现方案
有两种方法可以实现:JayDeBeApi和Jython.
JayDeBeApi(推荐)
包安装
pip install JPype1==0.6.3 JayDeBeApi==1.1.1
--JPype1的更高版本存在问题,所以安装0.6.3版本
PS:还需要jre环境
DEMO代码如下:
import jaydebeapidb_path = "/path/mytest.mdb"ucanaccess_jars = ["/path/UCanAccess-4.0.4-bin/ucanaccess-4.0.4.jar","/path/UCanAccess-4.0.4-bin/lib/commons-lang-2.6.jar","/path/UCanAccess-4.0.4-bin/lib/commons-logging-1.1.3.jar","/path/UCanAccess-4.0.4-bin/lib/hsqldb.jar","/path/UCanAccess-4.0.4-bin/lib/jackcess-2.1.11.jar",]
classpath = ":".join(ucanaccess_jars)
conn = jaydebeapi.connect("net.ucanaccess.jdbc.UcanaccessDriver",f"jdbc:ucanaccess://{db_path}",["", ""],classpath)
cur = cnxn.cursor()
cur.execute("select * from test")
cur.fetchall()
Jython
Jython是Python的单独实现,它只支持Python 2.7,目前不再处于活动开发阶段。从某种意义上说执行不是python程序了,而是jython程序,所以这里不进行详细描述。
LINUX通过python连接ACCESS(.mdb和.accdb文件)数据库相关推荐
- arcgis打开mdb数据库_操作方法:在 ArcGIS 中连接至 Microsoft Access 2007 / 2010 (ACCDB) 文件...
操作方法:在 ArcGIS 中连接至 Microsoft Access 2007 / 2010 (ACCDB) 文件 摘要 Microsoft Office 2007 引入了一种新的 Microsof ...
- python连接access数据库查询并打印出来_Python连接Access和读取Access数据库的例子
其实这个Python连接Access和读取Access数据库的例子是写给自己看的,网上已经有Python读取Access的例子了,我这个也是参考以上制作的. 而这个例子应该是只能在windows使用吧 ...
- python连接access 参数太少_paip. 解决php 以及 python 连接access无效的参数量。参数不足,期待是 1”的错误...
paip. 解决php 以及 python 连接access无效的参数量.参数不足,期待是 1"的错误 作者Attilax 艾龙, EMAIL:1466519819@qq.com
- Python 连接FTP服务器并实现文件夹下载实例演示,python区分ftp目录下文件和文件夹方法,ftp目录下包含中文名问题处理
Python 连接 FTP 服务器并实现文件夹下载实例演示 第一章:连接 FTP 服务器并实现文件夹下载 ① 连接 FTP 服务器 ② 进入指定目录并显示文件信息 ③ 区分文件和文件夹名 ④ 文件夹名 ...
- pythonaccess系统_Win7(64位系统)中用Python连接access数据库(access2010)
[本机是win7 64位操作系统,做数据库实例时需要创建Access数据库的ODBC数据源,但是打开ODBC数据源后发现添加里面没有配置access的连接,如下图:还会弹出以下问题框:# -*- co ...
- python连接access数据库odbc_对Python通过pypyodbc访问Access数据库的方法详解
看书上通过ODBC访问数据库的案例,想实践一下在Python 3.6.1中实现access2003数据库的链接,但是在导入odbc模块的时候出现了问题,后来查了一些资料就尝试着使用pypyodbc,最 ...
- ArcGIS 10.6连接Access 2007(.accdb)及以上版本数据库
Microsoft Office 2007 引入一种新的 Microsoft Access 数据库格式,accdb,这是在 Access 2007 中保存或创建数据库时的新默认格式.若不使用 OLE ...
- qt链接mysql文件失败_【成功经验】QT读取access 2010的.accdb文件总是失败
QT读取access失败,在输出窗口里面写着:QSqlDatabase: QODBC driver not loaded,到安装路径的plugins\Sqldriver里面没有QODB相关文件.正好有 ...
- linux连接oracle的日志,linux shell脚本连接oracle查询数据插入文件和日志文件中
#!/bin/sh sqlplus "用户名/密码@数据库"< sqlplus "用户名/密码"< sqlplus -S "用户名/密码& ...
最新文章
- 手把手教你EEG脑电数据预处理-操作篇
- iOS ALAsset的选取和存储
- mycat mysql好可用架构_想要学会MyCat高可用集群搭建,但是这些知识点却还玩不明白?...
- 求职 .net程序员!
- vue2.0 唤起百度地图app_如何标注百度地图?
- 18春东师计算机应用基础,东师计算机应用基础18春在线作业31.docx
- 学习《PythonWeb开发实战(董伟明)》中文PDF+源代码
- 单源最短路径之迪杰斯特拉算法(C语言)
- HNOI2019 退役记
- JS 使用RSA加密解密
- Codeforces 36B - Fractal
- linux下blast设计引物,Primer-BLAST:NCBI的引物设计和特异性检验工具
- 阿里云国际版设置阿里邮件企业邮箱客户端教程
- mysql etimedout_Node.js MySQL ETIMEDOUT error
- 【微信小程序】微信小程序接口数据加密、解密算法
- 2021电赛F题送药小车视觉部分的一种思路(双OpenMV法)
- [附源码]计算机毕业设计基于Springboot校园运动会管理系统
- 计算机专业法语词汇,法语词汇学习:计算机及网络词汇(1)
- 0基础学MySQL数据库—从小白到大牛(23)逻辑架构
- 计算机视觉系列(七)——迁移学习