python 用 pymysql 向數據表插入數據


一、 加載庫、封裝函數

import pandas as pd import pymysql def mycursor(db_name=None): '''連接數據庫,創建游標''' config = dict(zip(['host', 'user', 'port', 'password'], ['192.168.137.155', 'shanger', 3306, '0123'])) config.update(database=db_name) connection = pymysql.connect(**config) cursor = connection.cursor() return cursor def use(db_name): '''切換數據庫,返回游標'''
    return mycursor(db_name) def insert_many(table, data): '''向全部字段插入數據''' val = '%s, ' * (len(data[0])-1) + '%s' sql = f'insert into {table} values ({val})' cursor.executemany(sql, data) cursor.connection.commit() def query(sql): '''以數據框形式返回查詢據結果''' cursor.execute(sql) data = cursor.fetchall()  # 以元組形式返回查詢數據
    header = [t[0] for t in cursor.description] df = pd.DataFrame(list(data), columns=header)  # pd.DataFrem 對列表具有更好的兼容性
    return df
def select_database(): '''查看當前數據庫''' sql = 'select database();' return query(sql) def show_tables(): '''查看當前數據庫中所有的表''' sql = 'show tables;' return query(sql) def select_all_from(table): sql = f'select * from {table};' return query(sql)

 

二、插入數據

1、選則數據庫、查看數據

 

 2、插入數據

data = [ ('德島', '100'), ('香川', '200'), ('愛媛', '150'), ('高知', '200'), ('福岡', '300'), ('佐賀', '100'), ('長崎', '200'), ('東京', '400'), ('群馬', '50')] insert_many('poptbl', data) select_all_from('poptbl')

 

 


免責聲明!

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



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