From de31efa9c1262f220c6b3a1000b5407bf68644e9 Mon Sep 17 00:00:00 2001 From: zhuxu Date: Thu, 3 Jul 2025 21:06:32 +0800 Subject: [PATCH] use uuid as primary key in component --- model/ddl.sql | 7 +++---- model/ddl_2_component.sql | 3 +-- model/ddl_5_measurement.sql | 7 +++++-- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/model/ddl.sql b/model/ddl.sql index ddd8514..1206f1e 100644 --- a/model/ddl.sql +++ b/model/ddl.sql @@ -72,8 +72,7 @@ CREATE TABLE PUBLIC.PAGE ( ); CREATE TABLE PUBLIC.COMPONENT ( - ID BIGSERIAL PRIMARY KEY, - GLOBAL_UUID UUID NOT NULL DEFAULT GEN_RANDOM_UUID(), + GLOBAL_UUID UUID PRIMARY KEY DEFAULT GEN_RANDOM_UUID(), NSPATH VARCHAR(32) NOT NULL DEFAULT '', TAG VARCHAR(32) NOT NULL DEFAULT '', NAME VARCHAR(64) NOT NULL DEFAULT '', @@ -138,10 +137,10 @@ CREATE TABLE PUBLIC.MEASUREMENT ( DATA_SOURCE JSONB NOT NULL DEFAULT '{}', -- {"type":1,"main_pos":"","sub_pos":""} SIZE INTEGER NOT NULL DEFAULT -1, BAY_ID BIGINT NOT NULL, - COMPONENT_ID BIGINT NOT NULL, + COMPONENT_UUID UUID NOT NULL, OP INTEGER NOT NULL DEFAULT -1, TS TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (BAY_ID) REFERENCES PUBLIC.BAY (ID), - FOREIGN KEY (COMPONENT_ID) REFERENCES PUBLIC.COMPONENT (ID) + FOREIGN KEY (COMPONENT_UUID) REFERENCES PUBLIC.COMPONENT (GLOBAL_UUID) ); diff --git a/model/ddl_2_component.sql b/model/ddl_2_component.sql index e97a710..9bafd11 100644 --- a/model/ddl_2_component.sql +++ b/model/ddl_2_component.sql @@ -10,7 +10,6 @@ CREATE SEQUENCE IF NOT EXISTS public.component_id_seq; CREATE TABLE IF NOT EXISTS public.component ( - id integer NOT NULL DEFAULT nextval('component_id_seq'::regclass), global_uuid uuid NOT NULL DEFAULT gen_random_uuid(), nspath character varying(32) COLLATE pg_catalog."default", tag character varying(32) COLLATE pg_catalog."default" NOT NULL, @@ -29,7 +28,7 @@ CREATE TABLE IF NOT EXISTS public.component context jsonb NOT NULL DEFAULT '{}'::jsonb, op integer NOT NULL DEFAULT '-1'::integer, ts timestamp with time zone NOT NULL DEFAULT CURRENT_TIMESTAMP, - CONSTRAINT component_id_PrimaryKey PRIMARY KEY (id) + CONSTRAINT component_pkey PRIMARY KEY (global_uuid) ) TABLESPACE pg_default; diff --git a/model/ddl_5_measurement.sql b/model/ddl_5_measurement.sql index cca9fd8..18a9b8f 100644 --- a/model/ddl_5_measurement.sql +++ b/model/ddl_5_measurement.sql @@ -10,7 +10,10 @@ CREATE TABLE PUBLIC.MEASUREMENT ( DATA_SOURCE JSONB NOT NULL DEFAULT '{}', -- {"type":1,"main_pos":"","sub_pos":""} SIZE INTEGER NOT NULL DEFAULT -1, BAY_ID INTEGER NOT NULL DEFAULT -1, - COMPONENT_ID INTEGER NOT NULL DEFAULT -1, + COMPONENT_UUID UUID NOT NULL, OP INTEGER NOT NULL DEFAULT -1, - TS TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP + TS TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, + + FOREIGN KEY (BAY_ID) REFERENCES PUBLIC.BAY (ID), + FOREIGN KEY (COMPONENT_UUID) REFERENCES PUBLIC.COMPONENT (GLOBAL_UUID) ); \ No newline at end of file