对Python通过pypyodbc访问Access数据库的方法详解

看书上通过ODBC访问数据库的案例,想实践一下在Python 3.6.1中实现access2003数据库的链接,但是在导入odbc模块的时候出现了问题,后来查了一些资料就尝试着使用pypyodbc,最后成功了。

操作步骤:

①安装pypyodbc

目前Python安装通常使用steup.py或者pip工具,在python3.4之后的的版本都默认包含了pip,因此,这里推荐使用pip工具。在cmd中执行:pip install pypyodbc,耐心等待执行完成,pypyodbc模块就已经安装成功了。如果提示安装超时或者失败可以重新再执行一次。执行成功后,查看C:\Python36\Lib\site-packages中就会发现多了pypyodbc的目录。这时候就可以使用pypyodbc模块了。

②创建数据源

先利用Access创建一个数据库,我是在D盘中创建了一个名称为addresses.mdb的数据库文件。然后在“控制面板”中找到“管理工具”,打开其中的“数据源(ODBC)”,选择“添加”,并选择“Microsoft Access Driver(*.mdb,*.accdb)”,点击完成。然后输入数据源名“addresses”,并点击“选择”找到在D盘创建的数据库。这样就将数据源创建完成。

③代码部分

import pypyodbc str = 'Driver={Microsoft Access Driver (*.mdb,*.accdb)};DBQ=D:\\addresses.mdb' db=pypyodbc.win_connect_mdb(str) # 打开数据库连接 curser = db.cursor() # 产生cursor游标 curser.execute('select * from address order by id desc') for col in curser.description: # 显示行描述 print (col[0], col[1]) result = curser.fetchall() for row in result: # 输出各字段的值 print (row) print (row[1], row[2]) timeTuple = time.localtime(row[3]) print (time.strftime('%Y/%m/%d', timeTuple))

注意事项:

①如果过程中出现下图的情况,注意检查创建数据源过程中的驱动与代码中的Microsoft Access Driver (*.mdb,*.accdb)是否一致。

②注意这里使用的是pypyodbc.win_connect_mdb,如果使用pypyodbc.connect同样会出现:

③如果出现下图的情况,可能是文件已加密,只需要在DBQ前面加上:PWD=YourPWD(文件的密码)

以上这篇对Python通过pypyodbc访问Access数据库的方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

(0)

相关推荐

  • python3.9安装pip

    在Windows上使用 Python 中文DOC 英文doc https://packaging.python.org/tutorials/installing-packages/ If that s ...

  • python采集数据的几种途径_详解

    工程师小C的小店 Python编程三剑客:Python编程从入门到实践第2版+快速上手第2版+极客编程(套装共3册) 作者:[美] 埃里克·马瑟斯(Eric Matthes) 出版社:人民邮电出版社 ...

  • selenium+python自动化93-鼠标事件(ActionChains)源码详解

    ActionChains简介 actionchains是selenium里面专门处理鼠标相关的操作如:鼠标移动,鼠标按钮操作,按键和上下文菜单(鼠标右键)交互. 这对于做更复杂的动作非常有用,比如悬停 ...

  • Python正则表达式中的re.S的作用详解

    Python 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. r ...

  • Python利用pandas处理Excel数据的应用详解

    最近迷上了高效处理数据的pandas,其实这个是用来做数据分析的,如果你是做大数据分析和测试的,那么这个是非常的有用的!!但是其实我们平时在做自动化测试的时候,如果涉及到数据的读取和存储,那么而利用p ...

  • 使用OpCode绕过Python沙箱的方法详解

    0x01 OpCode opcode又称为操作码,是将python源代码进行编译之后的结果,python虚拟机无法直接执行human-readable的源代码,因此python编译器第一步先将源代码进 ...

  • 不能错过!超全Anaconda(Python整合包)导修(图文详解)

    全文共2653字,预计学习时长10分钟 图源:Pexels Anaconda是一个供数据科学家.IT专家,和商业领袖使用的数据科学平台,是Python.R语言等的一个发行版.针对数据科学,它有超过30 ...

  • Python之函数返回值的示例代码详解

    文中通过示例代码介绍的非常详细,下面我们一起来看一下吧. 0x  00返回值简介 回顾下,上一节简单介绍了函数及其各种参数,其中也有简单介绍print和return的区别,print仅仅是打印在控制台 ...

  • Python写入文件(write和writelines)详解

    如果以 r+.w.w+.a.a+ 模式打开文件,则都可以写入.需要指出的是,当以 r+.w.w+ 模式打开文件时,文件指针位于文件开头处:当以 a.a+ 模式打开文件时,文件指针位于文件结尾处. 另外 ...

  • Python中的魔术方法详解

    介绍 在Python中,所有以"__"双下划线包起来的方法,都统称为"Magic Method",中文称『魔术方法』,例如类的初始化方法 __init__ ,P ...