简介:pymysql是python中用来连接mysql的模块属于第三方模块需要手动下载
1.下载pymysql模块
命令:pip3 install pysql(终端下载)
2.链接数据库
语法:pysql.connect()
参数1.host:‘主机ip’(本机为127.0.0.1)
2.user:‘数据库的用户名’
3.password:‘数据库的密码’
4.database:‘数据库的名称’
5.charset:‘字符集
需求:链接本机mysql数据库中的user数据库
conn用于创建游标对象
conn = pymysql.connect(host='127.0.0.1',
user='root',
password='123456',
database='user')
注意:返回的值用于创建游标对象
3.创建实例化一个游标对象用于调用下面的方法
语法:ret = cunn.cursor()
不用传参,返回一个游标对象(游标就是鼠标的意思)
cur = conn.cursor()
4.利用cur调用execute()
语法:ret = cur.execute()
参数为sql语句,用三引号引起来
操作结果的条数会返回为ret中(例如查询结果为2条,ret的值为2)
eg:
sql = """SELECT * FROM yx_store_coupon_issue WHERE cid =11"""
ret = cur.execute(sql)
5.补充:
1.如果执行的是查询语句:需要取出查询的值。通过游标对象调用fetchall()方法
需求:取出查询结果的所有值
eg:
value = cur.fetchall()
# 不用传参
那么value的值就是查询的结果了,如果查询的值不止一条那么value的值为列表
2.如果执行的是增删改等操作需要在cur.execute()下面添加一条提交请求
conn.commit()
eg:
sql = """SELECT * FROM yx_store_coupon_issue WHERE id =11"""
ret = cur.execute(sql)
# 提交一个更新请求(把上面的代码提交)
conn.commit()
代码示例:
import pymysql
class Mysql_OP():
"""操作mysql数据库的类"""
def __init__(self):
conn = pymysql.connect(host='127.0.0.1',
user='root',
password='123456',
database='yxshop')
self.conn = conn
return
def __del__(self):
self.conn.close()
def select_mysql(self,sql):
cur = self.conn.cursor()
ret = cur.execute("""%s"""%sql)
self.conn.commit()
cur.fetchall()
return ret
def delete_mysql_data(self,sql):
cur = self.conn.cursor()
ret = cur.execute("""%s""" % sql)
self.conn.commit()
return ret
if __name__ == '__main__':
# sql = 'SELECT is_del FROM yx_store_coupon_issue WHERE id =11'
sql = 'SELECT * FROM yx_store_coupon_issue WHERE id =11'
Mysql_OP().select_mysql(sql)
print( Mysql_OP().select_mysql(sql))