编写一段python代码,连接DB2数据库,并执行查询sql
时间: 2024-02-04 10:01:41 浏览: 25
以下是连接DB2数据库并执行查询SQL的Python代码示例:
```python
import ibm_db
# 连接数据库
conn_str = "DATABASE=database;HOSTNAME=hostname;PORT=port;PROTOCOL=TCPIP;UID=username;PWD=password;"
conn = ibm_db.connect(conn_str, "", "")
# 执行查询SQL
sql = "SELECT * FROM table"
stmt = ibm_db.exec_immediate(conn, sql)
# 获取查询结果
result = ibm_db.fetch_assoc(stmt)
while result:
print(result)
result = ibm_db.fetch_assoc(stmt)
# 断开数据库连接
ibm_db.close(conn)
```
请将 `database`、`hostname`、`port`、`username`、`password` 和 `table` 替换为实际的数据库连接信息和查询SQL语句。该示例代码使用 `ibm_db` 模块连接DB2数据库,并执行查询SQL语句,将查询结果以字典形式输出。
相关问题
python连接DB2数据库并查询
首先,需要安装 Python 的 DB2 驱动程序,可以使用 IBM 提供的 ibm_db 库。
安装 ibm_db 库:
```
pip install ibm_db
```
然后,连接 DB2 数据库并执行查询:
```python
import ibm_db
# 连接到 DB2 数据库
conn_str = "DATABASE=<database_name>;HOSTNAME=<hostname>;PORT=<port>;PROTOCOL=TCPIP;UID=<username>;PWD=<password>;"
conn = ibm_db.connect(conn_str, "", "")
# 准备 SQL 查询语句
sql = "SELECT * FROM <table_name>"
# 执行查询
stmt = ibm_db.exec_immediate(conn, sql)
# 获取查询结果
result = ibm_db.fetch_assoc(stmt)
while result != False:
print(result)
result = ibm_db.fetch_assoc(stmt)
# 关闭数据库连接
ibm_db.close(conn)
```
其中,需要将 `<database_name>`、`<hostname>`、`<port>`、`<username>`、`<password>`、`<table_name>` 替换为实际的值。
注意:使用 ibm_db 库需要在系统中安装 IBM Data Server Client 或 IBM Data Server Runtime Client。
python连接数据库并执行sql 代码
连接MySQL数据库并执行SQL语句的Python代码如下:
```python
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="yourdatabase"
)
# 执行SQL语句
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM yourtable")
# 获取结果
myresult = mycursor.fetchall()
for x in myresult:
print(x)
```
其中,`host`是数据库的主机名,`user`和`password`是登录数据库的用户名和密码,`database`是要连接的数据库名。`mycursor.execute()`方法可以执行任何有效的SQL语句,例如`SELECT`、`UPDATE`、`DELETE`等,可以根据具体的需求进行修改。`mycursor.fetchall()`方法可以获取SQL语句执行的结果集,可以对结果集进行遍历或其他处理。