批量更新MySql數據

def update_uid(self):
    """
    3.修改更新uid
    :rtype: object
    """
    lon_list = []
    update_str = ""
    for i in range(10000):
        try:
            lon, uids = self.r.get('mysql_field')
        except:
            break
        update_str += "WHEN {} THEN '{}' ".format(lon, uids)
        lon_list.append(lon)

    sql1 = """
           UPDATE {}
              SET uid = CASE lon

              {}
              END
      """.format(self.mysql_collection, update_str)
    print("這是分割線")
    print(lon_list, 22222222222222222222)
    sql2 = """WHERE {} IN {}""".format('lon', tuple(lon_list))
    sql = sql1 + sql2
    print(sql)
    with self.connection_mysql.cursor() as cursor:
        cursor.execute(sql)
    self.connection_mysql.commit()
    print("批量更新數據成功")
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章