前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL常用数据库结构升级语句

SQL常用数据库结构升级语句

作者头像
欢醉
发布2018-01-22 11:01:10
8480
发布2018-01-22 11:01:10
举报
文章被收录于专栏:james大数据架构james大数据架构
代码语言:js
复制
修改视图

--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
代码语言:javascript
复制
修改存储过程
--SQL2008\SQL2005
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
代码语言:javascript
复制
修改表结构
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]
代码语言:javascript
复制
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
代码语言:javascript
复制
创建函数,用指定分隔符将指定字符串分开后返回一个表
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
代码语言:javascript
复制
SQL Server2005开始,TOP子句后可以跟常量或者变量,跟常量时可省略括号,即top(2)和top 2是等价的(注意不加括号时top和2间的空格),top后使用SQL变量时必须使用括号,例: 
Sql代码
declare @num int   
set @num = 10    
select top(@num) * from sys.tables  
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013-10-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档