数据库

Python如何连接DB2数据库?

2020-07-14 16:32:42 | 来源:中培企业IT培训网

今天我们来探讨下Python如何连接DB2数据库。DB2是IBM在美国开发的一组关系数据库管理系统。它的主要操作环境是UNIX(包括IBM自己的AIX),Linux,IBM i(以前称为OS/400),z/OS和Windows服务器版本。在工作中遇到了这种情况,该项目需要连接到IBM的关系数据库(DB2),在这方面的数据库相对较少,因此关于这方面数据库的知识也并不多。其中,ibm_db是一个相对易于使用的库。Internet上有一些教程,但这说的不是很准确,而且也不详细,到处都是错误,没有办法只能在获得源代码之后对其进行分析,然后最终将其完成。

  安装

环境需求:

首先是数据库DB2,下载连接直接百度,我下载是这两个文件:

只下载箭头所指即可,我还没在linux上做测试。

数据库API(这个东西找了好久,终于找到了合适的)(找不到搜:SQLAPI.zip)

  Python2.7

VCForPython2.7

ibm_db(主要的库,在安装中会下载ntx64_odbc_cli库,安装时会检测 IBM_DB_HOME 变量,所以需要安装数据库后再安装ibm_db)

以上模块在网上都可以找到,请自行下载安装。

建库

数据库安装好之后新建一个实例,默认是DB2,然后创建一个新的数据库,我创建的MYTEST(在操作数据库以及链接数据库需注意大小写),命令行方法:

打开命令行处理器:(管理员身份)

输入?直接回车,会显示命令列表,开启数据库管理器:

然后关闭就好,建立数据库以及创建表还是使用db2 data studio,比较方便,安装时在根目录创建一个临时目录,把文件解压进去,之后再修改install.exe的属性,改成兼容Windows 7运行,同时使用管理员权限打开,之后就是安装安装好之后点击左侧新建一个数据库。

按以上方式填写,用户名和密码使用安装数据库时设置的用户名密码。

实例配置好并且能测试成功就可以创建数据库了。

数据库名称和别名写上即可,其余的由于是测试就不填了,等正式环境在考察下性能优化方面的配置。点击运行创建,过程有点慢,不知道是不是机器配置原因,大概花了十几分钟。

下面就不详细说建表的过程了,值需注意,建表前先简历模式(Schema),使用自定义模式建表。

连接

连接直接导入库

导入ibm_db_dbi即可。

import ibm_db_dbi

conn = ibm_db_dbi.connect(“PORT=50000;PROTOCOL=TCPIP;”, host=db[“hot”], database=db[“database”], user=db[“user”],

password=db[“passwd”])

conn.set_autocommit(True)

cursor = conn.cursor()

连接数据库,设置自动提交

  查询

3sql = “select * from testable”

result = cursor.execute(sql)

注意,以上查询方式是错的。正确如下:

4sql = “select * from MYSCHEMA.TESTTABLE”

result = cursor.execute(sql) rows = cursor.fetchall()

这里的操作和MySQL没什么差别了。

插入

3sql = “insert into MYSCHEMA.TESTTABLE (“uuid”, “content”) values (‘%s', %s)” % (“1234567890”, “asdfghjkl”)

result = cursor.execute(sql)

  更新

5sql =“update ”MYSCHEMA”.”TESTTABLE ” set ”content”=‘%s' where ”uuid” = ‘%s'” % (“aaa”, “1234567890”)

result = cursor.execute(sql)

如果操作成功,result就是True,注意每个语句的引号,单双必须按以上的方式。

以上就是Python如何连接DB2数据库的全部内容了,想了解更多关于DB2数据库的信息,请继续关注中培教育。

标签: DB2 数据库

预约领优惠