使用 PyMySQL 将数据插入 MySQL 中的 table

Inserting data into a table in MySQL with PyMySQL

我尝试将一些数据插入 table 中,如下所示,但它对我不起作用。

import pymysql

conn = pymysql.connect(host='localhost', user='root', password='1234', charset='utf8', db='kobis')
cur = conn.cursor()

sql = """insert into 'boxoffice' (targetDt, rank, rankOldAndNew, 
                                  movieCd, movieNm, salesAmt, audiCnt)
         values (%d, %d, %s, %d, %s, %d, %d) % cur.execute(sql, 
                   (20180220,11,'OLD',20170511,'Conan',36388900,48011))
    """

conn.commit()

在运行这段代码之后没有出现任何错误信息,但是我尝试插入的新数据根本没有出现在table 'boxoffice'中...

有没有人有解决这个问题的好主意?

您需要执行您的 sql,您错过了那一行:

import pymysql

conn = pymysql.connect(host='localhost', user='root', password='1234', charset='utf8', db='kobis')
cur = conn.cursor()

sql = """insert into `boxoffice` (targetDt, rank, rankOldAndNew, 
                                  movieCd, movieNm, salesAmt, audiCnt)
         values (%s, %s, %s, %s, %s, %s, %s) 
    """
cur.execute(sql,(20180220,11,'OLD',20170511,'Conan',36388900,48011))
conn.commit()

编辑 你的 cur.execute() 在 sql 字符串里面,所以它什么都不做