106 lines
3.4 KiB
Transact-SQL
106 lines
3.4 KiB
Transact-SQL
CREATE PROCEDURE [dbo].[Local_CreateMoneyTable]
|
|
@createtime datetime
|
|
as
|
|
set nocount on
|
|
|
|
declare @year varchar(50)
|
|
declare @month varchar(50)
|
|
|
|
set @year = convert(varchar, datepart(yy,@createtime))
|
|
set @month = convert(varchar, datepart(mm,@createtime))
|
|
|
|
if OBJECT_ID( 'Money_Log_'+ @year+'_'+@month ) IS NULL
|
|
begin
|
|
declare @br varchar(1500)
|
|
set @br='CREATE TABLE Money_Log_'+ @year+'_'+@month+
|
|
'(
|
|
[log_id] [bigint] IDENTITY(1,1) NOT NULL,
|
|
[log_type] [smallint] NOT NULL,
|
|
[world_id] [int] NOT NULL,
|
|
[auth_id] [uniqueidentifier] NOT NULL,
|
|
[bcust_id] [nvarchar](50) NOT NULL,
|
|
[character_id] [uniqueidentifier] NOT NULL,
|
|
[character_name] [nvarchar](50) NOT NULL,
|
|
|
|
[other_auth_id] [uniqueidentifier] NULL,
|
|
[other_bcust_id] [nvarchar](50) NULL,
|
|
[other_character_id] [uniqueidentifier] NULL,
|
|
[other_character_name] [nvarchar](50) NULL,
|
|
|
|
[before_money] [int] NOT NULL,
|
|
[after_money] [int] NOT NULL,
|
|
[change_money] [int] NOT NULL,
|
|
|
|
[entry_date] [datetime] NOT NULL CONSTRAINT [DF_Money_Log_'+ @year+'_'+ @month+'_entry_date] DEFAULT (getdate()),
|
|
)'
|
|
exec(@br)
|
|
-----
|
|
set @br='ALTER TABLE [dbo].[Money_Log_'+ @year+'_'+ @month+'] WITH NOCHECK ADD
|
|
CONSTRAINT [PK_log_id_Money_Log_'+ @year+'_'+ @month+'] PRIMARY KEY CLUSTERED
|
|
(
|
|
[log_id] ASC
|
|
) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_world_id_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[world_id] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_entry_date_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[entry_date] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_logtype_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[log_type] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_bcust_id_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[bcust_id] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_character_id_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[character_id] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_character_name_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[character_name] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_other_auth_id_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[other_auth_id] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_other_bcust_id_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[other_bcust_id] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_other_character_id_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[other_character_id] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
-----
|
|
set @br='CREATE NONCLUSTERED INDEX [IX_other_character_name_Money_Log_'+ @year+'_'+ @month+'] ON [dbo].[Money_Log_'+ @year+'_'+ @month+']
|
|
(
|
|
[other_character_name] ASC
|
|
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]'
|
|
exec(@br)
|
|
|
|
|
|
end
|