2012-03-06 92 views
0

这个特别的声明是什么意思,我遇到了一个存储过程,这个条件被验证多次。在Sql Server中语法的含义

任何人都可以为我解释这个请。那么我广泛地理解,我们正在检查这个临时表是否存在。

我不明白它是什么做的两个点“..”表示,什么是‘U’

IF OBJECT_ID('TEMPDB..#tablename', 'U') IS NOT NULL 

回答

1

OBJECT_ID函数检查数据库中是否存在和U该特定表的含义指定用户表。

1

...和'TEMPDB..'前缀表示它存在于默认架构(通常为dbo)下的tempdb数据库中。

0

查看OBJECT_ID文档。它返回数据库中对象的标识符。在这种情况下,它正在寻找一个用户('U')在默认模式(..)中创建名为#tablename的临时表。

您还可以查看sys.objects文档。具体来说,输入有效的'object_type'值。