【日报小工具】(1)SQLite
2019-06-30 本文已影响0人
liuhailong
缘起
老板每天要日报,指标很多、数据也很多,中间有手工数据处理部分,做个小工具可以缓解同学们体力输出,把精力集中在拯救世界上。
架构
【采集数据】 —>
【入库】 —>
【分析】—>
【导出】
存储
本章先解决存储的问题。
当前情况下,存储方便的最大需求是可迁移,第二是支持各类统计。
SQLite无疑最合适,支持left join
, order by
, group by
,还支持子查询,够用了。
下载 & 安装
- 下载
下载地址:https://www.sqlite.org/download.html
下载以下两个文件:
sqlite-dll-win64-x64-3280000.zip
、sqlite-tools-win32-x86-3280000.zip
。 - 安装
在本地创建sqlite文件夹,我的是:d:\tools\sqlite3
。
解压sqlite-dll-win64-x64-3280000.zip
文件中的sqlite3.def
和sqlite3.dll
两个文件,
解压sqlite-tools-win32-x86-3280000.zip
中的sqlite3.exe
等文件到d:\tools\sqlite3\bin
中。
如上,就完成了安装。
双击sqlite3.exe,输入.help,验证安装。
解压的文件放在bin子目录中主要是便于组织。
创建数据库
- 创建
d:\tools\sqlite3\data
文件夹,并切换到这个文件夹。 - 执行
..\bin\sqlite3 daily-report.db
命令,其中daily-report.db
是想要创建的数据库名。 - 确认数据库创建成功:
sqlite> .databases
main: D:\tools\sqlite3\data\daily-report.db
创建表
- 下载SQLiteExpert
工欲善其事,必先利其器。先找个趁手的工具。
打开 http://www.sqliteexpert.com/download.html,下载个人版随意用,专业版可试用30天。 -
创建Table
创建Table
SQL:
CREATE TABLE [capacity_report](
[report_id] BIGINT PRIMARY KEY,
[report_date] DATE);
CREATE TABLE [capacity_data](
[data_id] BIGINT PRIMARY KEY ,
[report_date] DATE NOT NULL,
[index_type] TINYINT,
[index_name] INT NOT NULL,
[index_stat_type] TINYINT,
[idc] VARCHAR(10) NOT NULL,
[data_value] DECIMAL(18, 6));
CREATE TABLE [capacity_report_analysis](
[analysis_id] BIGINT PRIMARY KEY ,
[report_id] BIGINT,
[analysis_type] VARCHAR(10),
[summary] VARCHAR(500),
[history_analysis] VARCHAR(1000),
[idc_analysis] VARCHAR(1000));
CREATE TABLE [sys_dict](
[dict_id] BIGINT PRIMARY KEY,
[dict_category] VARCHAR(100),
[dict_key] VARCHAR(200),
[dict_value] VARCHAR(1000),
[delete_flag] TINYINT DEFAULT 1);
OK,暂时先这样。