Files
ssq-desk/docs/01-数据库/2026-01-07-SSQ-init.sql
2026-01-14 14:17:38 +08:00

64 lines
3.7 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- ============================================
-- 双色球桌面应用数据库初始化脚本
-- ============================================
-- 创建时间2026-01-07
-- 维护者JueChen
--
-- 说明:
-- 1. 此脚本用于 MySQL 远程数据库初始化
-- 2. 表结构由程序通过 GORM AutoMigrate 自动创建,此脚本作为参考
-- 3. 时间字段由程序显式设置,不使用数据库默认值
-- 4. 如需手动执行请确保数据库已创建ssq
-- ============================================
-- ============================================
-- 1. 双色球历史开奖数据表 (ssq_history)
-- ============================================
-- 用途:存储双色球历史开奖数据
-- 使用场景MySQL 远程数据库和 SQLite 本地数据库
CREATE TABLE IF NOT EXISTS `ssq_history` (
`id` INT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`issue_number` VARCHAR(20) NOT NULL COMMENT '期号如2025145',
`open_date` DATE NULL COMMENT '开奖日期(允许为空)',
`red_ball_1` TINYINT NOT NULL COMMENT '红球1范围1-33',
`red_ball_2` TINYINT NOT NULL COMMENT '红球2范围1-33',
`red_ball_3` TINYINT NOT NULL COMMENT '红球3范围1-33',
`red_ball_4` TINYINT NOT NULL COMMENT '红球4范围1-33',
`red_ball_5` TINYINT NOT NULL COMMENT '红球5范围1-33',
`red_ball_6` TINYINT NOT NULL COMMENT '红球6范围1-33',
`blue_ball` TINYINT NOT NULL COMMENT '蓝球范围1-16',
`created_at` DATETIME NOT NULL COMMENT '创建时间(由程序设置)',
`updated_at` DATETIME NOT NULL COMMENT '更新时间(由程序设置)',
PRIMARY KEY (`id`),
INDEX `idx_issue_number` (`issue_number`),
INDEX `idx_open_date` (`open_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='双色球历史开奖数据表用于MySQL远程数据库和SQLite本地数据库';
CREATE TABLE IF NOT EXISTS `sys_authorization_code` (
`id` INT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`license_code` VARCHAR(100) NOT NULL COMMENT '授权码(唯一,用于标识授权)',
`device_id` VARCHAR(100) NOT NULL COMMENT '设备IDMD5哈希基于主机名、用户目录、操作系统生成用于设备绑定',
`activated_at` DATETIME NOT NULL COMMENT '激活时间(授权激活的时间)',
`expires_at` DATETIME NULL COMMENT '过期时间可选NULL表示永不过期',
`status` TINYINT NOT NULL DEFAULT 1 COMMENT '状态1:有效 0:无效)',
`created_at` DATETIME NOT NULL COMMENT '创建时间(由程序设置)',
`updated_at` DATETIME NOT NULL COMMENT '更新时间(由程序设置)',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_license_code` (`license_code`),
INDEX `idx_device_id` (`device_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='授权信息表用于MySQL远程数据库和SQLite本地数据库';
CREATE TABLE IF NOT EXISTS `sys_version` (
`id` INT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`version` VARCHAR(20) NOT NULL COMMENT '版本号语义化版本如1.0.0',
`download_url` VARCHAR(500) NULL COMMENT '下载地址更新包下载URL',
`changelog` TEXT NULL COMMENT '更新日志Markdown格式',
`force_update` TINYINT NOT NULL DEFAULT 0 COMMENT '是否强制更新1:是 0:否)',
`release_date` DATE NULL COMMENT '发布日期',
`created_at` DATETIME NOT NULL COMMENT '创建时间(由程序设置)',
`updated_at` DATETIME NOT NULL COMMENT '更新时间(由程序设置)',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_version` (`version`),
INDEX `idx_release_date` (`release_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='版本信息表用于MySQL远程数据库存储应用版本发布信息';