--判断数据库是否存在  
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. 网络上下载的Ghost系统含威胁

  2. 树状数组的笔记√(hzwer blog)

    int lowbit(int x) { return x&(-x); } lowbit()的返回值就是 2^k 次方的值. 求数组的和的算法: (1)首先,令sum=0,转向第二步: (2)接 ...

  3. 李洪强iOS开发之OC[014] -对象的存储细节

    // //  main.m //  13 - 对象的存储细节 // //  Created by vic fan on 16/7/9. //  Copyright © 2016年 李洪强. All r ...

  4. 修改linux命令行提示符路径显示

    命令显示行太长,影响观感,这样需要修改,具体方法: 1. 修改 ~/.bashrc,在最后一行添加: export PS1='[\u@\h\W]$' 其中\u是当前用户名,\h是当前主机名,\w显示当 ...

  5. 协同滤波 Collaborative filtering 《推荐系统实践》 第二章

    利用用户行为数据 简介: 用户在网站上最简单存在形式就是日志. 原始日志(raw log)------>会话日志(session log)-->展示日志或点击日志 用户行一般分为两种: 1 ...

  6. opencv 画延长线

    hough变换可以让我们检测到直线,这在前面已有详解,对于车道检测,我们需要其到图像边界的延长线一遍之后数据帧分析. 以下代码帮助我们在opencv中画延长线,本来想用虚线表示延长线的,无奈参数调不好 ...

  7. 关于Linux的windows目录的挂载

    今天,linux主机下面要增加一点空间,不想再增加硬盘,所以就在实体机里面就设置了目录共享,添加自己系统的默认账号(为了增加自己主机的安全性,我都是设置的含有标点符号的密码---这也是这次挂载不成功的 ...

  8. myeclipse2014破解版本链接

    myeclipse2014破解版本下载链接 http://www.my-eclipse.cn/#download myeclipse2014破解版本汉化链接 https://blog.my-eclip ...

  9. java开发之多线程需要学习和理解的东西

    40个Java多线程问题总结 http://www.codeceo.com/article/40-java-thread-problems.html

  10. poj 2115 C Looooops(扩展gcd)

    题目链接 这个题犯了两个小错误,感觉没错,结果怒交了20+遍,各种改看别人题解,感觉思路没有错误,就是wa. 后来看diccuss和自己查错,发现自己的ecgcd里的x*(a/b)写成了x*a/b.还 ...