设为首页 收藏本站
查看: 970|回复: 0

[经验分享] Python DB-API入门

[复制链接]

尚未签到

发表于 2017-4-24 07:38:49 | 显示全部楼层 |阅读模式
Python DB-API
DB-API 是一个规范. 它定义了一系列必须的对象和数据库存取方式, 以便为各种各样的底层数据库系统和多种多样的数据库接口程序提供一致的访问接口
Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式操作各数据库。
目前Python支持几乎所有的平台,它支持的主要数据库如下:
Oracle,My Sql Server
MySql,Sqlite,PostgreSQL,Gadfly
JDBC,ODBC
备注:Python具体支持的数据库可查看http://wiki.python.org/moin/DatabaseInterfaces
我目前有接触过的数据库有MySQL和Sqlite
1.MySQL
对应的接口 MySQLdb。MySQL的数据库接口,需要下载安装后才能使用。
2.Sqlite3
对应的接口 Sqlite3。Sqlite3已内置到Python中,可以直接使用。
以下是对这两种数据库操作的示例代码
#--------------------------------------------
#导入MySQL数据库接口
import MySQLdb
#连接MySQL数据库,参数依次为MySQL服务器地址,用户名,密码,默认打开的数据库名
cxn = MySQLdb.connect('host','root','root','test')
#创建游标
cur = cxn.cursor()
#数据库操作
cur.execute('CREATE TABLE users(login VARCHAR(8), uid INT)')
cur.execute("INSERT INTO users VALUES('abc', 001)")
#查看数据库表并打印查询结果
cur.execute("SELECT * FROM users WHERE login LIKE 'j%'")
for data in cur.fetchall():
print '%s\t%s' % data
#关闭游标和数据库连接
cur.close()
cxn.commit()
cxn.close()
#--------------------------------------------
#导入sqlite数据库接口
import sqlite3
cxn = sqlite3.connect('./test') #使用Sqlite数据库的绝对路径即可
cur = cxn.cursor()
#其他的操作与MySQL相同

备注:DB-API的官方文档 http://python.org/topics/database

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-368347-1-1.html 上篇帖子: python http客户端 下篇帖子: python数据库装饰器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表