Python 连接 MySQL 数据库基础操作与银行管理系统实战
本文详细介绍如何使用 Python 的 PyMySQL 库连接 MySQL 数据库,涵盖环境配置、连接建立、游标操作及增删改查流程。并通过一个完整的银行管理系统项目示例,演示账户登录验证、余额查询、存款取款等核心功能的实现逻辑。
一、环境准备与安装
在使用 PyMySQL 之前,需要确保已安装 Python 环境,并通过 pip 安装对应的驱动包。
pip install pymysql
二、数据库基础用法
1. 连接数据库与创建库
首先需要引入 pymysql 模块,建立与服务器的连接。连接成功后,创建一个游标对象(Cursor)来执行 SQL 语句。
import pymysql
# 连接数据库
# host: 主机地址,user: 用户名,password: 密码,charset: 字符集
db = pymysql.connect(
host='localhost',
user='root',
password='1234',
charset='utf8'
)
# 创建一个游标对象(相当于指针)
cursor = db.cursor()
# 执行创建数据库语句
cursor.execute('create schema wzg default charset=utf8;')
cursor.execute('show databases;')
# fetchone 获取一条数据(元组类型)
print(cursor.fetchone())
# fetchall 获取全部数据(字符串类型)
all_data = cursor.fetchall()
for i in all_data:
print(i[0])
# 关闭游标和数据库连接
cursor.close()
db.close()
2. 创建表并插入数据
在选定数据库中创建表结构,并使用 try-except-finally 块处理异常,确保资源释放。
import pymysql
# 连接数据库,并打开 wzg 数据库
db = pymysql.connect(
host='localhost',
user='root',
password='1234',
charset='utf8',
db='wzg'
)
cursor = db.cursor()
try:
# 创建 student 表
sql = '''create table student(
SNO char(10),
SNAME varchar(20) NOT NULL,
SSEX varchar(1),
primary key(SNO)
) default charset=utf8;'''
cursor.execute(sql)
insert_sql =
cursor.execute(insert_sql)
db.commit()
cursor.execute()
all_data = cursor.fetchall()
i all_data:
(i)
Exception e:
()
db.rollback()
:
cursor.close()
db.close()

