之前使用%s没有加引号,直接使用?代替均报错
最后,debug发现,变量使用%s代替,一定要注意sql语句中为非数值类型,%s也需要加单引号!!!
代码块如下:
from pymysql import *
def select_data_mysql(year,process_unit,material_name,plan_type,quota_type):
#计划类型
conn = connect(host='10.11XX', port=3316, user='ps', password='pdms_dy', database='dys',
charset='utf8')
#创建游标
cur=conn.cursor()
#查询所需字段
#业务查询year、process_unit、material_name、plan_type、quota_type
sql_content="SELECT id,process_unit FROM t_pdms_pp_pm_plan_year WHERE YEAR =%s AND process_unit = %s AND material_name = '%s' AND plan_type = '%s' AND quota_type = '%s'"%(year,process_unit,material_name,plan_type,quota_type)
cur.execute(sql_content)
#获取所有数据
result=cur.fetchall()
#关闭cursor
cur.close()
#关闭connection
conn.close()
#查询结果是一个元祖,由于结果只有1条数据,就取第一条数据第一个字段
re=result[0][0]
print(re)
return re
if __name__ == "__main__":
select_data_mysql('2022',10,'石英砂','物料消耗计划','处理量')