OBJECT_ID (Transact-sql)

Bir şema kapsamlı nesne veritabanı nesne tanımlama numarası verir.

Önemli notÖnemli

OBJECT_ID kullanarak şema kapsamlı ddl Tetikleyicileri gibi olmayan nesneler sorgulanamıyor. İçinde bulunan nesneler için sys.objects Katalog görünümü, nesne tanımlama numaraları uygun katalog görünümünü sorgulayarak edinme. Örneğin, nesne tanımlama numarası ddl tetikleyici için kullanın SELECT OBJECT_ID FROM sys.triggers WHERE name = 'DatabaseTriggerLog'.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

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

Bağımsız değişkenler

  • 'object_name'
    Kullanılacak nesnesidir. object_nameis either varchar or nvarchar. Eğer object_nameolan varchar, bu örtülü olarak dönüştürülür nvarchar. Veritabanı ve şema adları belirtmek isteğe bağlıdır.

  • 'object_type'
    Şema kapsamlı nesne türüdür. object_typeis either varchar or nvarchar. Eğer object_typeolan varchar, bu örtülü olarak dönüştürülür nvarchar. Nesne türlerinin listesi için bkz: türü sütununda sys.Objects (Transact-sql).

Dönüş Türleri

int

Kural dışı durumlar

Kayma dizin için OBJECT_ID null döndürüyor.

null döner.

Bir kullanıcı yalnızca kullanıcının sahip olduğu veya kullanıcı izni verilmiş securables meta verileri görüntüleyebilirsiniz. Bu, kullanıcı nesnesi üzerinde izni yoksa OBJECT_ID null döndürebilir gibi meta veri verilirken, yerleşik fonksiyonları olduğunu anlamına gelir. Daha fazla bilgi için, bkz. Meta veri görünürlük yapılandırma.

Açıklamalar

Sistem işlevi için parametre isteğe bağlı olduğunda, geçerli veritabanının, ana bilgisayar, sunucu kullanıcı veya veritabanı kullanıcı kabul edilir. Yerleşik işlevleri parantez tarafından her zaman izlenmesi gerekir.

Geçici tablo adı belirtildiğinde, sürece geçerli veritabanında veritabanı adı geçici tablo adından önce gelmelidir tempdb. Örneğin: SELECT OBJECT_ID('tempdb..#mytemptable').

Sistem işlevleri seçme listesinde where yan tümcesi kullanılabilir ve herhangi bir ifade izin verilir. Daha fazla bilgi için Ifadeler (Transact-sql)ve NEREDE (Transact-sql).

Örnekler

A.Belirtilen nesne nesnesinin Kımlığı döndürme

Aşağıdaki örnek, nesne kimliği verir Production.WorkOrderiçinde masa AdventureWorksveritabanı.

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

B.Nesne varolduğunu doğrulama

Aşağıdaki örnek, tablo nesne kimliği olduğunu doğrulayarak belirtilen tablo varlığını denetler. Tablo varsa silinir. Tablo yoksa, DROP TABLEdeyimi yürütüldü.

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

C.C.sistem işlevi parametre değeri belirtmek için OBJECT_ID kullanma

Aşağıdaki örnek, tüm dizinler ve bölümler için bilgi verir Person.Addressiçinde masa AdventureWorksveritabanı kullanarak verirsys.dm_db_index_operational_statsTüm işlevi.

Önemli notÖnemli

Ne zaman kullandığınız Transact-SQLişlevleri DB_ID ve OBJECT_ID bir parametre değeri döndürmek için her zaman geçerli bir kimlik döndürülür emin olun. Veritabanı veya nesne adı, ne zaman onlar yok veya yanlış yazılmış gibi bulunamazsa, iki işlev null döndürür. Verirsys.dm_db_index_operational_statsTüm işlevi null tüm veritabanları veya tüm nesneler belirtir bir joker karakter değeri yorumlar. Bu bölümdeki örneklerde, bu kasıtsız bir işlem olduğundan, veritabanı ve nesne kimliklerini belirlemek için güvenli bir şekilde görülmektedir.

DECLARE @db_id int;
DECLARE @object_id int;
SET @db_id = DB_ID(N'AdventureWorks2012');
SET @object_id = OBJECT_ID(N'AdventureWorks2012.Person.Address');
IF @db_id IS NULL 
  BEGIN;
    PRINT N'Invalid database';
  END;
ELSE IF @object_id IS NULL
  BEGIN;
    PRINT N'Invalid object';
  END;
ELSE
  BEGIN;
    SELECT * FROM sys.dm_db_index_operational_stats(@db_id, @object_id, NULL, NULL);
  END;
GO

Ayrıca bkz.

Başvuru

Meta veri işlevler (Transact-sql)

sys.Objects (Transact-sql)

verirsys.dm_db_index_operational_statsTüm (Transact-sql)

OBJECT_DEFINITION (Transact-sql)

object_name (Transact-sql)