zoukankan      html  css  js  c++  java
  • python插入数据库数据时,报错%d format: a number is required, not str

    python使用pymysql连接数据库,如果报错  %d format: a number is required, not str,直接把类型改为  %r,表示不管什么类型的字段,原样输出

    例如,我的数据表字段第一个示int类型,插入数据时,我把第一个字段设置为%d,死活都报错,最后改为%r,问题解决,真的是浪费时间啊.............................................................................

    if __name__ == '__main__':
    with MyConnectionPool() as db:
    db.cursor.execute("select * from review")
    db.conn.commit()
    for row in db.cursor.fetchall():
    print("nid:%d created_at:%s content:%s source:%s" % row)

    insert_sql = "insert into review (nid,created_at,content,source) VALUES (%r,%s,%s,%s)"
    insert_data = [(11,"2020.12.28","内容1","中国"),(22,"2020.12.29","2内容","riben")]
    # db.cursor.executemany(insert_sql,insert_data)
    with MyConnectionPool() as db:
    db.cursor.executemany(insert_sql,insert_data)
    db.conn.commit()
    for row in db.cursor.fetchall():
    print("nid:%d created_at:%s content:%s source:%s" % row)
  • 相关阅读:
    collections模块整理
    jQuery 事件
    前端开发问题点
    无线wifi
    MySQL 数据库--SQL语句优化
    MySQL 数据库--索引原理与慢查询优化
    MySQL 数据库--内置功能
    MySQL 数据库--权限管理
    MySQL -Naivacat工具与pymysql模块
    MySQL 数据库 -- 数据操作
  • 原文地址:https://www.cnblogs.com/realizetomoney/p/14203648.html
Copyright © 2011-2022 走看看