forked from gary/ems
2
0
Fork 0
sun_ems/release/ems/initsql/business/0000_1.0.0_initial.sql

113 lines
3.9 KiB
SQL

-- 设备表
CREATE TABLE IF NOT EXISTS
device(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
sn TEXT(50) NOT NULL, --设备sn
type INTEGER NOT NULL, --设备类型
code INTEGER NOT NULL, --设备编号
name TEXT(100) NOT NULL, --设备名称
protocol_type INTEGER NOT NULL, --协议类型
template_id INTEGER NOT NULL, --模版Id
sort_order INTEGER, --序号
remark TEXT(1200), --备注
status TINYINT, --状态
UNIQUE(name), -- 设备名称唯一
UNIQUE(type, code) -- 设备类型和设备编号唯一
);
-- 点位表
CREATE TABLE IF NOT EXISTS
point(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
template_id INTEGER NOT NULL, --模版Id
protocol_type INTEGER NOT NULL, --协议类型
dev_type INTEGER NOT NULL, --设备类型
group_type INTEGER NOT NULL, --分组类型
code INTEGER NOT NULL, --点位编号
name TEXT(100) NOT NULL, --点位名称
data_type INTEGER NOT NULL, --数据类型
attribute INTEGER NOT NULL, --点位属性
func INTEGER NOT NULL, --点位功能
reg_addr INTEGER NOT NULL, --点位地址
bit_pos INTEGER NOT NULL, --字节开始位
bit_num INTEGER NOT NULL, --字节数
endian INTEGER NOT NULL, --字节顺序
precision REAL NOT NULL, --精度
ratio REAL NOT NULL, --系数
offset REAL NOT NULL, --偏移量
is_persisted TINYINT NOT NULL, --是否持久化
storage_interval INTEGER NOT NULL, --存储周期
mutate_bound REAL, --突变范围
default_value REAL, --默认值
min_value REAL, --最小值
max_value REAL, --最大值
unit TEXT(20), --计量单位
is_show TINYINT NOT NULL --是否展示
);
-- 设备时序数据存储表
CREATE TABLE IF NOT EXISTS
timed_data_storage(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
dev_type INTEGER NOT NULL, --设备类型
dev_id INTEGER NOT NULL, --设备Id
point_id INTEGER NOT NULL, --点位Id
-- dev_name TEXT(100) NOT NULL, --设备名称
-- point_name TEXT(100) NOT NULL, --点位名称
storage_interval INTEGER NOT NULL, --存储周期
timed_value REAL NOT NULL, --值
created_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP -- 备份时间
);
-- 故障数据记录表
CREATE TABLE IF NOT EXISTS
faults_record(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
dev_type INTEGER NOT NULL, --设备类型
dev_id INTEGER NOT NULL, --设备Id
point_id INTEGER NOT NULL, --点位Id
faults_value TINYINT NOT NULL, --故障值
created_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP --备份时间
);
-- MQTT断点记录
CREATE TABLE IF NOT EXISTS
break_record(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
reason TEXT(100) NOT NULL, --中断原因
is_uploaded TINYINT NOT NULL, --是否已全部上传
start_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP, --断点开始时间
end_time TIMESTAMP, --断点结束时间
created_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP --备份时间
);
-- MQTT断点数据存储
CREATE TABLE IF NOT EXISTS
break_data_storage(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
break_id INTEGER NOT NULL, --断点记录表Id
is_uploaded TINYINT NOT NULL, --是否已上传
content TEXT NOT NULL, --需要上传的JSON串
created_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP --备份时间
);
-- 断联记录
CREATE TABLE IF NOT EXISTS
lost_contact_record(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
connect_status TEXT NOT NULL, --已断开/已连接
created_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP --记录时间
);
-- 功率数据存储
CREATE TABLE IF NOT EXISTS
power_data_storage(
id INTEGER PRIMARY KEY AUTOINCREMENT, --主键标识
dev_type INTEGER NOT NULL, --设备类型
dev_code INTEGER NOT NULL, --设备编号
point_code INTEGER NOT NULL, --点位编号
value REAL NOT NULL, --值
created_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP -- 存储时间
);