--判断数据库是否存在  
IF EXISTS (SELECT * FROM MASTER..sysdatabases WHERE NAME = ''库名'') 
    PRINT ''exists ''  
else  
    PRINT ''not exists''  
 
--   判断要创建的表名是否存在  
IF EXISTS (Select * From sysObjects Where Name =''表名'' And Type In (''S'',''U'')) 
 PRINT ''exists'' 
ELSE 
 PRINT ''not exists'' 
GO  
 
 
--判断要创建临时表是否存在  
If   Object_Id( ''Tempdb.dbo.#Test'')   Is   Not   NULL--#Test 为临时表名   
        Begin  
            print   ''存在 ''  
        End  
Else  
        Begin  
            print   ''不存在 ''  
        End  
 
---------------  
--   判断要创建的存储过程名是否存在  
IF EXISTS (Select * From sysObjects Where Name =''存储过程名'' And Type In (''S'',''P''))  
 PRINT ''exists'' 
ELSE 
 PRINT ''not exists'' 
GO  
--   判断列名是否存在 
IF  EXISTS (SELECT   O.NAME AS 表名,C.NAME AS 列名 
FROM SYSOBJECTS O INNER JOIN SYSCOLUMNS C ON O.ID=C.ID  
WHERE O.NAME= ''表名'' AND C.NAME   = ''列名'') 
 SELECT ''EXISTS'' 
ELSE  
 SELECT ''NOT EXISTS'' 
 
判断表名存在的一个函数 
 
  
 
 IF COL_LENGTH( ''表名'',''列名'') IS NULL 
    PRINT ''not exists'' 
ELSE 
 PRINT ''exists'' 
 
  
 
注:a 是一个表,U代表是数据表类型 
 
类似于U的类型代码,如下所示 
 
对象类型: 
 
AF = 聚合函数 (CLR) 
 
C = CHECK 约束 
 
D = DEFAULT(约束或独立) 
 
F = FOREIGN KEY 约束 
 
PK = PRIMARY KEY 约束 
 
P = SQL 存储过程 
 
PC = 程序集 (CLR) 存储过程 
 
FN = SQL 标量函数 
 
FS = 程序集 (CLR) 标量函数 
 
FT = 程序集 (CLR) 表值函数 
 
R = 规则(旧式,独立) 
 
RF = 复制筛选过程 
 
SN = 同义词 
 
SQ = 服务队列 
 
TA = 程序集 (CLR) DML 触发器 
 
TR = SQL DML 触发器 
 
IF = SQL 内联表值函数 
 
TF = SQL 表值函数 
 
U = 表(用户定义类型) 
 
UQ = UNIQUE 约束 
 
V = 视图 
 
X = 扩展存储过程 
 
IT = 内部表

Sql中判断“数据库"、"表"、"临时表"、"存储过程"和列”是否存在的更多相关文章

  1. MS SQL 中判断 数据库, 存储过程,表,临时表,视图,函数,用户,用户创建对象 等是否存在 SQL脚本

    摘自: http://www.111cn.net/database/mssqlserver/39107.htm sql判断存储过程是否存在 判断数据库教程是否存在 Sql代码 if exists (s ...

  2. Sql中判断"数据库"、"表"、"临时表"、"存储过程"和列"是否存在

    --判断数据库是否存在 IF EXISTS (SELECT * FROM MASTER..sysdatabases WHERE NAME = '库名')    PRINT 'exists ' else ...

  3. SQL中查看数据库各表的大小

    SQL中查看数据库各表的大小 编写人:CC阿爸 2014-6-17 在日常SQL数据库的操作中,如何快速的查询数据库中各表中数据的大小. 以下有两种方法供参考: 第一种: create table # ...

  4. SQL获取所有数据库名、表名、储存过程以及参数列表

    SQL获取所有数据库名.表名.储存过程以及参数列表 1.获取所有用户名:SELECT name FROM Sysusers where status='2' and islogin='1'islogi ...

  5. SQL中的每一张表都必须设有主键吗

    问题描述: 公司的数据库表有时候会看到没有主键的,SQL中的每一张表都必须设有主键吗? 主键的作用: 1)保证实体的完整性: 2)加快数据库的操作速度: 3)在表中添加新记录时,数据库ACCESS会自 ...

  6. 使用SQL查询所有数据库名和表名

    使用SQL查询所有数据库名和表名 MySQL中查询所有数据库名和表名 查询所有数据库 show databases; 1 1 查询指定数据库中所有表名 select table_name from i ...

  7. sql server的数据库个数、表个数及表的数据量统计

    sql server的数据库个数.表个数及表的数据量统计   --由于今天要监控数据,急需统计实例中1有多少库2库里有多少表3每个表有多少数据 --将写好的代码贴出来,用到如下的: --sysobje ...

  8. MySQL 判断数据库和数据表是否存在

    MySQL 判断数据库和数据表是否存在 如何使用SQL查询语句,判断数据库和数据表是否存在? 1.判断数据库是否存在 查询SQL如下: select * from information_schema ...

  9. C# 利用mysql.data 在mysql中创建数据库及数据表

    C# 利用mysql.data 在mysql中创建数据库及数据表 using System; using System.Collections.Generic; using System.Linq; ...

随机推荐

  1. java split IP地址要用双斜杠

    示例代码: public void test() { String address = "11.12.13.14:800"; System.out.println(address. ...

  2. 恢复被win7覆盖的Ubuntu Grub

    情景:本本装有Ubuntu 12.04 + Win7 32.重装Win7 64后,Ubuntu启动菜单被覆盖. 恢复的方法有多种,思路都一样.第一步,进入Linux环境:第二步.修改Grub使其重新覆 ...

  3. Bessie的体重问题

    P1028 Bessie的体重问题 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 USACO OCT09 8TH  描述 Bessie像她的诸多姊妹一样,因 ...

  4. 包装类型的比较,如:Integer,Long,Double

    Integer, Long, Double等基本类型的包装类型,比较时两种方法:第一种:equals,  第二种: .intValue(),  .longValue() ,  .doubleValue ...

  5. java工具类系列 (四.SerializationUtils)

    java工具类系列 (四.SerializationUtils) SerializationUtils该类为序列化工具类,也是lang包下的工具,主要用于序列化操作 import java.io.Se ...

  6. 261. Graph Valid Tree

    题目: Given n nodes labeled from 0 to n - 1 and a list of undirected edges (each edge is a pair of nod ...

  7. Java API —— JDK5新特性

    JDK5新特性         自动拆装箱.泛型.增强for.静态导入.可变参数.枚举   1.增强for概述         1)简化数组和Collection集合的遍历         2)格式: ...

  8. ubuntu下android源码下载

    步骤一: 首先保证你的ubuntu系统电脑可以顺利游览google,我们是将etc下 hosts替换掉,推荐hosts: http://laod.cn/hosts/2015-google...host ...

  9. kafka的环境搭建

    kafka是一个高吞吐量的消息系统.隔离消息接收和处理过程(可理解为一个缓存) 1.kafka伪分布的部署 1.1.下载并解压 1.2.启动zk bin/zookeeper-server-start. ...

  10. 【Latex】如何在Latex中插入伪代码 —— clrscode3e

    1. 简介clrscode3e是<算法导论(第三版)>使用的伪代码的宏包,clrs其实表示的是Cormen.Leiserson.Rivest和Stein.它有个更老的版本clrscode, ...