创建系统日志表的存储过程(CreateSystemLogTable)

--  ==============================================================
--
 类型:    存储过程
--
 名称:    CreateSystemLogTable
--
 参数:    无
--
 作者:    Dicky
--
 日期:    2009-1-8 9:48
--
 描述:    检查当前年中1-12月的系统日志表是否存在,不存在则创建,
--
            表名称如System_log_20091...System_log_200912。
--
 ==============================================================
CREATE   PROCEDURE   [ CreateSystemLogTable ]  
AS
BEGIN
    
DECLARE   @tableName   NVARCHAR ( 50 )
    
DECLARE   @createSql   NVARCHAR ( 500 )
    
DECLARE   @i   INT
    
SET   @i   =   1
    
WHILE   @i   <=   12   /* 循环1-12个月 */
    
BEGIN
        
SET   @tableName   =   ' System_log_ '   +   LTRIM ( YEAR ( GETDATE ()))  +   LTRIM ( @i )
        
IF   NOT   EXISTS  ( SELECT   *   FROM  sysobjects  WHERE  id  =   OBJECT_ID (N ' [ '   +   @tableName   +   ' ] ' AND   OBJECTPROPERTY (id, N ' IsUserTable ' =   1 )
            
BEGIN
                
SET   @createSql   =   '
                    CREATE TABLE [
'   +   @tableName   +   ' ] (
                        [id] [int] IDENTITY (1, 1) NOT NULL ,
                        [userid] [int] NULL ,
                        [type] [nvarchar] (50) NULL ,
                        [context] [nvarchar] (50) NULL ,
                        [ip] [nvarchar] (50) NULL ,
                        [createDate] [nvarchar] (50) NULL 
                    ) ON [PRIMARY]

                    ALTER TABLE [
'   +   @tableName   +   ' ] ADD 
                        CONSTRAINT [DF_
'   +   @tableName   +   ' _createDate] DEFAULT (GETDATE()) FOR [createDate] '
                
EXEC ( @createSql )
            
END
        
SET   @i   =   @i   +   1
    
End
END

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值