78 lines
2.9 KiB
MySQL
78 lines
2.9 KiB
MySQL
|
|
-- Version: 2025.7.31 14:52:27
|
|||
|
|
Drop Table T_LOV_LIMIT@
|
|||
|
|
|
|||
|
|
Create Table T_LOV_LIMIT(
|
|||
|
|
plantType VARCHAR(8) NOT NULL,
|
|||
|
|
limitName VARCHAR(60) NOT NULL,
|
|||
|
|
CheckType DECIMAL(10),
|
|||
|
|
Factor DECIMAL(10),
|
|||
|
|
LowerLimit DECIMAL(10),
|
|||
|
|
UpperLimit DECIMAL(10),
|
|||
|
|
Enumerate VARCHAR(256),
|
|||
|
|
WarnLevel DECIMAL(10),
|
|||
|
|
ModDescr VARCHAR(256),
|
|||
|
|
toc TIMESTAMP,
|
|||
|
|
tom TIMESTAMP,
|
|||
|
|
mop VARCHAR(120),
|
|||
|
|
mou VARCHAR(30),
|
|||
|
|
CONSTRAINT pk_T_LOV_LIMIT PRIMARY KEY (plantType, limitName)
|
|||
|
|
)
|
|||
|
|
IN TB8KUSREMS INDEX IN TB8KIDXEMS@
|
|||
|
|
Alter Table T_LOV_LIMIT ALTER COLUMN CheckType SET WITH Default 0@
|
|||
|
|
Alter Table T_LOV_LIMIT ALTER COLUMN Factor SET WITH Default 1@
|
|||
|
|
Alter Table T_LOV_LIMIT ALTER COLUMN WarnLevel SET WITH Default 10@
|
|||
|
|
|
|||
|
|
COMMENT ON Table T_LOV_LIMIT IS '极限值检查表'@
|
|||
|
|
|
|||
|
|
COMMENT ON T_LOV_LIMIT (plantType IS 'Such as "PDI","L2", "L3"')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (limitName IS 'name of the value')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (CheckType IS '0:不检查 1:检查数字上下限 2:检查是全部为可见字符 3:字符串是否包含在Enumerate字段内 4:检查字符串是否是纯数字 5:检查字符串是否是纯字母 6:字符串是否满足Enumerate的正则表达式 7:字符串是否满足Enumerate的math公式')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (Factor IS '整数和小数转换因子')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (LowerLimit IS 'CheckType为1时的检查下限')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (UpperLimit IS 'CheckType为1时的检查上限')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (Enumerate IS '用于CheckType为3和7时使用')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (WarnLevel IS '检查失败后的返回结果')@
|
|||
|
|
COMMENT ON T_LOV_LIMIT (ModDescr IS 'description of modification')@
|
|||
|
|
|
|||
|
|
/****************************************************************************
|
|||
|
|
INSERT TRIGGER FOR TABLE
|
|||
|
|
T_LOV_LIMIT
|
|||
|
|
*****************************************************************************/
|
|||
|
|
DROP TRIGGER ins_b_T_LOV_LIMIT@
|
|||
|
|
|
|||
|
|
CREATE OR REPLACE TRIGGER ins_b_T_LOV_LIMIT
|
|||
|
|
BEFORE INSERT ON T_LOV_LIMIT 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_LOV_LIMIT
|
|||
|
|
*****************************************************************************/
|
|||
|
|
DROP TRIGGER upd_b_T_LOV_LIMIT@
|
|||
|
|
|
|||
|
|
CREATE OR REPLACE TRIGGER upd_b_T_LOV_LIMIT
|
|||
|
|
BEFORE UPDATE ON T_LOV_LIMIT 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
|
|||
|
|
@
|