Truda.
2019-03-04 23:00
采纳率: 63.6%
浏览 1.2k
已采纳

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
    已采纳

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

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • hdfgh007 2019-03-05 09:40

    代码错误,可以尝试重新编辑一下

    评论
    解决 无用
    打赏 举报
  • Ice_bling 2019-03-05 18:57

    我觉得是你没有关闭游标的原因

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题