MySQL写入数据失败,sql语句正确,控制台也不报错

总结原因如下:

1.首先确认SQL语句是否正确

     注:插入字符串时,values中的%s是需要加引号的,正确sql语句:

sql = "insert into test(id, name, sex) values(%d, '%s', '%s')" % (10, 'a', 'a')

2.数据表命名与mysql中关键字冲突

    例:order在MySQL中是关键字

3.执行完execute那一行语句以后,要记得写commit语句哦

def insert_sql():
    num = 0
    for line in read_txt(bl):
        num = num + 1
        id = num
        name = line
        sex= ''
        sql = "insert into test(id, name, sex) values(%d, '%s', '%s')" \
              % (id, name, sex)
        cursor.execute(sql)
    cursor.connection.commit()  # 执行commit操作,插入语句才能生效

4.数据库连接及时关闭(没遇到过)

5.数据库字段是否够长

猜你喜欢

转载自blog.csdn.net/sinat_40641604/article/details/103452999