ξσ Dicky's Blog σξ

朋友多了,寂寞卻沒少,朋友沒有了你,得到了天下最高的技術又能如何?人類的全部才能無非是時間和耐心的混合物.---巴尔扎克

Traditional Chinese

导航

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

-- ==============================================================
--
 类型:    存储过程
--
 名称:    CreateSystemLogTable
--
 参数:    无
--
 作者:    Dicky
--
 日期:    2009-1-8 9:48
--
 描述:    检查当前年中1-12月的系统日志表是否存在,不存在则创建,
--
            表名称如System_log_20091System_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

posted on 2009-01-08 11:32  ξσ Dicky σξ  阅读(695)  评论(0编辑  收藏  举报