前言:本人通过学习武沛齐老师在b站的“最新Python的web开发全家桶(django+前端+数据库)”
记录自己学习历程并分享给大家。30 案例:Flask+前端+MySQL整合_哔哩哔哩_bilibili
一. 在终端创建数据库
1.连接数据库:net start mysql8034
2.登录数据库:mysql -u root -p
3.创建数据库:create database unicom;
二. pycharm创建结构表
import pymysql # 导入库
# 1.打开数据库连接,参数1:主机名或IP;参数2:用户名;参数3:密码;参数4:数据库名
db = pymysql.connect(host="localhost", user="root", password="123456", db="unicom")
# 2.使用 cursor() 方法创建一个游标对象 cursor相当于查询工具吧
cursor = db.cursor()
# 3.使用 execute() 方法执行 SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS admin") # 如果有admin的表存在则删除以前的
# 4.使用预处理语句创建表
sql = """
create table admin(
id int not null auto_increment primary key,
username varchar(16) not null,
password varchar(64) not null,
mobile char(11) not null
) default charset=utf8;
"""
# 5.执行SQL语句
cursor.execute(sql) # 游标执行(我设计的表)
# 6.关闭数据库连接
db.close()
三. pycharm创建数据(增)
import pymysql
while True:
user = input("用户名:")
if user.upper() == 'Q':
break
pwd = input("密码:")
mobile = input("手机号:")
# 1.连接MySQL
conn = pymysql.connect(host="localhost", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
# 2.创建一个游标
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) # 使用 cursor() 方法创建一个游标对象 cursor相当于查询工具吧
# 这是直接增加数据的代码
# cursor.execute("insert into admin(username,password,mobile)values ('si yuan','123456','181888888888')")
# 3.发送指令(千万不要用字符串格式化去做SQL的拼接,安全隐患SQL注入)
sql = "insert into admin(username,password,mobile) values(%s,%s,%s)" # 添加在admin表格(数据)
# 4.提交事务游标执行
cursor.execute(sql, [user, pwd, mobile])
conn.commit() # 出错时回滚
# 5.关闭
cursor.close() # 关闭游标
conn.close() # 关闭数据库连接
四. pycharm删除数据(删)
import pymysql
# 1.连接MySQL
conn = pymysql.connect(host="localhost", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
# 2.创建游标
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
# 3.游标执行(删除 admin 表格中id==4的)
cursor.execute("delete from admin where id=%s", [4, ])
conn.commit() # 回滚
# 3.关闭
cursor.close() # 关闭游标
conn.close() # 关闭数据库
五. pycharm更改数据(改)
import pymysql
# 1.连接MySQL
conn = pymysql.connect(host="localhost", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
# 2.创建游标
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
# 3.游标执行修改 admin (表格中id==4的)
cursor.execute("update admin set mobile=%s where id=%s", ["1888888888", 4, ])
conn.commit() # 回滚
# 4.关闭
cursor.close()
conn.close()
六. pycharm查询数据(查)
import pymysql
# 1.连接MySQL
conn = pymysql.connect(host="localhost", port=3306, user='root', passwd="123456", charset='utf8', db='unicom')
# 2.创建游标
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
# 3.游标执行(查找 admin 表格中 id > 2 的)
cursor.execute("select * from admin where id > %s", [2, ])
# 4.获取符合条件的第一条数据
res = cursor.fetchone() # 游标执行返回单个的元组,也就是一条记录(row),如果没有结果则返回 None。
print(res) # 查看
# 5.关闭连接
cursor.close() # 关闭游标
conn.close() # 关闭数据库连接