龙空技术网

MYSQL自动导出某表数据到EXCEL的方案

桃杂记 122

前言:

而今同学们对“如何把mysql数据库导出表格”大体比较看重,各位老铁们都需要剖析一些“如何把mysql数据库导出表格”的相关知识。那么小编同时在网络上收集了一些对于“如何把mysql数据库导出表格””的相关文章,希望咱们能喜欢,各位老铁们快快来了解一下吧!

由于特殊要求,客户要求,将数据库中的某些数据,每天指定时间自动导出到指定位置。方便其它业务的使用。

首先说下设计思路:因为需求比较简单,打算用MYSQL数据库的函数+事件功能完成。

首先,定义各一个导出EXCEL的函数,因为本函数需要每24小时重复执行,导出文件就采用年月日时分秒命名,以区分每天的导出记录。

示例代码如下:

BEGIN-- SET @SqlScript= CONCAT("SELECT * INTO OUTFILE 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/", DATE_FORMAT(NOW(), '%Y%m%d%H%i%s'), ".xls' CHARACTER SET gbk FROM `measurement_data_skfer` ;");-- NEW 增加自定义表头,保存24小时内的数据SET @SqlScript= CONCAT("SELECT 'ID', '工单号', '设备号', '钢丝', '规格值', '测量值', '结果', '皮带', '规格值', '测量值', '结果','时间' UNION ALL SELECT * FROM `measurement_data_skfer` WHERE Time >=(NOW() - interval 24 hour)INTO OUTFILE 'C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/", DATE_FORMAT(NOW(), '%Y%m%d%H%i%s'), ".xls' CHARACTER SET gbk ;");PREPARE Sql_Text FROM @SqlScript;EXECUTE Sql_Text;END

然后,定义一个事件,事件的定义代码:

call 函数名

事件定义好计划的规则,样例见下图:

备注:下面为开启MYSQL的事件计划的相关说明资料。

通过下列语句查询event是否开启

show variables like '%sche%';

通过执行下列语句,来开启event_scheduler

set global event_scheduler =1;

还有一种方法开启

set global event_scheduler=on;

标签: #如何把mysql数据库导出表格