CREATE PROCEDURE [dbo].[up_SetCashBuy] @log_type int ,@auth_id uniqueidentifier ,@product_id uniqueidentifier ,@productcode int ,@productcount int ,@bcust_id nvarchar(24) ,@character_name nvarchar(16) ,@gift_recvname nvarchar(16) ,@addopt1 int ,@addopt2 int ,@addopt3 int as set nocount on declare @createtime datetime set @createtime = getdate() declare @year varchar(50) declare @month varchar(50) DECLARE @world_id VARCHAR(5) set @year = convert(varchar, datepart(yy,@createtime)) set @month = convert(varchar, datepart(mm,@createtime)) SET @world_id = CONVERT( VARCHAR, 1 ) set xact_abort on begin tran declare @char_auth_id nvarchar(50) declare @productid nvarchar(50) declare @updatesql nvarchar(2500) -- CashBuy_Log ??? ?? exec Local_CreateCashBuyTable @createtime set @char_auth_id = @auth_id set @productid = @product_id SET @updatesql = 'INSERT INTO Cash_Buy_log_' + @year + '_' + @month + '( date ,log_type ,world_id ,auth_id ,bcust_id ,character_name ,gift_recvname ,item_guid ,item_id ,item_count ,addopt1 ,addopt2 ,addopt3 ) VALUES (' + '''' +convert(nvarchar, @createtime) + '''' + ',' + '''' +convert(nvarchar,@log_type) + '''' + ',' + '''' +@world_id + '''' + ',' + '''' +@char_auth_id + '''' + ',' + '''' +@bcust_id + '''' + ',' + '''' +@character_name + '''' + ',' + '''' +@gift_recvname + '''' + ',' + '''' +@productid + '''' + ',' + '''' +convert(nvarchar,@productcode) + '''' + ',' + '''' +convert(nvarchar,@productcount) + '''' + ',' + '''' +convert(nvarchar,@addopt1) + '''' + ',' + '''' +convert(nvarchar,@addopt2) + '''' + ',' + '''' +convert(nvarchar,@addopt3) + '''' + ')' EXEC(@updatesql) if(@@error <> 0) begin rollback return end commit