eis/script/table/T_RULE_SAMPLE_1D.sql

65 lines
2.1 KiB
MySQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- Version: 2025.7.31 14:52:27
Drop Table T_RULE_SAMPLE_1D@
Create Table T_RULE_SAMPLE_1D(
RuleId VARCHAR(50) NOT NULL,
X1 DECIMAL(8,2) NOT NULL,
Flag DECIMAL(4),
Count DECIMAL(16),
toc TIMESTAMP,
tom TIMESTAMP,
mop VARCHAR(120),
mou VARCHAR(30),
CONSTRAINT pk_T_RULE_SAMPLE_1D PRIMARY KEY (RuleId, X1)
)
IN TB8KUSREMS INDEX IN TB8KIDXEMS@
COMMENT ON Table T_RULE_SAMPLE_1D IS '1维统计样本表'@
COMMENT ON T_RULE_SAMPLE_1D (RuleId IS '规则id')@
COMMENT ON T_RULE_SAMPLE_1D (X1 IS '样本值')@
COMMENT ON T_RULE_SAMPLE_1D (Flag IS '是否有效:[0-无效1-有效6-运行时间存入7-出现次数存入]')@
COMMENT ON T_RULE_SAMPLE_1D (Count IS '统计的频次')@
/****************************************************************************
INSERT TRIGGER FOR TABLE
T_RULE_SAMPLE_1D
*****************************************************************************/
DROP TRIGGER ins_b_T_RULE_SAMPLE_1D@
CREATE OR REPLACE TRIGGER ins_b_T_RULE_SAMPLE_1D
BEFORE INSERT ON T_RULE_SAMPLE_1D REFERENCING NEW AS NEWROW FOR EACH ROW
MODE DB2SQL
BEGIN ATOMIC
DECLARE programm VARCHAR(120);
DECLARE auth VARCHAR(30);
set (programm,auth) = (SELECT APPL_NAME,AUTHID FROM SYSIBMADM.APPLICATIONS WHERE APPL_ID = (SELECT APPLICATION_ID() FROM dual));
set NEWROW.toc = (values sysdate);
set NEWROW.tom = (values sysdate);
set NEWROW.mop = programm;
set NEWROW.mou = auth;
END
@
/****************************************************************************
UPDATE TRIGGER FOR TABLE
T_RULE_SAMPLE_1D
*****************************************************************************/
DROP TRIGGER upd_b_T_RULE_SAMPLE_1D@
CREATE OR REPLACE TRIGGER upd_b_T_RULE_SAMPLE_1D
BEFORE UPDATE ON T_RULE_SAMPLE_1D REFERENCING NEW AS NEWROW FOR EACH ROW
MODE DB2SQL
BEGIN ATOMIC
DECLARE programm VARCHAR(120);
DECLARE auth VARCHAR(30);
set (programm,auth) = (SELECT APPL_NAME,AUTHID FROM SYSIBMADM.APPLICATIONS WHERE APPL_ID = (SELECT APPLICATION_ID() FROM dual));
set NEWROW.tom = (values sysdate);
set NEWROW.mop = programm;
set NEWROW.mou = auth;
END
@