经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » MS SQL Server » 查看文章
mssql sqlserver if exists 用法大汇总
来源:cnblogs  作者:Adeal2008  时间:2019/7/10 11:22:43  对本文有异议


摘要:
下文讲述sqlserver中,更新脚本中常用if exists关键字的用法说明,如下所示:
实验环境:sql server 2008 R2


 
一、检测数据库是否存在于当前数据库引擎下
 

  1. if exists (select * from sys.databases where name = ’数据库名称’)
  2. begin
  3. print '数据库名称--存在'
  4. end

二、检测数据表是否存在于指定数据库下

  1. if exists (select * from sysobjects where id = object_id(N[数据表名称]’) and OBJECTPROPERTY(id, NIsUserTable’) = 1)
  2. begin
  3. print '数据表名称---存在'
  4. end

三、检测存储过程是否存在的方法

 

  1. if exists (select * from sysobjects where id = object_id(N[存储过程名称]’) and OBJECTPROPERTY(id, NIsProcedure’) = 1)
  2. begin
  3. print '存储过程名称-存在'
  4. end

四、临时表是否存在的方法

  1. if object_id(’tempdb..#临时表名’) is not null
  2. begin
  3. print '临时表名--存在'
  4. end

五、视图是否存在的方法

  1. IF EXISTS (SELECT * FROM sys.views WHERE object_id = [dbo].[视图名称]
  2. begin
  3. print '视图名称存在'
  4. end

六、函数是否存在的检测方法

  1. if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[函数名称]’) and xtype in (NFN’, NIF’, NTF’))
  2. begin
  3. print '函数名称--存在'
  4. end

七、获取用户自定义对象信息

 

  1. SELECT [name] as [对象名称],
  2. [id] as [对象编号],
  3. crdate as [对象创建时间]
  4. FROM sysobjects
  5. where xtype=U
  6. /*
  7. xtype 参数类型,可输以下值
  8. C = CHECK 约束
  9. D = 默认值或 DEFAULT 约束
  10. F = FOREIGN KEY 约束
  11. L = 日志
  12. FN = 标量函数
  13. IF = 内嵌表函数
  14. P = 存储过程
  15. PK = PRIMARY KEY 约束(类型是 K)
  16. RF = 复制筛选存储过程
  17. S = 系统表
  18. TF = 表函数
  19. TR = 触发器
  20. U = 用户表
  21. UQ = UNIQUE 约束(类型是 K)
  22. V = 视图
  23. X = 扩展存储过程
  24. */

 

八、检测数据列是否存在的方法

  1. if exists(select * from syscolumns where id=object_id(’数据表名称’) and name=’数据列’)
  2. begin
  3. print '数据列---存在'
  4. end

 九、是否为自增列检测

 

  1. if columnproperty(object_id(’table’),’列名’,’IsIdentity’)=1
  2. begin
  3. print 'table下“列名”为自增列'
  4. end

 

 十、检测数据表中是否存在索引

 

  1. if columnproperty(object_id(’table’),’列名’,’IsIdentity’)=1
  2. begin
  3. print 'table下“列名”为自增列'
  4. end

 

 

 转自:http://www.maomao365.com/?p=9094

原文链接:http://www.cnblogs.com/lairui1232000/p/11160840.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号