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中文网!

Posted in 未分类

发表评论