zoukankan      html  css  js  c++  java
  • SQL SERVER 判断是否存在数据库、表、列、视图

    SQL SERVER 判断是否存在数据库、表、列、视图

    --1. 判断数据库是否存在
    IF EXISTS (SELECT * FROM SYS.DATABASES WHERE NAME = '数据库名') 
      DROP DATABASE [数据库名] 
    --2. 判断表是否存在
    IF EXISTS (SELECT * FROM SYSOBJECTS WHERE ID = OBJECT_ID(N'[表名]') AND OBJECTPROPERTY(ID, N'ISUSERTABLE') = 1) 
      PRINT  '存在'   
    ELSE   
      PRINT  '不存在'
    --3. 判断存储过程是否存在
    IF EXISTS (SELECT * FROM SYSOBJECTS WHERE ID = OBJECT_ID(N'[存储过程名]') AND OBJECTPROPERTY(ID, N'ISPROCEDURE') = 1) 
      PRINT  '存在'   
    ELSE   
      PRINT  '不存在'
    --4. 判断临时表是否存在
    IF OBJECT_ID('TEMPDB..#临时表名') IS NOT NULL   
      PRINT  '存在'   
    ELSE   
      PRINT  '不存在'
    --5. 判断视图是否存在
    --SQL SERVER 2005  
    IF EXISTS (SELECT * FROM SYS.VIEWS WHERE OBJECT_ID = '[DBO].[视图名]'
      PRINT  '存在'   
    ELSE   
      PRINT  '不存在'
    --6. 判断函数是否存在 
    IF EXISTS (SELECT * FROM DBO.SYSOBJECTS WHERE ID = OBJECT_ID(N'[DBO].[函数名]') AND XTYPE IN (N'FN', N'IF', N'TF'))   
      PRINT  '存在'   
    ELSE   
      PRINT  '不存在'
    --7. 获取用户创建的对象信息
    SELECT [NAME],[ID],CRDATE FROM SYSOBJECTS WHERE XTYPE='U' 
    /* 
    XTYPE 的表示参数类型,通常包括如下这些 
    C = CHECK 约束 
    D = 默认值或 DEFAULT 约束 
    F = FOREIGN KEY 约束 
    L = 日志 
    FN = 标量函数 
    IF = 内嵌表函数 
    P = 存储过程 
    PK = PRIMARY KEY 约束(类型是 K) 
    RF = 复制筛选存储过程 
    S = 系统表 
    TF = 表函数 
    TR = 触发器 
    U = 用户表 
    UQ = UNIQUE 约束(类型是 K) 
    V = 视图 
    X = 扩展存储过程 
    */ 
    --8. 判断列是否存在
    IF EXISTS(SELECT * FROM SYSCOLUMNS WHERE ID = OBJECT_ID('表名') AND NAME = '列名') 
      PRINT  '存在'   
    ELSE   
      PRINT  '不存在'
    --9. 判断列是否自增列
    IF COLUMNPROPERTY(OBJECT_ID('表名'),'列名','ISIDENTITY') = 1 
      PRINT '自增列' 
    ELSE 
      PRINT '不是自增列'
      
    SELECT * FROM SYS.COLUMNS WHERE OBJECT_ID = OBJECT_ID('表名')  AND IS_IDENTITY = 1
    
    --10. 判断表中是否存在索引
    IF EXISTS(SELECT * FROM SYSINDEXES WHERE ID = OBJECT_ID('表名') AND NAME='索引名')   
      PRINT  '存在'   
    ELSE   
      PRINT  '不存在'
    --11. 查看数据库中对象
    SELECT * FROM SYS.SYSOBJECTS WHERE NAME='对象名'
  • 相关阅读:
    百度地图引用
    【转,待验证】HTML文件中也玩include文件包含
    【转】php.ini 里加载的DLL文件 中文说明
    iOS 申请账号使用的邓白氏网址 (免费)
    Xcode 插件
    关于时间的
    mac 终端命令集合
    2015年3月苹果新的审核标准(PDF)
    2015年3月苹果新的审核标准(中文)
    2015年3月苹果新的审核标准(英文)
  • 原文地址:https://www.cnblogs.com/liushen/p/4306828.html
Copyright © 2011-2022 走看看