SQL Server OBJECT_ID() 函數


OBJECT_ID

返回架構范圍內對象的數據庫對象標識號。

ms190328.note(zh-cn,SQL.90).gif重要提示

  使用 OBJECT_ID 不能查詢非架構范圍內的對象(如 DDL 觸發器)。對於在 sys.objects 目錄視圖中找不到的對象,需要通過查詢適當的目錄視圖來獲取該對象的標識號。例如,若要返回 DDL 觸發器的對象標識號,請使用 SELECT OBJECT_ID FROM sys.triggers WHERE name = 'DatabaseTriggerLog'語法:

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

參數:

   ' object_name '要使用的對象。object_name 的數據類型為 varchar 或 nvarchar。如果 object_name 的數據類型為 varchar,則它將隱式轉換為 nvarchar。可以選擇是否指定數據庫和架構名稱。
  ' object_type '架構范圍的對象類型。object_type 的數據類型為 varchar 或 nvarchar。如果 object_type 的數據類型為 varchar,則它將隱式轉換為 nvarchar。有關對象類型的列表,請參閱 sys.objects (Transact-SQL) 中的 type 列。
返回類型:int

示例:

A. 返回指定對象的對象 ID

USE master;
GO
SELECT OBJECT_ID(N'AdventureWorks.Production.WorkOrder') AS 'Object ID';
GO

B. 驗證對象是否存在

USE AdventureWorks;
GO
IF OBJECT_ID (N'dbo.AWBuildVersion', N'U') IS NOT NULL
DROP TABLE dbo.AWBuildVersion;
GO


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM