add
This commit is contained in:
36
backend/futures_trade_record/sql/03_create_deal_table.sql
Normal file
36
backend/futures_trade_record/sql/03_create_deal_table.sql
Normal file
@@ -0,0 +1,36 @@
|
||||
-- 切换到目标数据库
|
||||
\c postgres;
|
||||
|
||||
CREATE OR REPLACE FUNCTION update_deal_modified_column()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
NEW.updated_at = CURRENT_TIMESTAMP;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql VOLATILE;
|
||||
|
||||
DO $$
|
||||
BEGIN
|
||||
IF NOT EXISTS (SELECT 1 FROM information_schema.tables WHERE table_deal = 'deal') THEN
|
||||
CREATE TABLE deal (
|
||||
id UUID DEFAULT gen_random_uuid_v7() PRIMARY KEY NOT NULL,
|
||||
record_id UUID NOT NULL,
|
||||
variety_id VARCHAR(50) NOT NULL, -- 品种id
|
||||
contract VARCHAR(50) NOT NULL, -- 合约(如:2401)
|
||||
direction VARCHAR(20) NOT NULL CHECK (direction IN ('多', '空')), -- 限制合法方向
|
||||
variety_tick NUMERIC(12, 6),
|
||||
variety_tick_price NUMERIC(12, 6),
|
||||
deleted BOOLEAN NOT NULL DEFAULT FALSE,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
CREATE TRIGGER update_deal_updated_at
|
||||
BEFORE UPDATE ON "deal"
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION update_deal_modified_column();
|
||||
|
||||
RAISE NOTICE 'created deal table and trigger';
|
||||
ELSE
|
||||
RAISE NOTICE 'deal table already exists';
|
||||
END IF;
|
||||
END $$;
|
||||
@@ -18,9 +18,8 @@ BEGIN
|
||||
year INT NOT NULL,
|
||||
month INT NOT NULL,
|
||||
day INT NOT NULL,
|
||||
variety_id VARCHAR(50) NOT NULL, -- 品种id
|
||||
contract VARCHAR(50) NOT NULL, -- 合约(如:2401)
|
||||
direction VARCHAR(20) NOT NULL CHECK (direction IN ('多', '空')), -- 限制合法方向
|
||||
open_price NUMERIC(12, 6),
|
||||
open_commission NUMERIC(10, 6) DEFAULT 0.00,
|
||||
deleted BOOLEAN NOT NULL DEFAULT FALSE,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
@@ -18,9 +18,8 @@ BEGIN
|
||||
year INT NOT NULL,
|
||||
month INT NOT NULL,
|
||||
day INT NOT NULL,
|
||||
variety_id VARCHAR(50) NOT NULL, -- 品种id
|
||||
contract VARCHAR(50) NOT NULL, -- 合约(如:2401)
|
||||
direction VARCHAR(20) NOT NULL CHECK (direction IN ('多', '空')), -- 限制合法方向
|
||||
close_price NUMERIC(12, 6),
|
||||
close_commission NUMERIC(10, 6) DEFAULT 0.00,
|
||||
deleted BOOLEAN NOT NULL DEFAULT FALSE,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
||||
Reference in New Issue
Block a user