0
我正在嘗試編寫調用mysql SQL的python腳本。在腳本中執行SQL的Python腳本
我依靠第一個查詢結果來運行第二個查詢。問題是它拋出錯誤。
錯誤:cursor2.execute(field_sql,ID)
import boto3
import importlib
import psutil
import pymysql
import pymysql.cursors
import subprocess
import sys
rdsConn = pymysql.connect(host = 'XXXX'),
db = 'XXXX',
user = 'XXXX',
password = 'XXXX',
charset = 'utf8mb4',
cursorclass=pymysql.cursors.DictCursor)
cursor1 = rdsConn.cursor()
cursor2 = rdsConn.cursor()
name = 'Test'
sql = "select id from Table1 where name = %s"
cursor1.execute(sql,name)
result = cursor1.fetchall()
for id in result:
field_sql= "select columnname from Table2 where id = %s"
cursor2.execute(field_sql,id)
fieldresult = cursor2.fetchall()
for fieldrow in fieldresult:
print(fieldrow)
cursor1.close()
cursor2.close()
rdsConn.close()
什麼錯誤到底是什麼?請發佈堆棧跟蹤。 – mata
您是否嘗試過查看從第一個查詢中獲得的結果?它返回一個字典,所以你的for循環將遍歷鍵,但也許你想要的值? –