Python连接Liunx中mysql数据库-增删改查

在这里插入图片描述
上一篇文章已经讲解了如何连接liunx中的mysql数据库,如果没有连接好数据库的话,可以看这一篇文章


这是我接下来需要进行增删改查操作的数据表

在这里插入图片描述

Mysql中查询操作

python中操作mysql数据库主要就是通过连接池将游标传递出去

1.创建游标

curs = db.cursor()

2.定义一个sql的查询语句

sql =‘select * from abs_incoming;’

3.调用游标内的sql语句执行操作

curs.execute(sql1)

4.打印出查询结果

由于单独打印游标无法获取到数据,所以需要用fetchall进行获取
fetchall获取整条数据时使用,查询单条数据使用fetchone()会好些
print(curs.fetchall())

在这里插入图片描述

5.完整代码

import pymysql
db = pymysql.connect(host='192.168.52.129',#数据库的ip地址
                     user='root',#连接名
                     passwd='',#你的密码
                     database='abs',#数据库名称
                     port=3306)#端口号
curs = db.cursor()
sql1 ='select * from abs_incoming;'
curs.execute(sql1)
print(curs.fetchall())

6.指定查询

我想查询数据表中年龄为20的姓名和收入情况

sql1='select * from abs_incoming where age=20;'
curs.execute(sql1)
print(curs.fetchall())

在这里插入图片描述

Mysql中新增操作

1.单条数据插入

执行sql的插入语句

sql=‘insert into abs_incoming(name,age,incoming)values(“zhangsan”,20,8000);’

通过调用游标方法执行sql语句

curs.execute(sql)

执行脚本

db.commit()

释放资源

db.close()

插入成功后,数据表中多出一条数据
在这里插入图片描述
完整代码

import pymysql
db = pymysql.connect(host='192.168.52.129',#数据库的ip地址
                     user='root',#连接名
                     passwd='',#你的密码
                     database='abs',#数据库名称
                     port=3306)#端口号
curs = db.cursor()
sql='insert into abs_incoming(name,age,incoming)values("zhangsan",20,8000);'
curs.execute(sql)
db.commit()
db.close()

2.多条数据插入

执行sql语句

sql3 = ‘insert into abs_incoming(name,age,incoming)values(%s,%s,%s);’

要插入的多条数据

data=[(‘zhangersan’,‘18’,‘4200’),(‘leishen’,‘20’,‘3600’),(‘zhangwu’,‘22’,‘5400’)]

调用游标这里有两个一个是sql语句,另一个就是你要插入的参数

curs.executemany(sql3,data)

执行脚本

db.commit()

释放脚本

db.close()

完整代码

import pymysql
db = pymysql.connect(host='192.168.52.129',#数据库的ip地址
                     user='root',#连接名
                     passwd='',#你的密码
                     database='abs',#数据库名称
                     port=3306)#端口号
curs = db.cursor()
sql3 = 'insert into abs_incoming(name,age,incoming)values(%s,%s,%s);'
data=[('zhangersan','18','4200'),('leishen','20','3600'),('zhangwu','22','5400')]
curs.executemany(sql3,data)
db.commit()
db.close()

在这里插入图片描述

Mysql中删除操作

第一种方法直接定义

执行sql中删除语句

sql4 = ‘delete from abs_incoming where name=“leishen”;’

游标调用方法

curs.execute(sql4)

执行脚本

db.commit()

释放脚本

db.close()
在这里插入图片描述

第二种方法传递参数

sql4 = 'delete from abs_incoming where name=%s;'
s_name = "zhangersan"
curs.execute(sql4,[s_name])
db.commit()
db.close()

Mysql中修改操作

第一种方法直接定义

sql ='update abs_incoming set age = 30 where name="leishen";'
curs.execute(sql)
db.commit()
db.close()

在这里插入图片描述

第二种方法传递参数

sql = 'update abs_incoming set age =40 where name =%s'
na = "leishen"
curs.execute(sql,[na])
db.commit()
db.close()

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

轻烟飘荡

我想吃甜筒

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值