Python 可以连接 DB2 数据库,组合多个 schema 同时可以查询一个sql语句
时间: 2024-04-17 18:26:56 浏览: 160
是的,Python 可以连接 DB2 数据库,并且可以组合多个 schema 来同时查询一个 SQL 语句。以下是一个示例代码:
```python
import ibm_db
# 连接到 DB2 数据库
conn = ibm_db.connect("DATABASE=db_name;HOSTNAME=host_name;PORT=port;PROTOCOL=TCPIP;UID=username;PWD=password;", "", "")
# 切换到第一个 schema
stmt = ibm_db.exec_immediate(conn, "SET SCHEMA schema1")
# 执行包含多个 schema 的查询
query = """
SELECT t1.column1, t2.column2
FROM schema1.table1 AS t1
JOIN schema2.table2 AS t2 ON t1.id = t2.id
WHERE t1.column3 = 'value'
"""
stmt = ibm_db.exec_immediate(conn, query)
# 获取查询结果
while ibm_db.fetch_row(stmt):
column1_value = ibm_db.result(stmt, "COLUMN1")
column2_value = ibm_db.result(stmt, "COLUMN2")
print(f"Column1: {column1_value}, Column2: {column2_value}")
# 关闭连接
ibm_db.close(conn)
```
在上面的示例中,我们将 `SET SCHEMA` 语句用于切换到第一个 schema,然后在查询语句中使用了两个 schema 的表(`schema1.table1` 和 `schema2.table2`)。你可以根据你的具体情况修改 schema 名称和表名,并根据需要执行适当的查询操作。
阅读全文