python语法-MySQL数据库
综合案例:读取文件,写入MySQL数据库中
(项目数据见文章末参考内容)
解析:
sql代码如下:
create database pysql charset utf8;
use pysql;
select database();
create table orders(
order_date date,
order_id varchar(255),
money int,
province varchar(10)
);
读取数据和封装对象复用《面向对象》章节案例代码,python文件main.py修改为如下代码:
"""
SQL 综合案例,读取文件,写入MySQL数据库中
"""
from file_define import FileReader, TextFileReader, JsonFileReader
from data_define import Record
from pymysql import Connection
text_file_reader = TextFileReader("2011年1月销售数据.txt")
json_file_reader = JsonFileReader("2011年2月销售数据JSON.txt")
jan_data: list[Record] = text_file_reader.read_data()
feb_data: list[Record] = json_file_reader.read_data()
# 将2个月份的数据合并为1个list来存储
all_data: list[Record] = jan_data + feb_data
# 构建MySQL链接对象
conn = Connection(
host="localhost",
port=3306,
user="root",
password="******",
autocommit=True
)
# 获得游标对象
cursor = conn.cursor()
# 选择数据库
conn.select_db("pysql")
# 组织SQL语句
for record in all_data:
sql = f"insert into orders(order_date, order_id, money, province)" \
f"values('{record.date}', '{record.order_id}',{record.money}, '{record.province}')"
print(sql)
# 执行SQL语句
cursor.execute(sql)
# 关闭MySQL链接对象
conn.close()
案例结果如下:
参考内容:
参考数据(https://download.csdn.net/download/qq_45833373/87895996)
学习python基础第一阶段-有感而发
黑马程序员-python基础