Files
ai_trading_api/infra/postgres/sql/03_create_table.sql
2025-12-26 17:06:47 +08:00

66 lines
2.3 KiB
SQL

DO $$
BEGIN
RAISE NOTICE '🚀============ 数据库表部署开始 ============🚀';
END $$;
DO $$
BEGIN
IF NOT EXISTS (
SELECT 1
FROM information_schema.tables
WHERE table_schema = 'public'
AND table_name = 'cn_pmi_records1'
) THEN
CREATE TABLE cn_pmi_records1 (
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_records1_at
BEFORE UPDATE ON cn_pmi_records1
FOR EACH ROW
EXECUTE FUNCTION moddatetime(updated_at);
RAISE NOTICE 'cn_pmi_records1 表已创建';
ELSE
RAISE NOTICE 'cn_pmi_records1 表已存在,跳过';
END IF;
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 '✅============ 数据库表部署完成 ============✅';
END $$;