利用pymysql封装数据库连接、生成游标、查询、关闭连接等操作

my_sql.py 内容如下:

#!/usr/bin/env python3
# -*- coding:utf-8 -*-

import pymysql
import os
from common.MyConf import MyConf
from common.my_path import Conf_dir


class MySql:

def __init__(self):
# 实例化配置类对象
conf = MyConf(os.path.join(Conf_dir, 'mysql.ini'))
# 1.数据库连接、生成游标
self.db = pymysql.connect(
host=conf.get("mysql", "host"),
user=conf.get("mysql", "user"),
password=conf.get("mysql", "passwd"),
port=conf.getint("mysql", "port"),
database=conf.get("mysql", "database"),
charset="utf8",
cursorclass=pymysql.cursors.DictCursor
)

#2.创建游标
self.cur = self.db.cursor()

#获取查询条数
def get_count(self,sql):
count = self.cur.execute(sql)
return count

#获取查询的第一条数据
def get_one_data(self,sql):
self.cur.execute(sql)
return self.cur.fetchone()

#获取查询的多条数据
def get_many_data(self,sql,size=None):
self.cur.execute(sql)
if size:
return self.cur.fetchmany(size)
else:
return self.cur.fetchall()

#先关闭游标连接,再关闭数据库连接
def close_db(self):
self.cur.close()
self.db.close()


if __name__ == '__main__':
my_db = MySql()
sql = "select id from order where order_id='1335****'"
count = my_db.get_count(sql)
print(count)
my_db.close_db()


另外补充下MyConf.py , my_sql.ini 内容:
MyConf.py 如下
#!/usr/bin/env python3
# -*- coding:utf-8 -*-

from configparser import ConfigParser

class MyConf(ConfigParser):

def __init__(self,filename):
super().__init__()
self.read(filename,encoding='utf-8')
my_sql.ini 格式如下(*表示需要替换成项目对应数据库信息)
[mysql]
host=***
database=**
port=***
user=**
passwd=***


posted @   明天有盼望  阅读(377)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示