当前位置: 首页 > article >正文

多测师肖sir_高级金牌讲师_python+pymyql数据库

pyhton+pymysql

python操作数据库

一、下载安装pymysql
方法1: pip install pymysql
方法2:在pycharm 中搜索pymysql下载

方法1案如图:
在这里插入图片描述

方法2:如下图
在这里插入图片描述

二、pymysql的使用
(1)导入pymysql(import pymysql)
(2)就是打开虚拟机,开启数据库,获取连接数据

(3)连接数据库
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306)

host:主机名
user:用户
password或passwd :数据库密码
database :数据库
port:端口号
charset:utf-8
在这里插入图片描述

(4)创建一个游标cursor()
案例1:fetchone 游标获取第一行数据
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql=“select * from dept”
yb.execute(sql)
one=yb.fetchone() #fetchone()游标获取第一行数据,
print(one)

案例2:通过游标获取所有的数据
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql=“select * from dept”
yb.execute(sql)
all=yb.fetchall() #fetchall# ()游标获取所有数据,
print(all)

案例3:fetchmany 获取部分数据 size 是数量

import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql=“select * from dept”
yb.execute(sql)
many=yb.fetchmany(size=3) #fetchmany# ()游标获取所有数据,
print(many)

===================================================
数据库中:
查:
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql=“select * from dept”
yb.execute(sql)
many=yb.fetchmany(size=3) #fetchmany# ()游标获取所有数据,
print(many)

删:
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql="delete from dept where dept1=104 "
yb.execute(sql)
在这里插入图片描述

增:
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql="insert into dept values (‘104’,‘dcs’) "
yb.execute(sql)
在这里插入图片描述

改:
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql=“update dept set dept_name=‘hz’ where dept1=‘104’”
yb.execute(sql)
在这里插入图片描述

for 循环的查看方式:
import pymysql
db=pymysql.Connection(host=“192.168.157.136”,user=“root”,password=“123456”,
database=“aa”,port=3306,charset=“utf8”)
yb=db.cursor()#创建一个游标
sql=“select * from dept”
yb.execute(sql)
all=yb.fetchall() #fetchall# ()游标获取所有数据,
for i in all:
print(i)

====================================
封装pymysql:

# import  pymysql
# class  Db(object):
#     def __init__(self,host,user,password,database, port):
#         self.host=host
#         self.user=user
#         self.password=password
#         self.database=database
#         self.port=port
#     def lj(self):
#         ljsjk=pymysql.connect(
#             host=self.host,user=self.user,password=self.password,database=self.database,port=self.port,charset='utf8' )
#         return ljsjk
#     def  one(self,sql):
#         bl=self.lj()
#         yb=bl.cursor()
#         yb.execute(sql)
#         print(yb.fetchone())
#     def  many(self,sql,x):
#         bl = self.lj()
#         yb = bl.cursor()
#         yb.execute(sql)
#         print(yb.fetchmany(x))
#     def all(self, sql):
#         bl = self.lj()
#         yb = bl.cursor()
#         yb.execute(sql)
#         print(yb.fetchall())
# if __name__ == '__main__':
#     dx=Db(host="192.168.157.134",user="root",password="Xlh1314*",database="dcs",port=3306)
#     # dx.one("select  * from  aa")
#     # dx.many("select  * from  aa",3)
#     dx.all("select  * from  dept")

http://www.kler.cn/news/107555.html

相关文章:

  • Maven入门与开箱即用
  • P3370 【模板】字符串哈希
  • Python基于微博的舆情分析、热搜可视化系统
  • 报错:SSL routines:ssl3_get_record:wrong version number
  • 缺少d3dx9_43.dll怎么解决 win系统如何运行dll文件?
  • TensorFlow学习:使用官方模型和自己的训练数据进行图片分类
  • Redis(02)| 数据结构-SDS
  • Spring Boot进阶(90):使用Spring Boot整合Curator,实现分布式锁,确保多个节点对同一资源的访问不会出现冲突
  • 【鸿蒙软件开发】ArkTS基础组件之Gauge(环形图表)、LoadingProgress(动态加载)
  • webGL编程指南 第五章 MultiAttributeSize
  • Golang Struct 继承的深入讨论和细节
  • SQL group by、where和having语句用法
  • 20231027 比赛总结
  • CAx软件中若干C++日志库
  • 报错:Could not resolve host: mirrorlist.centos.org;Unknown error
  • 微信小程序设置 wx.showModal 提示框中 确定和取消按钮的颜色
  • LabVIEW开发TDS1000 和TDS2000 系列泰克示波器
  • React JSX常用语法总结
  • Python Selenium 之数据驱动测试的实现!
  • 【目标跟踪】多目标跟踪测距
  • 产品经理-关于B端与C端
  • MySQL主从复制(基于GTID--事务ID方式)
  • C51--单片机中断
  • 如何在宝塔面板安装配置MySQL数据库并实现公网访问
  • AJAX原理及介绍
  • 【计算机毕设小程序案例】基于SpringBoot的小演员招募小程序
  • 第九章 软件BUG和管理
  • HackTheBox-Starting Point--Tier 1---Crocodile
  • MySQL篇---第二篇
  • css如何将border线加到元素内部,占内边距,不占外边距