作者:洛丽塔珊珊_668 | 来源:互联网 | 2017-05-14 02:44
DB2是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBMi(旧称OS400)、zOS,以及Windows服务器版本。今天我们来探讨下如何使用Python连接DB2数据库
DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本。今天我们来探讨下如何使用Python连接DB2数据库
在工作中遇到了这样的情况,项目中需要连接IBM的关系型数据库(DB2),关于这方面的库比较稀少,其中 ibm_db 是比较好用的一个库,网上也有教程,但是好像不准确,也不太详细,错误百出,没办法只能拿到后自己分析源码,总算搞定。
安装
环境需求:
首先是数据库DB2,下载连接直接百度,我下载是这两个文件:
导入ibm_db_dbi即可。
import ibm_db_dbi
cOnn= ibm_db_dbi.connect(“PORT=50000;PROTOCOL=TCPIP;”, host=db[“host”], database=db[“database”], user=db[“user”],
password=db[“passwd”])
conn.set_autocommit(True)
cursor = conn.cursor()
连接数据库,设置自动提交
查询
sql = “select * from testable”
result = cursor.execute(sql)
注意,以上查询方式是错的。正确如下:
sql = “select * from MYSCHEMA.TESTTABLE”
result = cursor.execute(sql) rows = cursor.fetchall()
这里的操作和MySQL没什么差别了
这个地方被坑了好几个小时,T_T
插入
sql = “insert into MYSCHEMA.TESTTABLE (“uuid”, “content”) values (‘%s', %s)” % (“1234567890”, “asdfghjkl”)
result = cursor.execute(sql)
更新
sql = “update \”MYSCHEMA\”.\”TESTTABLE \” set \”content\” = ‘%s' where \”uuid\” = ‘%s'” % (
“aaa”, “1234567890”)
result = cursor.execute(sql)
如果操作成功,result就是True,注意每个语句的引号,单双必须按以上的方式。
以上就是本文给大家分享的使用Python连接DB2数据库的全部内容了,希望对小伙伴们能够有所帮助。
更多Python连接DB2数据库相关文章请关注PHP中文网!