下面的語法有什麼區別?相當新的SQL和我有研究互聯網的答案,但不是真正瞭解的差異。臨時表之間的區別
If object_id('tempdb..#test1') vs If object_id('#test1')
下面的語法有什麼區別?相當新的SQL和我有研究互聯網的答案,但不是真正瞭解的差異。臨時表之間的區別
If object_id('tempdb..#test1') vs If object_id('#test1')
如果#test1
存在,那麼第一個例子將返回一個值不管你目前在哪個數據庫。該語法限定數據庫名稱和臨時表名稱。
第二個示例只會在'tempdb'數據庫和臨時表存在的情況下返回值。
除此之外,這兩個陳述在功能上是相同的。
這取決於你查詢的數據庫。如果你在[tempdb]數據庫上運行這些查詢,他們正在做同樣的事情。如果從另一個數據庫運行它,它是相當於...
If object_id('tempdb..#test1') vs If object_id('DatabaseName..#test1') aka If object_id('DatabaseName.dbo.#test1')
如果不提供[服務器] [數據庫] [架構]信息,則默認爲默認架構服務器/數據庫查詢正在運行的位置。