【python 3.6】python讀取json數據存入MySQL(一)


 

 

整體思路:

1,讀取json文件

2,將數據格式化為dict,取出key,創建數據庫表頭

3,取出dict的value,組裝成sql語句,循環執行

4,執行SQL語句

 

#python 3.6
# -*- coding:utf-8 -*-
__author__ = 'BH8ANK'

import json
import pymysql


conn = pymysql.connect(
        host = 'localhost',#mysql服務器地址
        port = 3306,#端口號
        user = 'root',#用戶名
        passwd = 'xxxxxx',#密碼
        db = 'xdb',#數據庫名稱
        charset = 'utf8',#連接編碼,根據需要填寫
    )
cur = conn.cursor()#創建並返回游標

#創建表頭
sql = "CREATE TABLE daxue (code  VARCHAR(32),charge  VARCHAR(100),level VARCHAR(100),name VARCHAR(100),remark VARCHAR(100),prov VARCHAR(100));"

cur.execute(sql)#執行上述sql命令
a = open(r"D:\alldata.json", "r",encoding='UTF-8')
out = a.read()
tmp = json.dumps(out)
tmp = json.loads(out)
num = len(tmp)
i = 0
while i < num:
    code = tmp[i]['code']
    charge = tmp[i]['charge']
    level = tmp[i]['level']
    name = tmp[i]['name']
    remark = tmp[i]['remark']
    prov = tmp[i]['prov']
    value = [code,charge,level,name,remark,prov]
    sql_insert = "insert into daxue (code,charge,level,name,remark,prov) values (" + "'"+code+"'" +","+ "'"+charge+"'" + ","+"'"+level+"'" + ","+"'"+name+"'" + ","+"'"+remark+"'" + ","+"'"+prov+"'" + ");"
    # sql_insert =("insert into daxue (code,charge,level,name,remark,prov) values (%s,%s,%s,%s,%s,%s);",value)
    # sql_insert = sql_insert.encode("utf8")
    print(sql_insert)

    cur.execute(sql_insert)  # 執行上述sql命令
    i = i+1

# print(num)
conn.commit()
conn.close()

 

執行后效果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM