import pymysql
db_conf = {
"host": "xxxxxxx",
"port": 3306,
"user": "root",
"passwd": "123456",
"charset": "utf8", # "utf-8"会报错
}
class DbConnect():
def __init__(self, db_conf, database="dailyfresh"):
self.db_conf = db_conf
# 连接数据库
self.db = pymysql.Connect(database=database,
cursorclass=pymysql.cursors.DictCursor,
**db_conf,
)
# 获取操作游标
self.cursor = self.db.cursor()
def select(self, sql):
"""
:param sql: sql查询语句
:return:
"""
self.cursor.execute(sql)
results = self.cursor.fetchall()
return results
def execute(self, sql):
"""
:param sql:删除、修改、新增语句
:return:
"""
try:
# 执行SQL语句
self.cursor.execute(sql)
self.db.commit()
except:
# 发生错误时回滚
self.db.rollback()
def close(self):
# 关闭数据库连接
self.db.close()
def select_sql(sql):
db = DbConnect(db_conf)
results = db.select(sql)
db.close()
return results
def execute_sql(sql):
db = DbConnect(db_conf)
results = db.execute(sql)
db.close()
if __name__ == '__main__':
db = DbConnect(db_conf)
sql = "SELECT * FROM df_goods"
results = db.select(sql)
db.close()
print(results)