python使用pymysql实现查询test表中id=1,3,5,7的path值,并将获取到的path存入列表当作工作目录,使用subprocess库,在之前获取到的path列表为工作目录下,依次执行D盘test文件夹中的x.exe这个执行程序
时间: 2023-05-22 14:01:29 浏览: 74
可以使用以下代码实现:
```python
import pymysql
import subprocess
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='password', database='test')
# 创建游标
cursor = conn.cursor()
# 查询id为1、3、5、7的path值
sql = "SELECT path FROM test WHERE id IN (1, 3, 5, 7)"
cursor.execute(sql)
# 获取查询结果
result = cursor.fetchall()
# 关闭游标和数据库连接
cursor.close()
conn.close()
# 将查询结果存入列表
path_list = [row[0] for row in result]
# 遍历path列表,依次执行x.exe程序
for path in path_list:
subprocess.run(['D:/test/x.exe'], cwd=path)
```
这段代码使用了pymysql库连接数据库,查询id为1、3、5、7的path值,并将结果存入列表中。然后使用subprocess库,在之前获取到的path列表为工作目录下,依次执行D盘test文件夹中的x.exe这个执行程序。
相关问题
python使用pymysql实现查询test表中id=1,3,5,7的path值,并将获取到的path存入列表当作工作目录,使用subprocess库,在之前获取到的path列表为工作目录下,依次执行x.exe这个执行程序
可以使用以下代码实现:
```python
import pymysql
import subprocess
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='password', database='test', charset='utf8mb4')
cursor = conn.cursor()
# 查询id为1、3、5、7的path值
ids = [1, 3, 5, 7]
paths = []
for id in ids:
sql = "SELECT path FROM test WHERE id=%s"
cursor.execute(sql, id)
path = cursor.fetchone()[0]
paths.append(path)
# 将获取到的path存入列表当作工作目录
for path in paths:
subprocess.Popen(['cd', path])
# 在之前获取到的path列表为工作目录下,依次执行x.exe这个执行程序
for path in paths:
subprocess.Popen(['x.exe'], cwd=path)
```
这段代码会先连接到名为test的数据库,然后查询id为1、3、5、7的path值,并将获取到的path存入列表当作工作目录。接着,使用subprocess库,在之前获取到的path列表为工作目录下,依次执行x.exe这个执行程序。
pymysql实现查询表test中id=1,2,4,7,10的path值,并将获取到的值存入列表
可以使用以下代码实现:
```python
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='password', database='test')
# 获取游标
cursor = conn.cursor()
# 查询表test中id=1,2,4,7,10的path值
ids = [1, 2, 4, 7, 10]
paths = []
for id in ids:
sql = "SELECT path FROM test WHERE id=%s"
cursor.execute(sql, id)
result = cursor.fetchone()
if result:
paths.append(result[0])
# 关闭游标和连接
cursor.close()
conn.close()
# 打印获取到的值
print(paths)
```
这段代码首先连接到名为test的数据库,然后获取游标。接着,使用循环查询表test中id为1、2、4、7、10的path值,并将结果存入列表中。最后,关闭游标和连接,并打印获取到的值。
阅读全文