要在Python中操作DB2数据库,你可以使用IBM提供的 ibm_db 或 ibm_db_sa 包。以下是基本的步骤:
pip install ibm_db
import ibm_db
conn_str = "DATABASE=
请替换
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 是你想要查询的表名。
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 是你表中的列名。
ibm_db.close(conn)
请确保在使用密码等敏感信息时采取适当的安全措施,例如使用配置文件或环境变量。另外,建议使用上下文管理器或 try/finally 块来确保在发生错误时正确关闭数据库连接。
安装ibm_db和pandas请参考:Linux Centos7安装python3.7和安装pykmip-CSDN博客
#_*_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