add
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
set -e # 遇到错误立即退出
|
||||
|
||||
# 定义表名变量,可以根据需要修改
|
||||
TABLE_NAME="cn_pmi_records"
|
||||
TABLE_NAME="cn_pmi_a_records"
|
||||
|
||||
echo "🚀 启动Python容器执行create_table.py..."
|
||||
echo "📋 目标表名: ${TABLE_NAME}"
|
||||
|
||||
@@ -7,8 +7,8 @@ create.py - 动态生成PostgreSQL建表SQL语句
|
||||
import os
|
||||
import re
|
||||
|
||||
# 1. 定义表名称变量,方便调整
|
||||
table_name = "cn_pmi_records" # 可以根据需要修改表名
|
||||
# 1. 从环境变量获取表名,如果没有设置则使用默认值
|
||||
table_name = os.environ.get('TABLE_NAME', 'records')
|
||||
|
||||
# 2. 定义SQL模板
|
||||
sql_template = f"""DO $$
|
||||
|
||||
@@ -3,34 +3,6 @@ BEGIN
|
||||
RAISE NOTICE '🚀============ 数据库表部署开始 ============🚀';
|
||||
END $$;
|
||||
|
||||
DO $$
|
||||
BEGIN
|
||||
IF NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM information_schema.tables
|
||||
WHERE table_schema = 'public'
|
||||
AND table_name = 'cn_pmi_records'
|
||||
) THEN
|
||||
CREATE TABLE cn_pmi_records (
|
||||
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_cn_pmi_records_at
|
||||
BEFORE UPDATE ON cn_pmi_records
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION moddatetime(updated_at);
|
||||
|
||||
RAISE NOTICE 'cn_pmi_records 表已创建';
|
||||
ELSE
|
||||
RAISE NOTICE 'cn_pmi_records 表已存在,跳过';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
DO $$
|
||||
BEGIN
|
||||
RAISE NOTICE '✅============ 数据库表部署完成 ============✅';
|
||||
|
||||
Reference in New Issue
Block a user