190 lines
7.6 KiB
Transact-SQL
190 lines
7.6 KiB
Transact-SQL
-- 创建中奖公告配置表
|
|
-- 用于首页展示假中奖公告,营造热闹氛围
|
|
|
|
-- 创建中奖公告配置表
|
|
IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'prize_announcements')
|
|
BEGIN
|
|
CREATE TABLE prize_announcements (
|
|
id INT IDENTITY(1,1) NOT NULL,
|
|
user_avatar NVARCHAR(500) NULL, -- 用户头像URL
|
|
user_name NVARCHAR(50) NOT NULL, -- 用户名称
|
|
prize_level NVARCHAR(20) NOT NULL, -- 奖品等级(如:无上、传说、史诗、稀有)
|
|
prize_name NVARCHAR(100) NOT NULL, -- 奖品名称
|
|
sort INT NOT NULL DEFAULT 0, -- 排序值,越小越靠前
|
|
is_enabled BIT NOT NULL DEFAULT 1, -- 是否启用
|
|
created_at DATETIME2 NOT NULL DEFAULT GETDATE(),
|
|
updated_at DATETIME2 NOT NULL DEFAULT GETDATE(),
|
|
CONSTRAINT pk_prize_announcements PRIMARY KEY (id)
|
|
);
|
|
|
|
-- 创建索引
|
|
CREATE INDEX ix_prize_announcements_is_enabled ON prize_announcements(is_enabled);
|
|
CREATE INDEX ix_prize_announcements_sort ON prize_announcements(sort);
|
|
|
|
PRINT N'创建中奖公告配置表 prize_announcements 成功';
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
PRINT N'中奖公告配置表 prize_announcements 已存在';
|
|
END
|
|
GO
|
|
|
|
-- 添加表注释
|
|
IF EXISTS (SELECT * FROM sys.tables WHERE name = 'prize_announcements')
|
|
BEGIN
|
|
-- 检查是否已存在表注释
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = 0
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'中奖公告配置表,用于首页展示假中奖公告,营造热闹氛围',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements';
|
|
END
|
|
|
|
-- 添加列注释
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'id')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'主键ID',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'id';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'user_avatar')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'用户头像URL',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'user_avatar';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'user_name')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'用户名称',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'user_name';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'prize_level')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'奖品等级(如:无上、传说、史诗、稀有)',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'prize_level';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'prize_name')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'奖品名称',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'prize_name';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'sort')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'排序值,越小越靠前',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'sort';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'is_enabled')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'是否启用 1-启用 0-禁用',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'is_enabled';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'created_at')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'创建时间',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'created_at';
|
|
END
|
|
|
|
IF NOT EXISTS (
|
|
SELECT * FROM sys.extended_properties
|
|
WHERE major_id = OBJECT_ID('prize_announcements')
|
|
AND minor_id = (SELECT column_id FROM sys.columns WHERE object_id = OBJECT_ID('prize_announcements') AND name = 'updated_at')
|
|
AND name = 'MS_Description'
|
|
)
|
|
BEGIN
|
|
EXEC sp_addextendedproperty
|
|
@name = N'MS_Description',
|
|
@value = N'更新时间',
|
|
@level0type = N'SCHEMA', @level0name = N'dbo',
|
|
@level1type = N'TABLE', @level1name = N'prize_announcements',
|
|
@level2type = N'COLUMN', @level2name = N'updated_at';
|
|
END
|
|
END
|
|
GO
|
|
|
|
PRINT N'中奖公告配置表迁移脚本执行完成';
|
|
GO
|