From b9dd7021cc640d4fd4f209999c9eee572687772c Mon Sep 17 00:00:00 2001 From: zhuxu Date: Fri, 14 Mar 2025 19:47:27 +0800 Subject: [PATCH] fine-tune --- base_model/ddl_v2.sql | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/base_model/ddl_v2.sql b/base_model/ddl_v2.sql index 5cc3e22..faeb114 100644 --- a/base_model/ddl_v2.sql +++ b/base_model/ddl_v2.sql @@ -27,23 +27,24 @@ CREATE TABLE BASIC.MODEL_TYPE ( UNIQUE (MODEL_TYPE) ); -CREATE TABLE BASIC.MAPPING_MODEL_GROUP ( +CREATE TABLE BASIC.MODEL_GROUP ( ID SERIAL PRIMARY KEY, - MODEL_TYPE_ID INTEGER NOT NULL DEFAULT -1, - ATTRIBUTE_GROUP_ID INTEGER NOT NULL DEFAULT -1, + MODEL_TYPE_ID INTEGER NOT NULL, + ATTRIBUTE_GROUP_ID INTEGER NOT NULL, UNIQUE (MODEL_TYPE_ID, ATTRIBUTE_GROUP_ID), - FOREIGN KEY (MODEL_TYPE_ID) REFERENCES BASIC.MODEL_TYPE (ID), + FOREIGN KEY (MODEL_TYPE_ID) REFERENCES BASIC.MODEL_TYPE (ID) ON DELETE CASCADE, FOREIGN KEY (ATTRIBUTE_GROUP_ID) REFERENCES BASIC.ATTRIBUTE_GROUP (ID) ); CREATE TABLE BASIC.ATTRIBUTE ( ID SERIAL PRIMARY KEY, - ATTRIBUTE_GROUP_ID INTEGER NOT NULL DEFAULT -1, + MODEL_GROUP_ID INTEGER NOT NULL, + ATTRIBUTE_GROUP_ID INTEGER NOT NULL, ATTRIBUTE VARCHAR(128) NOT NULL DEFAULT '', ATTRIBUTE_NAME VARCHAR(64) NOT NULL DEFAULT '', - DATA_TYPE_ID INTEGER NOT NULL DEFAULT -1, + DATA_TYPE_ID INTEGER NOT NULL, LENGTH_PRECISION INTEGER NOT NULL DEFAULT 0, SCALE INTEGER NOT NULL DEFAULT 0, IS_NOT_NULL SMALLINT NOT NULL DEFAULT -1, @@ -52,7 +53,8 @@ CREATE TABLE BASIC.ATTRIBUTE ( UNIQUE (ATTRIBUTE_GROUP_ID, ATTRIBUTE), UNIQUE (ATTRIBUTE, ATTRIBUTE_NAME), - + + FOREIGN KEY (MODEL_GROUP_ID) REFERENCES BASIC.MODEL_GROUP (ID) ON DELETE CASCADE, FOREIGN KEY (ATTRIBUTE_GROUP_ID) REFERENCES BASIC.ATTRIBUTE_GROUP (ID), FOREIGN KEY (DATA_TYPE_ID) REFERENCES BASIC.DATA_TYPE (ID) ); @@ -60,15 +62,11 @@ CREATE TABLE BASIC.ATTRIBUTE ( CREATE TABLE BASIC.ATTRIBUTE_TEMPLATE ( ID SERIAL PRIMARY KEY, TEMPLATE_NAME VARCHAR(64) NOT NULL DEFAULT '', - ATTRIBUTE_GROUP_ID INTEGER NOT NULL DEFAULT -1, - DATA_TYPE_ID INTEGER NOT NULL DEFAULT -1, + DATA_TYPE_ID INTEGER NOT NULL, LENGTH_PRECISION INTEGER NOT NULL DEFAULT 0, SCALE INTEGER NOT NULL DEFAULT 0, IS_NOT_NULL SMALLINT NOT NULL DEFAULT -1, - DEFAULT_VALUE VARCHAR(64) NOT NULL DEFAULT '', - VALUE_RANGE VARCHAR(128) NOT NULL DEFAULT '', - FOREIGN KEY (ATTRIBUTE_GROUP_ID) REFERENCES BASIC.ATTRIBUTE_GROUP (ID), FOREIGN KEY (DATA_TYPE_ID) REFERENCES BASIC.DATA_TYPE (ID) );