在python中我们可以用ORM
来操作数据库,然而最原生的方法就是使用pymysql类,我封装了从连接数据到对数据库的增删改查的方法😜
import pymysql
# 从配置文件中导入连接数据库的信息
from config import DB_HOST, DB_USER, DB_PASSWORD, DB_NAME
class MySQL:
"""
mysql类
"""
def __init__(self):
"""
连接数据库
"""
try:
self.conn = pymysql.connect(host=DB_HOST,
user=DB_USER,
password=DB_PASSWORD,
database=DB_NAME,
charset='utf8',
cursorclass=pymysql.cursors.DictCursor)
# 出现异常时执行的代码
except Exception as e:
print(e)
# 没有异常时执行的代码
else:
print(" * Database connection succeeded!")
# 获取游标
self.cursor = self.conn.cursor()
def insert(self, sql):
"""
插入方法
:param sql:
:return:
"""
# 执行sql语句
self.cursor.execute(sql)
# 提交sql
self.conn.commit()
return "insert ok"
def delete(self, sql):
"""
删除
:param sql:
:return:
"""
# 执行sql语句
self.cursor.execute(sql)
# 提交sql
self.conn.commit()
return "delete ok"
def update(self, sql):
"""
修改方法
:param sql:
:return:
"""
# 执行sql语句
self.cursor.execute(sql)
# 提交sql
self.conn.commit()
return "update ok"
def get_one(self, sql):
"""
查询单个数据
:param sql:
:return:对象
"""
# 执行sql语句
self.cursor.execute(sql)
# 获取数据
res = self.cursor.fetchone()
# 返回结果集
return res
def get_all(self, sql):
"""
查询多个数据
:param sql:
:return:数据集
"""
# 执行sql语句
self.cursor.execute(sql)
# 获取数据
res = self.cursor.fetchall()
# 返回结果集
return res
def __del__(self):
"""
析构方法
:return:
"""
# 关闭游标
self.cursor.close()
# 关闭数据库链接
self.conn.close()
总结
关于操作数据库,基本的就是对数据库的增删改查
,以及索引
等,用封装的思想把最基本的方法封装起来,用的时候直接导入即可!