diff --git a/create/README.md b/create/README.md index 5a69648..c9e3bed 100644 --- a/create/README.md +++ b/create/README.md @@ -1,10 +1,13 @@ -以下是我的工程目录组织。 -``` + + + . ├── LICENSE ├── README.md ├── create -│ └── create.py +│ ├── README.md +│ ├── create.sh +│ └── create_table.py ├── docker-compose.yaml ├── infra │ └── postgres @@ -14,87 +17,4 @@ │ ├── 01_uuid_v7_setup.sql │ ├── 02_create_function.sql │ └── 03_create_table.sql -└── services - └── cn_futures_trading_records - ├── README.md - ├── dev.sh - └── src - ├── Dockerfile - ├── crud - │ └── create.go - ├── go.mod - ├── go.sum - ├── infra - │ ├── launch.go - │ ├── logger.go - │ └── postgres.go - ├── main.go - └── model - └── payload.go -``` - - - -以下是 03_create_table.sql 的内容: - -```sql --- ========================================================= --- table.sql (PostgreSQL 17.4+) --- ========================================================= -\pset pager off -\timing on -\c postgres; - -CREATE EXTENSION IF NOT EXISTS "moddatetime" SCHEMA public; - -DO $$ -BEGIN - RAISE NOTICE '🚀============ 数据库表部署开始 ============🚀'; -END $$; - --- create table logic - -DO $$ -BEGIN - RAISE NOTICE '============ 数据库表部署完成 ============'; -END $$; -``` - - - -我需要你帮我在/create/create.py 中实现一下逻辑: -1、定义一个变量参数,方便我调整表名称。 - -2、通过我定义的表名称把一下的替换以下的 `tabe_name`关键字。 - -```sql -DO $$ -BEGIN - IF NOT EXISTS ( - SELECT 1 - FROM information_schema.tables - WHERE table_schema = 'public' - AND table_name = 'tabe_name' - ) THEN - CREATE TABLE tabe_name ( - id UUID DEFAULT gen_random_uuid() PRIMARY KEY, -- id - payload JSONB NOT NULL, -- 数据 - deleted BOOLEAN NOT NULL DEFAULT FALSE, -- 删除状态 - created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP, -- 记录创建时间 - updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP -- 记录修改时间 - ); - - -- 3 触发器:自动刷新 updated_at - CREATE TRIGGER trg_tabe_name_at - BEFORE UPDATE ON tabe_name - FOR EACH ROW - EXECUTE FUNCTION moddatetime(updated_at); - - RAISE NOTICE 'tabe_name 表已创建'; - ELSE - RAISE NOTICE 'tabe_name 表已存在,跳过'; - END IF; -END $$; -``` - -3、拿到2中的处理结果,写入 03_create_table.sql 中,写入规则为则追加到""部署完成"日志上面。 \ No newline at end of file +└── services \ No newline at end of file