import config
import pandas as pd
import pymysql
username = config.username
dbpassword = config.dbpassword
dbhost = config.dburl
engine = pymysql.connect(host=dbhost, port=3306,user=username,password=dbpassword,db='db',autocommit=True)
tableBuilder1='''SELECT b.`IssueId` AS `Id`, b.`ShortId` AS `ShortId`, b.`Path` AS `Path`, b.`Data` AS `Data`, b.`Actual Create Date` AS `Actual Create Date` FROM `SIM_FE_Audit_Data` b WHERE b.`Data` IN ( 'Open', 'Comment', 'Pending Others', 'Work in Progress', 'Resolved') AND NOT b.`IssueId` IN (SELECT c.`IssueId` FROM `SIM_FE_Audit_Data` c WHERE b.`Actual Create Date` = c.`Actual Create Date` AND b.`Data` = 'Comment' AND c.`Data` = 'Open') ORDER BY b.`IssueId`, b.`Actual Create Date`'''
df = pd.read_sql(tableBuilder1, con=engine)
df.to_sql('SIM_FE_Audit_Durations_No_First_Comment', con=engine, if_exists='replace',index=False)
Приведенный выше код разрабатывается с целью замены представлений, поскольку представления, отрисовываемые более 15 минут, вызывают сбои панелей мониторинга таблиц. Эта первая часть состоит в том, чтобы сделать первую таблицу из серии 3. Однако в настоящее время я получаю ошибку DatabaseError: Execution failed on sql 'SELECT name FROM sqlite_master WHERE type='table' AND name=?;': not all arguments converted during string formatting
на df.to_sql, и я не могу понять, почему я получаю эту ошибку. Я сделал печать (df), чтобы убедиться, что он читает sql, и это так. Запись его в новую таблицу вызывает ошибку, и я не понимаю, почему.