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)  

  drop table [表名]

3 判断存储过程是否存在

if exists (select * from sysobjects where id = object_id(N'[存储过程名]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)  

  drop procedure [存储过程名]

4 判断临时表是否存在

if object_id('tempdb..#临时表名') is not null    

  drop table #临时表名

5 判断视图是否存在

--判断是否存在'MyView52'这个试图

IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = N'MyView52')

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'))    

  drop function [dbo].[函数名]

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='列名')  

  alter table 表名 drop column 列名

9 判断列是否自增列

if columnproperty(object_id('table'),'col','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='对象名'  SELECT * FROM sys.sysobjects WHERE name='对象名'

sql 判断表、列、视图等是否存在的更多相关文章

  1. SQL判断某列中是否包含中文字符或者英文字符

    SQL判断某列中是否包含中文字符或者英文字符   [sql]  select * from 表名 where 某列 like '%[吖-座]%'     select * from 表名 where ...

  2. sql 判断 表 视图 存储过程 存在 然后 删除

    sql 判断 函数 存储过程是否存在的方法 (2010-12-03 10:08:57) 转载▼     下面为您介绍sql下用了判断各种资源是否存在的代码,需要的朋友可以参考下,希望对您学习sql的函 ...

  3. SQl 判断 表 视图 临时表等 是否存在

    1.判断是否存在addOneArticle这个存储过程 if Exists(select name from sysobjects where NAME = 'addOneArticle' and t ...

  4. sql 判断表是否存在,判断列是否存在

    判断表是否存在: 语法: SELECT * FROM dbo.SysObjects where id = object_id(N'表名') 例子: SELECT * FROM dbo.SysObjec ...

  5. 关于Ms Sql server 表列等是否存在

    select object_id('名称') ,object_id('名称','类型') 1. 等价于 select * from sys.objects where name ='名称' selec ...

  6. [sqlite] 判断表、视图是否存在及常用C#操作语句

    1,判断表是否存在: SELECT name, sql FROM sqlite_master WHERE type="table" AND name = "Dom&quo ...

  7. SQL 判断表是否存在 数据表不存在是致命错误

    // 判断表是否存在 $db_info = explode ( '.', $table ); $db_name = $db_info [0]; $t_name = $db_info [1]; $t_s ...

  8. Sql 判断函数是否存在、sql判断表是否存在、sql判断存储过程是否存在、sql判断视图是否存在

    --数据库是否存在 IF exists(SELECT * FROM master..sysdatabases WHERE name=N'库名') PRINT 'exists' ELSE PRINT ' ...

  9. SQL 判断 ‘表,存储过程,函数 ...’ 已是否存在

    下面为您介绍sql下用了判断各种资源是否存在的代码,需要的朋友可以参考下,希望对您学习sql的函数及数据库能够有所帮助.库是否存在if exists(select * from master..sys ...

随机推荐

  1. Flask学习记录之Flask-Login

    Flask-Loging 可以方便的管理用户会话,保护路由只让认证用户访问 http://flask-login.readthedocs.org/en/latest/ 一.初始化Flask-Login ...

  2. centos+nginx+uwsgi+virtualenv+flask 多站点环境搭建

    环境: centos x64 6.6 nginx 1.6.2 python 2.7.9 uwsgi 2.0.9 virtualenv 12.0.5 flask 0.10.1 正文: 1.安装nginx ...

  3. 感性体验 Android 5.0 Lollipop

    引言 Android5.0大概是在11月下旬开始进行OTA推送,博主手上的这台五太子(Nexus 5)也在前几天收到了Google的推送,博主当然是按耐不住赶紧FQ升级啦,但无奈的是这个大版本更新包有 ...

  4. 2014 青年歌手大赛 AC

    青年歌手大奖赛_评委会打分 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) To ...

  5. Linux_hadoop_install

    1. Build Linux env my env is VM RedHat Linux 6.5 64bit    set fixed IP                  vim /etc/sys ...

  6. 使用Pull解析器生成XML文件和读取xml文件

    有些时候,我们需要生成一个XML文件,生成XML文件的方法有很多,如:可以只使用一个StringBuilder组拼XML内容,然后把内容写入到文件中:或者使用DOM API生成XML文件,或者也可以使 ...

  7. optimize the performance

    http://en.wikipedia.org/wiki/Web_Performance_Optimization http://www.stevesouders.com/blog/2011/08/2 ...

  8. gcc编译动态和静态链接库

    我们通常把一些公用函数制作成函数库,供其它程序使用.函数库分为静态库和动态库两种.静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库.动态库在程序编译时并不会被连接到目标代码中,而是 ...

  9. 软件发布版本区别介绍-Alpha,Beta,RC,Release

    Alpha: Alpha是内部测试版,一般不向外部发布,会有很多Bug.除非你也是测试人员,否则不建议使用. 是希腊字母的第一位,表示最初级的版本 alpha就是α,beta就是β alpha版就是比 ...

  10. Notepad++去除代码行号的几种方法

    Notepad++去除代码行号的几种方法 (转自:http://hi.baidu.com/beer_zh/item/e70119309ee587f2a8842892)问:在网页中复制代码时,常常遇到高 ...