最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Mac OS X中pypyodbc访问mdb数据库实例教程
时间:2015-03-23 编辑:简简单单 来源:一聚教程网
首先使用brew安装unixodbc和mdbtools,unixodbc是odbc驱动管理器,mdbtools提供了一组mdb操作工具,更重要的是mdbtools提供了mdb驱动程序。
$ brew install unixodbc
$ brew install mdbtools
但是安装完成后发现/usr/local/lib目录中没有mdbtools驱动动态链接库libmdbodbc.dylib
查看mdbtools选项可以发现:
$ brew options mdbtools
--with-man-pages
Build manual pages
mdbtools formula并没有提供--with-unixodbc选项,默认也没有build mdb驱动,因此需要手动来编译安装mdbtools提供的mdb driver
编译安装libmdbodbc
brew安装mdbtools时已经将mdbtools的源码包下载到了目录/Library/Caches/Homebrew/,所以直接使用这个源码包编译安装就可以了。
$ tar zxvf mdbtools-0.7.1
$ cd mdbtools-0.7.1
$ autoreconf -i -f
$ ./configure --with-unixodbc=/usr/local --disable-man
$ make
$ cd src/odbc
$ sudo make install
这样libmdbodbc驱动程序就安装到了/usr/local/lib目录下。libmdbodbc的源代码就在src/odbc目录下。
配置unixodbc
因为brew的所有包都安装在/usr/local下面,因此这里配置unixodbc应该使用/usr/local/etc/目录下的odbcinst.ini和odbc.ini文件。
odbcinst.ini配置如下:
[MDBTools]
Description=MDBTools Driver
Driver=libmdbodbc.dylib
Setup=libmdbodbc.dylib
FileUsage=1
UsageCount=1
然后就可以像linux平台上一样来访问mdb文件了。
$ python3
>>> import pypyodbc
>>> conn=pypyodbc.connect('Driver=MDBTools;DBQ=/path/to/record.mdb')
因为这里也是使用mdbtools提供的odbc驱动,所以和pypyodbc配合使用时仍然存在中文字符编码转换的问题,请参数:linux中pypyodbc读取GB编码mdb中文乱码解决办法。
相关文章
- PHP导出数据超时的优化建议解读 10-31
- PHP之mysql位运算解析 10-31
- Laravel实现登录跳转功能解析 10-31
- php双向队列解读 10-31
- Laravel异常上下文解决教程 10-24
- php数组查询元素位置方法介绍 10-24