SQL Server判断对象是否存在   
1 判断数据库是否存在 Sql代码  
if exists (select * from sys.databases where name = '数据库名')     drop database [数据库名]   
2 判断表是否存在 Sql代码  
if exists (select * from sysobjects where id = object_id('表名') and objectproperty(id,'IsUserTable') = 1) drop table [表名]  
if exists (select * from sysobjects where name = '表名' and xtype = 'U') drop table [表名]   
3 判断存储过程是否存在 Sql代码  
if exists (select * from sysobjects where id = object_id('[存储过程名]') and objectproperty(id, 'IsProcedure') = 1) drop procedure [存储过程名]   
if exists (select 1 from sysobjects where name = '存储过程名' and xtype = 'P')  drop procedure [存储过程名]  
4 判断临时表是否存在 Sql代码  
if object_id('tempdb..#临时表名') is not null       drop table #临时表名   
5 判断视图是否存在 Sql代码  
--SQL Server 2000    
IF EXISTS (SELECT * FROM sysviews WHERE object_id = '[dbo].[视图名]')    
--SQL Server 2005    
IF EXISTS (SELECT * FROM sys.views WHERE object_id = '[dbo].[视图名]')   
6 判断函数是否存在 Sql代码  
--  判断要创建的函数名是否存在   
  if exists (select * from dbo.sysobjects where id = object_id('[dbo].[函数名]') and xtype in ('FN', 'IF', 'TF'))

wk_ad_begin({pid : 21});wk_ad_after(21, function(){$('.ad-hidden').hide();}, function(){$('.ad-hidden').show();});

drop function [dbo].[函数名]  
  if exists (select 1 from sysobjects where name = '函数名' and xtype in('FN','IF','TF'))   drop function [函数名]    
7 获取用户创建的对象信息  Sql代码  
SELECT 1 FROM sysobjects where name = [对象名] and xtype=''   /*   
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 判断列是否存在 Sql代码  
if exists(select * from syscolumns where id=object_id('表名') and name='列名')     alter table 表名 drop column 列名     
9 判断列是否自增列 Sql代码  
if columnproperty(object_id('table'),'col','IsIdentity')=1     print '自增列'   else   
  print '不是自增列'    
SELECT * FROM syscolumns WHERE object_id=OBJECT_ID('表名')   AND is_identity=1

10 判断表中是否存在索引 Sql代码  
if exists(select * from sysindexes where id=object_id('表名') and name='索引名')       print  '存在'     else     
  print  '不存在'    
11 查看数据库中对象 Sql代码  
SELECT * FROM sys.sysobjects WHERE name='对象名'  
12 查看表中主键是否存在,如存在则将其drop掉 declare @pk varchar(100) 
select @pk=name from sysobjects where parent_obj=object_id('表名') and xtype='PK' if @pk is not null 
exec('alter table 表名 drop '+ @pk)

检查sql对象是否存在的更多相关文章

  1. 解决 U2000 R017 安装报错: 检查SQL server数据库环境变量信息 ( 异常 ) [ 详细信息 ] PATH环境变量中缺少数据库路径的信息

    U2000 R017 安装报错: 检查SQL server数据库环境变量信息 ( 异常 ) [ 详细信息 ] PATH环境变量中缺少数据库路径的信息 管理员模式打开注册表位置: HKEY_LOCAL_ ...

  2. JavaScript检查Date对象是否为Invalid Date

    使用Date()构造日期对象,如果传入非日期格式的字符串,仍然能构造出Date对象. 在chrome控制台 >var date = new Date("hello"); &g ...

  3. jQuery:使用$获取对象后检查该对象是否存在

    注意: 1)即使jQ获取到网页中不存在的元素也不会报错 2)使用$("#tt")形式获取到的永远是对象,即使网页上没有此元素 jQuery检查某个元素在网页上是否存在时,不能使用以 ...

  4. 使用MySQL中的EXPLAIN解释命令来检查SQL

    我们看到许多客户的系统因为SQL及数据库设计的很差所以导致许多性能上的问题,这些问题不好解决,但是可以采用一套简单的策略来检查生产系统,发现并纠正一些共性问题. 很显然,您应该尽最大努力设计出最好的数 ...

  5. 检查SQL语句是否合法

    昨天又有一个新的需求:验证文本框输入的SQL语法是否正确. 于是就开始百度,其实也挺简单的. 首先需要知道“SET PARSEONLY { ON | OFF }”. 当 SET PARSEONLY 为 ...

  6. inspect模块---检查活动对象

    inspect模块提供了一些有用的函数来帮助获取有关活动对象(如模块,类,方法,函数,跟踪,框架对象和代码对象)的信息.例如,它可以帮助您检查类的内容,检索方法的源代码,提取和格式化函数的参数列表,或 ...

  7. Mybatis检查SQL注入

    Mybatis 的 Mapper.xml 语句中 parameterType 向SQL语句传参有两种方式:#{ } 和 ${ }. 使用#{ }是来防止SQL注入,使用${ }是用来动态拼接参数. 如 ...

  8. 检查sql执行效率

    SELECT  SUBSTRING(ST.text, ( QS.statement_start_offset / 2 ) + 1,                    ( ( CASE statem ...

  9. 快速检查SQL两表数据是否一致

    1前话 项目内实现了一新功能:克隆数据库. 2目标 克隆并非用SQLSERVER克隆,故完毕后需要检查各表内一些数据与原表一致性.一些表中的某一些列容许不一致. 3实现 将两表的需要检查的几列取出,相 ...

随机推荐

  1. 【IOI 1998】 Picture

    [题目链接] 点击打开链接 [算法] 线段树扫描线求周长并 [代码] #include <algorithm> #include <bitset> #include <c ...

  2. hdu 5023(线段树区间染色,统计区间内颜色个数)

    题目描述:区间染色问题,统计给定区间内有多少种颜色? 线段树模板的核心是对标记的处理 可以记下沿途经过的标记,到达目的节点之后一块算,也可以更新的时候直接更新到每一个节点 Lazy操作减少修改的次数( ...

  3. 【141】Adobe Acrobat技巧

    目录: 去除PDF的水印 待定 待定 待定 待定 待定 待定 待定 1. 批量去除PDF文件的水印 用Adobe Acrobat打开PDF文件之后,右侧选择工具>页面>水印>删除,可 ...

  4. win7下IIS7.0虚拟目录不存在的问题

    问题:在IIS7.0下选中虚拟目录,右边浏览应用程序下,自动打开浏览器找开虚拟目录下的网站,但过一会什么都没有改变,再一次右边浏览应用程序,就提示 “虚拟目录不存在”. 解决方法:右键网站或下面的虚拟 ...

  5. 重置HTML

    html,body,ul,li,ol,dl,dd,dt,p,h1,h2,h3,h4,h5,h6,form,fieldset,legend,img{margin:0;padding:0}fieldset ...

  6. 51nod 1238 最小公倍数之和 V3 【欧拉函数+杜教筛】

    首先题目中给出的代码打错了,少了个等于号,应该是 G=0; for(i=1;i<=N;i++) for(j=1;j<=N;j++) { G = (G + lcm(i,j)) % 10000 ...

  7. Centos 7 chrome

    share from https://www.cnblogs.com/lenmom/p/9195581.html 1. 下载Chrome浏览器的rpm包 https://www.chrome64bit ...

  8. python 匿名函数的使用(并没有那么简单)

    以下为几种匿名函数的使用方式:x=[(lambda x:x**2)(x) for x in range(10)]print(x)y=[x**2 for x in range(10)]print(y)i ...

  9. 贪心 Codeforces Round #273 (Div. 2) C. Table Decorations

    题目传送门 /* 贪心:排序后,当a[3] > 2 * (a[1] + a[2]), 可以最多的2个,其他的都是1个,ggr,ggb, ggr... ans = a[1] + a[2]; 或先2 ...

  10. 备份字段(CATALOGUE_CODE)

    update am_e4_entry set CATALOGUE_CODE_back=CATALOGUE_CODE; 还原字段 update am_e4_entry a set CATALOGUE_C ...