JavaProjectRepo/business-css/docs/table.txt

114 lines
3.7 KiB
Plaintext
Raw Normal View History

2025-12-17 17:09:58 +08:00
-- ==========================================
-- 1. project 表
-- ==========================================
CREATE TABLE project (
project_id CHAR(36) PRIMARY KEY,
code VARCHAR(20) NOT NULL UNIQUE,
name VARCHAR(200) NOT NULL,
description TEXT,
topology LONGTEXT,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
-- ==========================================
-- 2. device 表
-- ==========================================
CREATE TABLE device (
device_id CHAR(36) PRIMARY KEY,
project_id CHAR(36) NOT NULL,
code VARCHAR(50) NOT NULL,
type VARCHAR(50) NOT NULL,
name VARCHAR(100),
size JSON NOT NULL,
volume DOUBLE,
flow_rate DOUBLE,
pulse_velocity DOUBLE,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
-- ==========================================
-- 3. material 表
-- ==========================================
CREATE TABLE material (
material_id CHAR(36) PRIMARY KEY,
project_id CHAR(36) NOT NULL,
name VARCHAR(100) NOT NULL,
u_concentration DOUBLE,
uo2_density DOUBLE,
u_enrichment DOUBLE,
pu_concentration DOUBLE,
puo2_density DOUBLE,
pu_isotope DOUBLE,
hno3_acidity DOUBLE,
h2c2o4_concentration DOUBLE,
organic_ratio DOUBLE,
moisture_content DOUBLE,
custom_attrs JSON,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
-- ==========================================
-- 4. critical_data 表
-- ==========================================
CREATE TABLE critical_data (
critical_id CHAR(36) PRIMARY KEY,
device_type VARCHAR(50) NOT NULL,
attr_state JSON NOT NULL,
keff_value DOUBLE,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
-- ==========================================
-- 5. scenario 表
-- ==========================================
CREATE TABLE scenario (
scenario_id CHAR(36) PRIMARY KEY,
project_id CHAR(36) NOT NULL,
name VARCHAR(100) NOT NULL,
description TEXT,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
-- ==========================================
-- 6. event 表
-- ==========================================
CREATE TABLE event (
event_id CHAR(36) PRIMARY KEY,
scenario_id CHAR(36) NOT NULL,
device_id CHAR(36),
material_id CHAR(36),
attr_changes JSON NOT NULL,
trigger_time DOUBLE NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
-- ==========================================
-- 7. scenario_result 表
-- ==========================================
CREATE TABLE scenario_result (
scenario_id CHAR(36) NOT NULL,
device_id CHAR(36) NOT NULL,
step INT NOT NULL,
attr_state JSON NOT NULL,
keff_value DOUBLE,
PRIMARY KEY(scenario_id, device_id, step)
);
-- ==========================================
-- 8.algorithm 表
-- ==========================================
CREATE TABLE algorithm (
algorithm_id CHAR(36) PRIMARY KEY COMMENT '算法唯一ID',
name VARCHAR(100) NOT NULL COMMENT '算法名称',
description TEXT COMMENT '算法描述',
version VARCHAR(20) COMMENT '版本号例如v1.0',
principle TEXT COMMENT '算法原理说明',
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
input_params JSON COMMENT '调用参数以JSON存储参数名称、类型、默认值等',
output_params JSON COMMENT '输出参数以JSON存储参数名称、类型、说明等'
);