flask数据库连接


db.py

#基于pymysql
import pymysql
from app.config.secure import DHOST,DPORT,DUSER,DPWD,DATABASE,CHARSET

class DB:
    # 构造函数
    def __init__(self,data):
        try:
            # 获取数据库连接
            self.conn = pymysql.connect(**data)
            # 获取游标
            self.cursor = self.conn.cursor(pymysql.cursors.DictCursor)
        except:
            pass
    # 增
    def insert(self,sql,data):
        try:
            self.cursor.execute(sql,data)
            self.conn.commit()
            return self.cursor.lastrowid
        except Exception as e:
            print(e)
            self.conn.rollback()
            return 0
    #删
    def delete(self,sql,data):
        try:
            self.cursor.execute(sql,data)
            self.conn.commit()
            return self.conn.affected_rows()
        except:
            self.conn.rollback()
            return 0
    #改
    def update(self,sql,data):
        try:
            self.cursor.execute(sql,data)
            self.conn.commit()
            return self.conn.affected_rows()
        except Exception as e:
            print(e)
            self.conn.rollback()
            return 0
    #查
    def select(self,sql,data=[]):
        try:
            if not data:
                self.cursor.execute(sql)
            else:
                self.cursor.execute(sql,data)
            data = self.cursor.fetchall()
            return data
        except:
            return []

    # 查单条数据
    def get_one(self,sql,data):
        try:
            self.cursor.execute(sql,data)
            data = self.cursor.fetchone()
            return data
        except:
            return {}
    #析构函数
    def __del__(self):
        if self.cursor:
            self.cursor.close()
        if self.conn:
            self.conn.close()


config = {
    "host":DHOST,
    "port":DPORT,
    "user":DUSER,
    "password":DPWD,
    "database":DATABASE,
    'charset':CHARSET
}
db = DB(config)
#查看
# sql = 'select * from user'
# print(db.select(sql))

#添加
# sql = 'insert into user (name)values ("小花1")'
# print(db.insert(sql))

#删除
# sql = "delete from user where name='小花1';"
# print(db.delete(sql))

#修改
# sql = "update user set name='{}' where id ={}".format('赵鹤',2)
# print(db.update(sql))

 

secure.py
#安全的配置 机密配置


DEBUG = True

# PORT = 6000

#数据库相关的
DHOST = '127.0.0.1'
DPORT = 3306
DUSER = 'root'
DPWD = ''
DATABASE = 'vod-admin'
CHARSET = 'utf8'


#secure_key
SECRET_KEY = 'SEFDSGSGFGDSFSEFSDG'

 

通用连接

import pymysql

#获取数据库连接
conn = pymysql.connect(host='127.0.0.1', user='root', password="",database='vod-admin', port=3306,charset='utf8')

#准备一个sql语句
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

sql = 'select * from user'
#执行sql语句
cursor.execute(sql)
data = cursor.fetchall()
print(data)


#关闭连接 释放资源
cursor.close()
conn.close()

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM