您的位置:首页 > 编程语言 > Python开发

python mysql操作使用变量作为表名

2016-01-07 18:15 537 查看
使用python操作mysql数据库的时候,被一个问题困扰了好久,原因是数据库里面有个表按日期分的。也就是每天一个新表,数据在入库的时候,表名在python程序里面是一个变量,同时表里面字段有很多,本以为轻松愉快的就能解决,比如这样。

cur.execute("INSERT INTO table_%s VALUES(%s, %s, %s, %s, %s”,(date,v1,v2,v3,v4))

程序报错,原因是execute自动对变量转义了,表名变成这样 table_'20161017' 这样的格式,sql执行报错了。

本来以为要自己转义字段值的时候,突然想到,execute对变量转义的标志是以“,"号格式化字符串,所以尝试了下面这种写法

cur.execute("INSERT INTO table_%s" % date + " VALUES(%s, %s, %s, %s, %s”,(v1,v2,v3,v4))

问题解决~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: