xdy0426313 2020-07-30 12:44 采纳率: 0%
浏览 672

在学习flask时,往mysql批量插入数据时出现这样的错误: TypeError: %d format: a number is required, not NoneType

def load_data():
with open('cities.json', 'rb') as cities_json_file:
cities_json_str = cities_json_file.read()
cities_json = json.loads(cities_json_str)
# print(cities_json)
return cities_json

def insertCity(cities_json):
cities = cities_json.get('returnValue')
keys = cities.keys()

db = pymysql.Connect(host='localhost', port=3306, user='root', password='root', database='FlaskTpp', charset='utf8')
cursor = db.cursor()
if not cursor:
    print('数据仓库连失败')

# print(cities)
for key in keys:

    cursor.execute("INSERT INTO letter(letter) VALUE ('%s');" % key)
    db.commit()
    cursor.execute("SELECT letter.id FROM letter WHERE letter='%s'" % key)
    letter_id = cursor.fetchone()[0]

    cities_leter = cities.get(key)
    for city in cities_leter:

        c_id = city.get('id')

        c_parent_id = city.get('parentId')
        c_regionName = city.get('regionName')
        c_cityCpde = city.get('cityCpde')
        c_pinYin = city.get('pinYin')
        cursor.execute("INSERT INTO city_model (letter_id, c_id, c_parent_id, c_region_name, c_city_code, c_pinyin) VALUE (%d,%d,%d,'%s',%d,'%s');"%(letter_id,c_id,c_parent_id,c_regionName,c_cityCpde,c_pinYin))

        db.commit()

图片说明


  • 写回答

2条回答 默认 最新

  • jingluan666 2020-07-30 14:30
    关注

    sql="INSERT INTO city_model (letter_id, c_id, c_parent_id, c_region_name, c_city_code, c_pinyin) VALUE (%d,%d,%d,'%s',%d,'%s');"%(letter_id,c_id,c_parent_id,c_regionName,c_cityCpde,c_pinYin)

    print(sql)

    将sql打印出来就一目了然

    评论

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?