python多线程 mysql 查询
时间: 2023-11-25 11:51:21 浏览: 107
在Python中,可以使用`threading`模块来实现多线程编程。同时,可以使用`pymysql`模块来连接MySQL数据库并进行查询操作。下面是一个简单的示例代码:
```python
import threading
import pymysql
# 定义线程类
class QueryThread(threading.Thread):
def __init__(self, sql):
threading.Thread.__init__(self)
self.sql = sql
def run(self):
# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', db='test')
cursor = conn.cursor()
# 执行查询语句
cursor.execute(self.sql)
result = cursor.fetchall()
print(result)
# 关闭连接
cursor.close()
conn.close()
# 创建线程并启动
sql1 = "SELECT * FROM table1"
sql2 = "SELECT * FROM table2"
thread1 = QueryThread(sql1)
thread2 = QueryThread(sql2)
thread1.start()
thread2.start()
```
上述代码中,我们定义了一个`QueryThread`类,该类继承自`threading.Thread`类,并重写了`run`方法。在`run`方法中,我们首先连接到MySQL数据库,然后执行查询语句,并将结果打印出来。最后,关闭数据库连接。
在主程序中,我们创建了两个线程,并分别传入不同的查询语句。然后,启动这两个线程。
阅读全文