多测师拱墅校区肖sir_高级金牌讲师_python+pymysq(1)


python+pymysq

一、python操作mysql数据库

pymysql库名,关于数据库操作的库

1、pymysql 下载

(1)方法1:dos下

pip  install   pymysql  

(2)在pycharm中setting中

 (3)查看下pymsyql

 

 =========================================================

二、pymysql的使用

(1)连接

Connection连接方式

(2)

import pymysql #导入pymysql这个库
db=pymysql.Connection(host="192.168.157.129",user="root",password="123456",
database="dcs",port=3306 ,charset="utf8"

)
yb=db.cursor() #创建游标对象
sql="select * from emp" #sql语句
yb.execute(sql) #通过游标执行sql语句
one=yb.fetchone()#通过游标获取第一行数据,就是显示第一行数据
print(one)
many=yb.fetchmany(size=2)#通过游标获取部分数据,size=显示的行数
print(many)
all=yb.fetchall() ##通过游标获取全部数据
print(all)

  =========================================================

创建一个连接对象:

db=pymysql.Connection(host="192.168.157.129",user="root",password="123456",
database="dcs",port=3306 ,charset="utf8"

)
(1)Connection 连接
(2)host主机
(3)user用户
(4)password 密码或者passwd

 (5)database 数据库或db  数据库

(6)port  端口
(7)charset="utf8" 字符编码格式


====================================
通过for循环遍历所有数据
import  pymysql #导入pymysql这个库
# db=pymysql.Connection(host="192.168.157.129",user="root",password="123456",
# database="dcs",port=3306 ,charset="utf8"
#
# )
db=pymysql.connect(host="192.168.157.129",user="root",password="123456",
db="dcs",port=3306 ,charset="utf8"

)
yb=db.cursor() #创建游标对象
sql="select * from emp"
yb.execute(sql)
all=yb.fetchall()
for i in all:
print(i)

====================================
python+pymysql增删改查
(1)查:
import  pymysql #导入pymysql这个库
db=pymysql.connect(host="192.168.157.129",user="root",password="123456",
db="dcs",port=3306 ,charset="utf8"

)
yb=db.cursor() #创建游标对象
sql="select * from emp where dept2=101"#查询语句
yb.execute(sql)
all=yb.fetchall()
for i in all:
print(i)
(2)删除:
db=pymysql.connect(host="192.168.157.129",user="root",password="123456",
db="dcs",port=3306 ,charset="utf8"

)
yb=db.cursor() #创建游标对象
sql="DELETE from emp where name='xiaoniu' " #删除语句
yb.execute(sql) #执行删除语句
sql2="select * from emp where dept2=101" #查询语句
yb.execute(sql2)
all=yb.fetchall()
for i in all:
print(i)
(3)改
import  pymysql #导入pymysql这个库
db=pymysql.connect(host="192.168.157.129",user="root",password="123456",
db="dcs",port=3306 ,charset="utf8"

)
yb=db.cursor() #创建游标对象
sql="UPDATE emp set sid=8888 where name='张二'" #修改sql语句
yb.execute(sql)
sql2="select * from emp where dept2=101"
yb.execute(sql2)
all=yb.fetchall()
for i in all:
print(i)
(4)增
import  pymysql #导入pymysql这个库
db=pymysql.connect(host="192.168.157.129",user="root",password="123456",
db="dcs",port=3306 ,charset="utf8"

)
yb=db.cursor() #创建游标对象
sql="INSERT into emp(sid) VALUES(9999) "
yb.execute(sql)
sql2="select * from emp where sid=9999"
yb.execute(sql2)
all=yb.fetchall()
for i in all:
print(i)
=======================================================
pymysql封装:
import  pymysql
class Db():
def __init__(self,host,user,passwd,db,port):
self.host=host
self.user=user
self.passwd=passwd
self.db=db
self.port=port
def lj(self):
ljmysql=pymysql.connect(host=self.host,user=self.user,password=self.passwd,
db=self.db,port=self.port,charset="utf8")
return ljmysql
def one(self,sql):
dx=self.lj()
yb=dx.cursor()
yb.execute(sql)
one1=yb.fetchone()
print(one1)

def many(self, sql,s):
dx = self.lj()
yb = dx.cursor()
yb.execute(sql)
many2 = yb.fetchmany(size=s)
print(many2)

def all(self, sql):
dx = self.lj()
yb = dx.cursor()
yb.execute(sql)
all1 = yb.fetchall()
print(all1)
if __name__ == '__main__':
d=Db(host="192.168.157.129",user="root",passwd="123456",
db="dcs",port=3306 )
# d.one("select * from emp where dept2=101")
d.many("select * from emp ",5)
# d.all("select * from emp ")


相关