pymysql学习使用
一、pymysql的安装
pip install pymysql
二、pymysql使用流程
1、建立数据库连接(db = pymysql.connect(…))
- 指定数据库
2、建立游标对象( c = db.cursor())
- 游标即是一个对象
- 可以通过游标去操作一些方法
3、游标方法:c.execute(“insert….”)
4、提交到数据库:db.commit()
- 针对对数据库的写操作
5、关闭游标对象:c.close()
6、断开数据库连接:db.close()
三、常用函数
1、db = pymysql.connect(参数列表)
- host:主机地址,本地就是localhost
- port:端口号,默认3306
- user:用户名
- password:密码
- database:库
- charset:编码方式,推荐使用utf-8
2、数据库连接对象(db)的方法
- db.commit()提交到数据库执行
- db.rollback()回滚
- cur = db.cursor()返回游标对象,用于执行具体的SQL命令
- db.close()关闭连接
3、游标对象(cur)的方法
- cur.execute(sql命令,[列表])执行sql命令
- cur.close()关闭游标对象
- curfetchone()获取查询结果集的第一条数据
- cur.fetchmany(n)获取n条记录
- cur.fetchall()获取所有记录
四、实例
1、写数据
"""
demo1.py
pymysql数据库的基本流程演示
"""
import pymysql
# 连接数据库
db = pymysql.connect(host='localhost',
port=3306,
password="caibo20000222",
user="root",
database="pymysql",
charset="utf8")
# 获取游标(操作数据库,执行sql语句)
cur = db.cursor()
# 执行sql语句
sql = "insert into demo1 values(2,'过往','一九年','化学');"
cur.execute(sql) # 执行
db.commit() # 将写操作提交,也可以多次写一同提交
# 关闭游标
cur.close()
# 关闭数据库
db.close()
import pymysql
db = pymysql.connect(host='localhost',
port=3306,
password="caibo20000222",
user="root",
database="pymysql",
charset="utf8")
# 获取游标(操作数据库,执行sql语句)
cur = db.cursor()
# 写数据库
try:
# 写sql语句
# 插入操作
id1 = int(input("请输入你的学号:"))
name = input("请输入你的姓名:")
gread = input("请输入你的年纪:")
z_y = input("请输入你的专业:")
sql1 = "insert into demo1 values(%s,%s,%s,%s);"
print(sql1)
cur.execute(sql1,[id1,name,gread,z_y])
db.commit()
except Exception as e:
db.rollback() # 退回到commit执行之前的数据库状态
print(e)
# 关闭游标
cur.close()
# 关闭数据库
db.close()
2、读取数据
import pymysql
db = pymysql.connect(host='localhost',
port=3306,
password="caibo20000222",
user="root",
database="pymysql",
charset="utf8")
# 获取游标(操作数据库,执行sql语句)
cur = db.cursor()
# 获取数据库数据
sql = "select * from demo1;"
cur.execute(sql) # 执行正确后通过cur调用数据库获取结果
# 获取一个查询结果
# one = cur.fetchone() # 元组
# print(one)
# tow = cur.fetchone()
# print(tow)
# 获取多个的查询结果
# many_row = cur.fetchmany(2)
# print(many_row) # 元组套元组
# 获取所有查询结果
all_row = cur.fetchall()
print(all_row)
# 关闭游标
cur.close()
# 关闭数据库
db.close()
3、创建表
import pymysql
db = pymysql.connect(host='localhost',
port=3306,
password="caibo20000222",
user="root",
database="pymysql",
charset="utf8")
# 获取游标(操作数据库,执行sql语句)
cur = db.cursor()
# 写数据库
try:
# 写sql语句
# 插入操作
sql1 = "create table interest (姓名 char(20),年龄 int(10),爱好 char(20));"
print(sql1)
cur.execute(sql1)
db.commit()
except Exception as e:
db.rollback() # 退回到commit执行之前的数据库状态
print(e)
# 关闭游标
cur.close()
# 关闭数据库
db.close()