sql ='insert into %s (%s) values (%s)'% (item.table, keys, values)
这一句已经将表,键,值。写成mysql命令
self.cursor.execute(sql, tuple(data.values()))
这句为什么后面又出现了 data.values()
values = ', '.join(['%s'] * len(mydict))
print(values)
%s, %s, %s, %s
values不是值,是字典长度数量的%
sql ='insert into %s (%s) values (%s)'% (item.table, keys, values)
假设item.table=table_name
sql ='insert into %s (%s) values (%s)'% ('table_name', keys, values)
print(sql)
输出
insert into table_name (id, thumb, title, url) values (%s, %s, %s, %s)
----------------------------------------------------------
self.cursor.execute(sql, tuple(data.values()))
看到下面这句,就明白了
self.cursor.execute(insert into table_name (id, thumb, title, url) values (%s, %s, %s, %s)
, tuple(data.values()))