Python mySQLdb将数据发布到动态表

时间:2015-05-13 13:20:48

标签: python mysql-python

我正在尝试将数据发布到表中名称为变量的表中,我没有收到错误,但是没有数据发布。

cursor = db.cursor()
cursor.execute('DROP TABLE IF EXISTS %s' %data[1])

0L

sql ="""CREATE TABLE %s  (IP TEXT, AVAILIBILITY INT)""" %data[1]
cursor.execute(sql)
0L

for key in data[0]:
    print type(key), type(data[0][key])
    sql = """INSERT INTO %s VALUES (%s,%s)""" %(data[1],key,data[0][key])

1 个答案:

答案 0 :(得分:0)

您的代码永远不会执行**EDIT** JSFIDDLE 语句;它只定义一个字符串INSERT。您需要在循环内添加sql调用。

即使您无法对某个部分(如表格或列名称)进行参数化,您也应该尽可能地参数化您的查询。我建议在这里使用advanced string formatting以避免转义参数化占位符。

如果你以这种方式开始编写,你可能更容易注意到缺失的行:

cursor.execute