zoukankan      html  css  js  c++  java
  • SQL常用数据库结构升级语句

    修改视图
    --SQL Server 2005 
    GO
    IF  EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[e_myWorkflowProcessModule]'))
    DROP VIEW [dbo].[e_myWorkflowProcessModule]
    GO
    
    CREATE VIEW [dbo].[e_myWorkflowProcessModule]    
    AS 
    
    --------
    GO
    修改存储过程
    --SQL2008SQL2005
    GO
    IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[GetOtherFamilyByMainCst]') AND type in (N'P', N'PC'))
    DROP PROCEDURE [dbo].[GetOtherFamilyByMainCst]
    GO
    
    CREATE PROC [dbo].[GetOtherFamilyByMainCst]
    (@familyguid uniqueidentifier)
    AS
    BEGIN
    
    END 
    GO
    修改表结构
    1创建表
    IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Bid_Publish]') AND type in (N'U'))
    DROP TABLE [dbo].[Bid_Publish]
    GO
    CREATE TABLE [dbo].[Bid_Publish](
        [HtTypeGUID] [uniqueidentifier] ,
        [BUGUID] [uniqueidentifier] NOT NULL,
        [HtTypeShortCode] [varchar](10) NULL,
        [HtTypeCode] [varchar](100) NULL,
        [HtTypeShortName] [varchar](40) NULL,
        [HtTypeName] [varchar](400) NULL,
        [ParentCode] [varchar](100) NULL,
        [Level] [tinyint] NULL  ,
        [IfEnd] [tinyint] NULL ,
        [AlterWarnRate] [money] ,
        [PayWarnRate] [money] ,
        [CostGUID] [uniqueidentifier] ,
        [FinanceHsxmCode] [varchar](20) ,
        [FinanceHsxmName] [varchar](60) ,
        [Remarks] [text] NULL,
     CONSTRAINT [PK__cb_HtType_History] PRIMARY KEY CLUSTERED 
    (
        [HtTypeGUID] ASC
    )
    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
    2修改表字段
    GO
     IF NOT EXISTS ( SELECT  *
                    FROM    syscolumns
                    WHERE   name = 'ApplyAmountBak_Bz'
                            AND id = OBJECT_ID('cb_HTFKApply') ) 
        BEGIN
       alter table [cb_HTFKApply] add  
       [ApplyAmountBak_Bz] [money];
        END
     GO 
     
     IF NOT EXISTS ( SELECT  *
                    FROM    syscolumns
                    WHERE   name = 'ApplySPAmount_Bz'
                            AND id = OBJECT_ID('cb_HTFKApply') ) 
        BEGIN
       alter table [cb_HTFKApply] add  
       [ApplySPAmount_Bz] [money];
        END
     
     GO
    创建函数,用指定分隔符将指定字符串分开后返回一个表
    IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[SplitID]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
    DROP FUNCTION [dbo].[SplitID]
    GO
    
    CREATE FUNCTION [dbo].[SplitID]
    (@String NVARCHAR (4000), @SplitChar NVARCHAR (10))
    RETURNS 
        @table TABLE (
            [ID] VARCHAR (100) NULL)
    AS
    BEGIN  
       DECLARE  @Index  INT  
       SET  @Index  =  0  
    
            IF @String <> ''
            Begin
                IF RIGHT(@String,1)<> @SplitChar 
                    SET @String = @String + @SplitChar
                IF LEFT(@String,1)= @SplitChar 
                SET @String = STUFF(@String, 1, 1, '')
            End
     
           WHILE  CHARINDEX(@SplitChar,@String,@Index)  >  0    
           BEGIN  
               INSERT INTO @table(ID)
                   VALUES (SUBSTRING(@String, @Index, CHARINDEX(@SplitChar, @String,
                    @Index) - @Index))
                   SET @index = CHARINDEX(@SplitChar, @String, @Index) + 1 END  
    RETURN  
    END
    
    
    GO
    SQL Server2005开始,TOP子句后可以跟常量或者变量,跟常量时可省略括号,即top(2)和top 2是等价的(注意不加括号时top和2间的空格),top后使用SQL变量时必须使用括号,例: 
    Sql代码
    declare @num int   
    set @num = 10    
    select top(@num) * from sys.tables  
  • 相关阅读:
    Y460/Y470 Nvidia optirum solution : switch off the nvidia card and solve screen flash problem
    matlab中提示错误使用* BLAS loading error解决方法
    学习笔记 第十四周 第一篇
    学习笔记 第十三周 第一篇
    学习笔记 第十二周 第一篇
    学习笔记 第十一周 第一篇
    学习笔记 第十周 第一篇
    学习笔记 第九周 第一篇
    学习笔记 第八周 第二篇(修改版)
    学习笔记 第八周 第二篇
  • 原文地址:https://www.cnblogs.com/zhangs1986/p/3365615.html
Copyright © 2011-2022 走看看