各位大神好,我是python菜鸟一枚~~以前只用来做计算,现在准备学习下开发简单的python项目,现在遇到一个问题(可能很水,请轻拍 T_T)
问题如下:
读文件,解析,然后写入表中。
问题出在最后一个环节,通过list传参,得到要执行的sql脚本中的字段有引号,mysql创建表失败,
主要代码如下:
sqlStr_create = '''
CREATE TEMPORARY TABLE temTB(
%s INT UNSIGNED AUTO_INCREMENT,
%s INT UNSIGNED,
%s VARCHAR(50),
%s VARCHAR(30),
%s VARCHAR(50),
%s VARCHAR(30),
%s INT,
%s VARCHAR(10),
%s varchar(10),
%s varchar(30),
%s INT,
%s varchar(20),
%s INT,
%s INT,
%s INT,
%s INT,
%s varchar(20),
%s varchar(20),
PRIMARY KEY ( %s )
)ENGINE=MEMORY DEFAULT CHARSET=utf8;
'''
tem_list = ['id', 'age', 'job', 'marital', 'education', 'default', 'balance', 'housing', 'loan', 'contact', 'day', 'month', 'duration', 'campaign', 'pdays', 'previous', 'poutcome', 'y', 'id']
cursor.execute(sqlStr_create, tem_list)
报错信息如下:
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''id' INT UNSIGNED AUTO_INCREMENT,n 'age' INT UNSIGNED,n 'job' VARCHAR(50),n ' at line 2"))
CREATE TEMPORARY TABLE temTB(
)