MySQL数据库的操作

一:这里不懂的私信我

先将MySQL下载到系统里面

Navicat for MySQL软件里创建一个数据库

假设我现在创建了一个yyds的数据库

像sql中的指令为社么是这样书写,

下期在出

如果不知道怎么下载Navicat for MySQL和将MySQL下载到系统里面

私聊,免费安装包和MySQL系统安装教程发你

二:打开pycharm,对MySQL数据库进行连接

先下载pymysql模块

win+r打开,在cmd  输入pip install pymysql即可

#引用模块
import pymysql
db=pymysql.connect(
# host 主机地址,因为我们的数据都是本机的127.0.0.1 或者本机域名localhost
host="localhost",
# password 用户名的密码
user="root",
password="root",
# 数据库字符编码
charset="utf8",
# 你要使用的数据库名称
database="yyds"
)

# 创建游标对象(理解为指针)就是代表该链接的数据库
# cursor专门创建游标

以后都要用游标对象来操作

#数据是放在数据库中对应的表里面的

1.如何创建表

我们首先还是要链接数据库

可以用异常处理的方法,判断是否数据库的运行没问题

注意:无论创建成功还是失败都要关闭游标和数据库

游标名.close()

数据库.close()

#引用模块
import pymysql
db=pymysql.connect(
# host 主机地址,因为我们的数据都是本机的127.0.0.1 或者本机域名localhost
host="localhost",
# password 用户名的密码
user="root",
password="root",
# 数据库字符编码
charset="utf8",
# 你要使用的数据库名称
database="yyds"
)
#创建一个游标对象
cur=db.cursor()
#编写需要创建的表
sql="""create table t_student(
son int primary key auto_increment,
sname varchar(10) not null,
age int(2),
score float(3,1)

)"""
try:
    #执行创建的表
    cur.execute(sql)
    print("创建成功")
except Exception as e:
    print(e)
    print("创建失败")
finally:
    cur.close()
    db.close()

看到这里我已经创建成功t_student列表了

2.如何插入数据

只要改变一下sql代码的指令即可,然后在吧数据放入列表里

这里可以用executemany去执行指令,这样才可以传入多组数据

格式:

sql 为插入指令

executemany(sql,[   (),   (),   ()])

注意:失败时要去回滚数据,不然错误数据会卡住,真确数据

回滚方法,数据库衔接名.rollback()

如果成功就要把数据提交给数据库

提交方法     数据库衔接名.commit()

#引用模块
import pymysql
db=pymysql.connect(
# host 主机地址,因为我们的数据都是本机的127.0.0.1 或者本机域名localhost
host="localhost",
# password 用户名的密码
user="root",
password="root",
# 数据库字符编码
charset="utf8",
# 你要使用的数据库名称
database="yyds"
)
#创建一个游标对象
cur=db.cursor()
#编写需要创建的表
sql="insert into t_student (sname,age,score) values(%s,%s,%s)"
try:
    #执行创建的表
    cur.executemany(sql,[("小米",18,16.0),("小鱼",18,18.0),("大鱼",16,16.5)])
    db.commit()
    print("插入成功")
except Exception as e:
    print(e)
    db.rollback()
    print("插入失败")
finally:
    cur.close()
    db.close()

3.如何查找数据,修改数据,删除数据

实际上如果前面的听懂了就知道把   

sql的指令修改即可

游标名.fetchall()

查询所有数据

#引用模块
import pymysql
db=pymysql.connect(
# host 主机地址,因为我们的数据都是本机的127.0.0.1 或者本机域名localhost
host="localhost",
# password 用户名的密码
user="root",
password="root",
# 数据库字符编码
charset="utf8",
# 你要使用的数据库名称
database="yyds"
)
#创建一个游标对象
cur=db.cursor()
#编写需要创建的表
sql="select * from t_student"
try:
    #执行创建的表
    cur.execute(sql)
    students=cur.fetchall()
    print(students)
except Exception as e:
    print(e)
    db.rollback()
    print("查找失败")
finally:
    cur.close()
    db.close()

修改

#引用模块
import pymysql
db=pymysql.connect(
# host 主机地址,因为我们的数据都是本机的127.0.0.1 或者本机域名localhost
host="localhost",
# password 用户名的密码
user="root",
password="root",
# 数据库字符编码
charset="utf8",
# 你要使用的数据库名称
database="yyds"
)
#创建一个游标对象
cur=db.cursor()
#编写需要创建的表
sql='update t_student set sname=%s where son=%s '
try:
    #执行创建的表
    cur.execute(sql,("大王",1))
    db.commit()
    print("修改成功")
except Exception as e:
    print(e)
    db.rollback()
    print("修改失败")
finally:
    cur.close()
    db.close()

删除

#引用模块
import pymysql
db=pymysql.connect(
# host 主机地址,因为我们的数据都是本机的127.0.0.1 或者本机域名localhost
host="localhost",
# password 用户名的密码
user="root",
password="root",
# 数据库字符编码
charset="utf8",
# 你要使用的数据库名称
database="yyds"
)
#创建一个游标对象
cur=db.cursor()
#编写需要创建的表
sql='delete from t_student where sname=%s'
try:
    #执行创建的表
    cur.execute(sql,("大王"))
    db.commit()
    print("删除成功")
except Exception as e:
    print(e)
    db.rollback()
    print("删除失败")
finally:
    cur.close()
    db.close()

总结:

实际上就是先链接数据库,然后再改变sql的指令进行操作,如果有关数据的

操作就要回滚和提交,最后一定要关闭数据库衔接和游标

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值