From d96eb3e00a51d0af433dbb80ac2d0e496e570028 Mon Sep 17 00:00:00 2001 From: WrBug Date: Thu, 1 Jan 2026 22:33:23 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=81=A2=E5=A4=8D=20V1=20migration=20?= =?UTF-8?q?=E6=96=87=E4=BB=B6=EF=BC=8C=E9=81=BF=E5=85=8D=20checksum=20?= =?UTF-8?q?=E4=B8=8D=E5=8C=B9=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 保持 V1__init_database.sql 的原有内容不变,避免破坏已有数据库的 migration checksum。 failed_trade 表的删除将通过 V16 migration 处理。 --- .../db/migration/V1__init_database.sql | 26 ++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/backend/src/main/resources/db/migration/V1__init_database.sql b/backend/src/main/resources/db/migration/V1__init_database.sql index dc6af8a..4061c67 100644 --- a/backend/src/main/resources/db/migration/V1__init_database.sql +++ b/backend/src/main/resources/db/migration/V1__init_database.sql @@ -172,8 +172,32 @@ CREATE TABLE IF NOT EXISTS processed_trade ( ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='已处理交易表(用于去重)'; -- ============================================ +-- 9. 创建失败交易记录表 -- ============================================ --- 9. 创建用户表(用于JWT登录鉴权) +CREATE TABLE IF NOT EXISTS failed_trade ( + id BIGINT AUTO_INCREMENT PRIMARY KEY, + leader_id BIGINT NOT NULL COMMENT 'Leader ID', + leader_trade_id VARCHAR(100) NOT NULL COMMENT 'Leader 的交易ID', + trade_type VARCHAR(10) NOT NULL COMMENT '交易类型:BUY 或 SELL', + copy_trading_id BIGINT NOT NULL COMMENT '跟单关系ID', + account_id BIGINT NOT NULL COMMENT '账户ID', + market_id VARCHAR(100) NOT NULL COMMENT '市场地址', + side VARCHAR(10) NOT NULL COMMENT '方向:YES/NO', + price VARCHAR(50) NOT NULL COMMENT '价格', + size VARCHAR(50) NOT NULL COMMENT '数量', + error_message TEXT COMMENT '错误信息', + retry_count INT NOT NULL DEFAULT 0 COMMENT '重试次数', + failed_at BIGINT NOT NULL COMMENT '失败时间(毫秒时间戳)', + created_at BIGINT NOT NULL COMMENT '创建时间(毫秒时间戳)', + INDEX idx_leader_trade (leader_id, leader_trade_id), + INDEX idx_copy_trading (copy_trading_id), + INDEX idx_failed_at (failed_at), + FOREIGN KEY (copy_trading_id) REFERENCES copy_trading(id) ON DELETE CASCADE, + FOREIGN KEY (leader_id) REFERENCES copy_trading_leaders(id) ON DELETE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='失败交易记录表'; + +-- ============================================ +-- 10. 创建用户表(用于JWT登录鉴权) -- ============================================ CREATE TABLE IF NOT EXISTS users ( id BIGINT AUTO_INCREMENT PRIMARY KEY,