Truda. 2019-03-04 23:00 采纳率: 0%
浏览 1320
已采纳

python写入数据到mysql数据缺失

python写入数据到mysql数据缺失

使用以下代码循环写入数据到mysql
数据总是丢失非常多,到底是怎么回事?


import pymysql


# 打开数据库连接
db = pymysql.connect("localhost", "root", "password", "kecheng")
cursor = db.cursor()

# 使用 execute() 方法执行 SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")


def jian(tablename):
    # 使用预处理语句创建表
    sql1 = """CREATE TABLE %s (
            id TINYINT NOT NULL AUTO_INCREMENT KEY,
            monday CHAR(20) NOT NULL,
            tuesday CHAR(20) NOT NULL,
            wednesday CHAR(20) NOT NULL,
            thursday CHAR(20) NOT NULL,
            friday CHAR(20) NOT NULL,
            saturday CHAR(20) NOT NULL,
            sunday CHAR(20) NOT NULL )""" % tablename

    cursor.execute(sql1)


def charu(tablename, li):
    # SQL 插入语句
    sql2 = """INSERT INTO %s(id, monday,
             tuesday, wednesday, thursday, friday, saturday, sunday)
              VALUES (null, '%s', '%s', '%s', '%s', '%s', '%s', '%s')""" % (tablename, li[0], li[1], li[2], li[3], li[4], li[5], li[6])

    try:
        cursor.execute(sql2)
        db.commit()
    except:
        db.rollback()

  • 写回答

3条回答 默认 最新

  • Truda. 2019-03-07 11:07
    关注

    找到原因了,是因为字段长度不够,导致插入失败

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?