笨办法学 Python · 续 练习 44:使用 Python 的数据库 API
2017-08-15 11:55
295 查看
练习 44:使用 Python 的数据库 API
原文:Exercise 44: Using Python’s Database API译者:飞龙
协议:CC BY-NC-SA 4.0
自豪地采用谷歌翻译
Python 具有标准化的数据库 API,可以使用相同的代码访问多个数据库。您要连接的每个数据库都有一个不同的模块,它们知道如何与该数据库通信,并遵循 https://www.python.org/dev/peps/pep-0249/PEP 中的标准。这使得我们更容易使用所有数据库来访问它们,它们具有不同 API。对于本练习,您将使用 https://docs.python.org/2/library/sqlite3.html 上的
sqlite3模块来处理 SQL。
学习 API
作为程序员,您必须不断做到的一件事是,学习其他人写的 API。我没有具体涵盖最有效的方式来做到它,因为大多数程序员得心应手,就像学习语言那样。Python 语言及其模块密切相关,当您学习 Python 时,您不得不学习这些模块中的 API。然而,有一种有效的方式来学习我使用的 API,在这个练习中你将要学习它。为了学习像
sqlite3模块的API,我会这样做:
查找 API 的所有文档,如果没有文档,请查找代码。
检查样例或测试代码,并将其复制到我自己的文件中。通常阅读是不够的。我实际上会使其工作,猜猜为什么,因为很多时候文档不匹配当前版本的 API。制作文档中的所有东西,可以帮助我找到所有忘记提到的内容。
当你获取样例代码,来工作于我的机器时,记录下任何对我有用(WFM)的情况。WFM 是,编写文档的人留下了重要的配置步骤,因为他们的计算机已经配置好了。大多数编写文档的程序员并不是从一台新机器开始,所以他们遗漏了一些库和软件,它们安装了但是别人没有。当您尝试在生产环境中配置 API 时,这些 WFM 的差异之后会阻碍你,所以我会记下来便于以后使用。
为所有主要 API 入口点,以及它们所做的东西制作闪存卡或笔记。
尝试写一个小型的峰值测试,使用 API 但只使用你的笔记。如果您点击了您不记得的 API 的一部分,请返回到文档并更新您的笔记。
最后,如果 API 很难使用,我会考虑使用一个简单的 API 来“包装”它,它只做我需要的东西,所以我可以忘记它。
如果这样不能学到 API,那么你应该考虑找一个不同的 API 来使用。如果 API 的作者告诉您“阅读代码”,则可能有另一个具有文档的项目。去使用该项目吧。如果你必须使用这个 API,那么考虑根据自己的代码来记录你的笔记,然后写一本书来卖,从作者的懒惰中赚钱。
挑战练习
您将以这种方式学习sqlite3API,然后尝试编写自己的数据库简化 API。请记住,DB API 2.0 已经是一个不错简单的 AP,用于访问数据库I,所以你只需练习包装一个糟糕的 API。您的目标应该是充分学习
sqlite3API,然后设计一种更简单的方法来访问它。
有时“简单”纯粹是主观的,或是根据当前的需要。你可以决定,你需要简化的东西,不是与 SQL 数据库通信的方式,而是你与 SQL 数据库通信的方式。如果您的应用程序只需要处理人员和宠物,那么您的简化可以仅仅是,制作一个仅适用于您的 API。
深入学习
阅读 Python 中其它数据库的 API。你可以阅读 Pyscopg PostgreSQL API,以及 MySQL Python 驱动。相关文章推荐
- Python:操作PostgreSQL数据库(使用DB API2.0)
- Python例程:使用adodbapi访问MSSQL数据库
- Python:操作PostgreSQL数据库(使用DB API2.0)
- SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法
- MS SQL Server 2000 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法
- 数据库-使用DataReader的简单实例(两种办法)
- 使用Twisted的adbapi操作数据库
- Windows下使用Python通过ODBC/ADO访问数据库
- Python例程:使用adodbapi存取二进制数据
- SQL Server 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法
- 每次重启Tomcat后,使用Hibernate修改数据库的记录都会导致以前记录被删除的解决办法。
- MySQLdb for Python使用指南/Python的数据库操作
- 遇到当试图还原 master 数据库时,必须以单用户模式使用 RESTORE DATABASE.的解决办法
- 如何直接使用ODBC提供的API来操作数据库呢?
- 转帖:MS SQL Server 2000 数据库使用备份还原造成的孤立用户和对象名‘xxx’无效的错误的解决办法
- NetBeans IDE 6.1 无法使用上下文帮助API的解决办法~
- 使用 python 操作 access 数据库
- 表正被别的用户或进程使用,数据库引擎无法锁定的解决办法
- python使用mysqldb连接数据库
- 在Python DB API中使用存储过程