如果某个字段的为datetime属性,直接返回sql语句查到的结果, 前端拿到的数据为 “2020-06-03T14:45:04”
select DATE_FORMAT(insert_time,'%Y-%m-%d %H:%i:%S') as insert_time from t_teacher_info
# 建表语句
DROP TABLE IF EXISTS `teacher`;
CREATE TABLE `teacher` (
`id` int DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
`number` int DEFAULT NULL,
`insert_time` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
INSERT INTO `teacher` VALUES ('1', '老师1', '30201', '2021-03-31 09:14:31');
INSERT INTO `teacher` VALUES ('2', '老师2', '30202', '2022-01-25 09:14:34');
INSERT INTO `teacher` VALUES ('3', '老师3', '30203', '2021-03-31 09:14:38');
# Python代码
import pymysql
from dbutils.pooled_db import PooledDB
conf = {
# 数据库信息补全
"db": {
"host": "", # 测试
"port": 3306,
"user": "root",
"password": "root",
"database": "test",
"charset": "utf8"
},
"db_pool":{
"mincached":5,
"maxcached":5,
"maxshared":10,
"maxconnections":20,
"blocking" :1,
"maxusage": 0
}
}
class DBPool(object):
__pool = None
def __init__(self):
# 构造函数,创建数据库连接、游标
self.coon = DBPool.getmysqlconn()
self.cur = self.coon.cursor(cursor=pymysql.cursors.DictCursor)
# 数据库连接池连接
@staticmethod
def getmysqlconn():
if DBPool.__pool is None:
DBPool.__pool = PooledDB(creator=pymysql, mincached=conf['db_pool']['mincached'],
maxcached=conf['db_pool']['maxcached'],
maxshared=conf['db_pool']['maxshared'],
maxconnections=conf['db_pool']['maxconnections'],
blocking=conf['db_pool']['blocking'],
maxusage=conf['db_pool']['maxusage'], setsession=None,
host=conf['db']['host'], port=conf['db']['port'],
user=conf['db']['user'], passwd=conf['db']['password'],
db=conf['db']['database'], charset=conf['db']['charset'])
return DBPool.__pool.connection()
def op_select(self, sql):
self.cur.execute(sql) # 执行sql
select_res = self.cur.fetchall() # 返回结果为字典
return select_res
if __name__ == '__main__':
db = DBPool()
sql_date = "select insert_time from teacher"
sql_str = "select DATE_FORMAT(insert_time,'%Y-%m-%d %H:%i:%S') as insert_time from teacher"
insert_time_date = db.op_select(sql_date)
insert_time_str = db.op_select(sql_str)
print(insert_time_date)
print(insert_time_str)