linux python2.7 链接mysql导出数据库脚本_在Linux中通过Python脚本访问mdb数据库的方法...

在 linux 系统中连接 mdb 数据库,直接连接的话,mdb 默认的驱动无法识别非 windows 的路径, 所以不能使用常规的连接方式 DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\\dir\\file.mdb

安装

这里我们需要借助一些库来实现第三方的驱动

我们需要安装这些包:mdbtools, unixODBC, libmdbodbc

如果是支持 deb 的系统中,如果不能找到 libmdbodbc ,将以下路径加入到软件源列表中

deb http://ftp.de.debian.org/debian squeeze main

更新源后即可可以安装 libmdbodbc 了

配置

安装了需要的包后,需要做一些配置,才能支持 libmdbodbc 的驱动

复制代码 代码如下:/etc/odbcinst.ini

[MDBToolsODBC]

Description = MDB Tools ODBC

Driver = /usr/lib/libmdbodbc.so.0

Setup =

FileUsage =

CPTimeout =

CPReuse =

/etc/odbc.ini 或者 ~/.odbc.ini

复制代码 代码如下:[test]

Description = Microsoft Access Try DB

Driver = MDBToolsODBC

Database = /path/to/mdb/file/test.mdb

Servername = localhost

Username =

Password =

port = 5432

代码

配置好数据源后,就可以用于任何支持 odbc 访问的应用中了,这里以 pyodbc 为例 #-*- coding: utf-8 -*-

import pyodbc

conn = pyodbc.connect('DSN=test');

cursor = conn.cursor()

cursor.execute('select * from "省"')

for row in cursor.fetchall():

print row.Name

注:如果是操作名称中文的表或者字段等,需要将其包含在双引号中,不然会出错,当然,将表名做成中文这么二的做法, 还是不推荐使用的啦

pyodbc 是个很不错的库,api 也很好用,不过对中文支持的并不好,它并没有默认以 unicode 处理数据,所以对于中文相关的应用, 编码问题无处不在,只得慢慢折腾了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值