博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
T-SQL判断是否存在表、临时表
阅读量:7294 次
发布时间:2019-06-30

本文共 820 字,大约阅读时间需要 2 分钟。

利用SQL SERVER的系统函数 object_id() 可以判断是否存在表、临时表,

object_id() 的作用是返回架构范围内对象的数据库对象标识。(即返回系统视图  sys.objects 的 object_id 字段值)

 

语法:

OBJECT_ID ( '[ database_name . [ schema_name ] . | schema_name . ]     object_name' [ ,'object_type' ] )

 返回值是 int 类型,如果对象不存在则返回 null 。

 

判断是否存在表

if object_id(N'dbo.Info_City',N'U') is not null    print '存在表'else    print '不存在表'

 

判断是否存在临时表

if object_id(N'tempdb.dbo.#TEMP2',N'U') is not null    print '存在#TEMP2'else    print '不存在#TEMP2'

注意:判断临时表需要指定临时数据库 tempdb 

 

判断其他架构范围内的对象

因为函数object_id() 返回的是架构范围内对象的数据库对象标识,意味着例如表、视图、约束、存储过程等其他架构范围内对象也可以通过上述方法判断其存在性。

例如,判断存储过程仅需稍稍修改对象名和对象类型即可:

if object_id(N'dbo.P_Base_GetServerInfo',N'P') is not null    print '存在存储过程'ELSE    print '不存在存储过程'

注:存储过程的 object_type 为 P,其他的架构范围内对象以及对应的 object_type 字段值可以从我上一篇查找到。

 

转载于:https://www.cnblogs.com/xurongjian/p/10299915.html

你可能感兴趣的文章
自定义FragmentTabHost实现可控制是否保存fragment状态
查看>>
Java并发编程之:Vector和ArrayList的区别
查看>>
在Linux上安装PostgreSQL
查看>>
理解HTTP session原理及应用
查看>>
交换机
查看>>
thinkPHP开发基础知识 包括变量神马的
查看>>
Yii2.0实现微信公众号后台开发
查看>>
php扩展安装
查看>>
java中list排序
查看>>
linux将bridge当做hub来用
查看>>
java并发之TimeUnit
查看>>
socket.io.js的disconnect事件
查看>>
简单检测CDN链接是否有效
查看>>
SwingC API 演示DEMO,不断更新
查看>>
phpstorm8 license key
查看>>
springmvc常用注解标签详解
查看>>
HashMap的容量(桶的数量)为什么要是2的n次方
查看>>
Oracle中的NULL(一、问题引入)
查看>>
swift 用协议实现代理传值功能
查看>>
使用快嘉框架开发项目示例
查看>>