Python(31):Python3.7操作DB2数据库工具类

Python(31):Python3.7操作DB2数据库工具类

Python3.7操作DB2数据库

要在Python中操作DB2数据库,你可以使用IBM提供的 ibm_db 或 ibm_db_sa 包。以下是基本的步骤:

1、安装 ibm_db 包

pip install ibm_db

2、连接到DB2数据库

import ibm_db

conn_str = "DATABASE=;HOSTNAME=;PORT=;PROTOCOL=TCPIP;UID=;PWD=;" conn = ibm_db.connect(conn_str, "", "")

请替换 , , , , 分别为你的数据库名称、主机名、端口号、用户名和密码。

3、执行SQL语句

stmt = ibm_db.exec_immediate(conn, "SELECT * FROM your_table")

result = ibm_db.fetch_assoc(stmt)

while result:

print(result)

result = ibm_db.fetch_assoc(stmt)

这里的 your_table 是你想要查询的表名。

4、插入数据

insert_query = "INSERT INTO your_table (column1, column2) VALUES (?, ?)"

stmt = ibm_db.prepare(conn, insert_query)

data_to_insert = ('value1', 'value2')

ibm_db.execute(stmt, data_to_insert)

这里的 your_table 是你表名。

这里的 column1, column2 是你表中的列名。

5、关闭连接

ibm_db.close(conn)

请确保在使用密码等敏感信息时采取适当的安全措施,例如使用配置文件或环境变量。另外,建议使用上下文管理器或 try/finally 块来确保在发生错误时正确关闭数据库连接。

安装ibm_db和pandas请参考:Linux Centos7安装python3.7和安装pykmip-CSDN博客
 

Python3.7操作DB2数据库工具类

1、db2utils.py

#_*_coding:utf-8_*_

import ibm_db

import os


class DB2utils(object):
    os.environ['NLS_LANG'] = 'zh_CN.UTF8'

    def __init__(self, DATABASE, HOSTNAME, PORT,USER_NAME,PWD):
        self.DATABASE = DATABASE
        self.HOSTNAME = HOSTNAME
        self.PORT = PORT
        self.USER_NAME = USER_NAME
        self.PWD = PWD
        self.conn_str=f"DATABASE={self.DATABASE};HOSTNAME={self.HOSTNAME};PORT={self.PORT};PROTOCOL=TCPIP;UID={self.USER_NAME};PWD={self.PWD};"
        #print(self.conn_str)

    def db2_insert(self,insert_sql):
        print(insert_sql)
        try:
            ibm_db_conn = ibm_db.connect(self.conn_str, "", "", charset='utf8', encoding='utf8')
            if ibm_db_conn

你可能感兴趣的:(python相关,数据库,python,开发语言)