Share via


OBJECTPROPERTY (Transact-SQL)

Şema kapsamlı nesneler hakkında bilgi için geçerli veritabanında döndürür.Kapsamlı şema nesneleri listesi için bkz: sys.Objects (Transact-SQL). Bu işlev, şema veri tanımlama dili (DDL) Tetikleyicileri ve olay bildirimlerini gibi kapsamlı, olmayan nesneler için kullanılamaz.

Topic link iconTransact-SQL sözdizimi kuralları

OBJECTPROPERTY ( id , property ) 

Bağımsız değişkenler

  • id
    Is an expression that represents the ID of the object in the current database.id is int and is assumed to be a schema-scoped object in the current database context.

  • property
    Is an expression that represents the information to be returned for the object specified by id.property can be one of the following values.

    Not

    Aksi belirtilmedikçe, NULL olduğunda gönderilir property Geçerli bir özellik adı değil. id Geçerli nesne KIMLIĞI değil. id Belirtilen bir desteklenmeyen nesne türü property, veya arayanın nesnenin meta veriler görüntüleme iznine sahip değildir.

    Özellik adı

    Nesne türü

    Açıklama ve döndürülen değerler

    CnstIsClustKey

    Kısıtlama

    birincil anahtar kısıtlaması ile kümelenmiş dizin.

    1 = True

    0 = False

    CnstIsColumn

    Kısıtlama

    Tek bir sütun CHECK, DEFAULT veya yabancı anahtar kısıtlaması.

    1 = True

    0 = False

    CnstIsDeleteCascade

    Kısıtlama

    yabancı anahtar kısıtlaması ON DELETE CASCADE seçeneği.

    1 = True

    0 = False

    CnstIsDisabled

    Kısıtlama

    Devre dışı bırakılmış kısıtlaması.

    1 = True

    0 = False

    CnstIsNonclustKey

    Kısıtlama

    Kümelenmemiş bir dizini olan birincil anahtar veya BENZERSIZ kısıtlama.

    1 = True

    0 = False

    CnstIsNotRepl

    Kısıtlama

    Kısıtlaması IÇIN NOT çoğaltma anahtar sözcükler kullanılarak tanımlanır.

    1 = True

    0 = False

    CnstIsNotTrusted

    Kısıtlama

    Kısıtlama, varolan satırların denetlemeden etkinleştirildi; bu nedenle, kısıtlama tüm satırlar için tutabileceğini değil.

    1 = True

    0 = False

    CnstIsUpdateCascade

    Kısıtlama

    ON UPDATE CASCADE seçeneğiyle yabancı anahtar kısıtlaması.

    1 = True

    0 = False

    ExecIsAfterTrigger

    Tetikleyici

    Tetikleyici SONRA.

    1 = True

    0 = False

    ExecIsAnsiNullsOn

    Transact-SQL işlev Transact-SQL yordamı Transact-SQL Tetikleyici, görüntüleme

    Oluşturma saat ANSI_NULLS ayarı.

    1 = True

    0 = False

    ExecIsDeleteTrigger

    Tetikleyici

    Tetikleyici DELETE.

    1 = True

    0 = False

    ExecIsFirstDeleteTrigger

    Tetikleyici

    Ilk tetikleyici bir DELETE karşı tablo yürütüldüğünde harekete geçirildi.

    1 = True

    0 = False

    ExecIsFirstInsertTrigger

    Tetikleyici

    Ilk tetikleyici INSERT karşı tablo yürütüldüğünde harekete geçirildi.

    1 = True

    0 = False

    ExecIsFirstUpdateTrigger

    Tetikleyici

    Ilk tetikleyici bir UPDATE karşı tablo yürütüldüğünde harekete geçirildi.

    1 = True

    0 = False

    ExecIsInsertTrigger

    Tetikleyici

    Tetikleyici INSERT.

    1 = True

    0 = False

    ExecIsInsteadOfTrigger

    Tetikleyici

    Tetikleyici ıNSTEAD OF.

    1 = True

    0 = False

    ExecIsLastDeleteTrigger

    Tetikleyici

    Son tetikleyicisi bir DELETE karşı tablo yürütüldüğünde harekete geçirildi.

    1 = True

    0 = False

    ExecIsLastInsertTrigger

    Tetikleyici

    Son tetikleyicisi INSERT karşı tablo yürütüldüğünde harekete geçirildi.

    1 = True

    0 = False

    ExecIsLastUpdateTrigger

    Tetikleyici

    Son tetikleyicisi bir UPDATE karşı tablo yürütüldüğünde harekete geçirildi.

    1 = True

    0 = False

    ExecIsQuotedIdentOn

    Transact-SQL işlev Transact-SQL yordamı Transact-SQL Tetikleyici, görüntüleme

    Oluşturma saat QUOTED_IDENTIFIER ayarı.

    1 = True

    0 = False

    ExecIsStartup

    Yordam

    Başlatma yordamını.

    1 = True

    0 = False

    ExecIsTriggerDisabled

    Tetikleyici

    Devre dışı bırakılmış tetikleyicisi.

    1 = True

    0 = False

    ExecIsTriggerNotForRepl

    Tetikleyici

    Tetikleyici NOT FOR çoğaltma tanımlı.

    1 = True

    0 = False

    ExecIsUpdateTrigger

    Tetikleyici

    UPDATE tetikleyicisi.

    1 = True

    0 = False

    HasAfterTrigger

    Tablo, Görünüm

    tablo veya bir AFTER tetikleyicisi görünümü vardır.

    1 = True

    0 = False

    HasDeleteTrigger

    Tablo, Görünüm

    tablo veya DELETE Tetik görünümü vardır.

    1 = True

    0 = False

    HasInsertTrigger

    Tablo, Görünüm

    tablo veya bir INSERT tetikleyicisi görünümü vardır.

    1 = True

    0 = False

    HasInsteadOfTrigger

    Tablo, Görünüm

    tablo veya bir INSTEAD OF tetikleyicisi görünümü vardır.

    1 = True

    0 = False

    HasUpdateTrigger

    Tablo, Görünüm

    tablo veya bir UPDATE tetikleyicisi görünümü vardır.

    1 = True

    0 = False

    IsAnsiNullsOn

    Transact-SQL işlev Transact-SQL yordamı, tablo, Transact-SQL Tetikleyici, görüntüleme

    ANSI NULL seçeneği ayarı tablo için AÇıK olduğunu belirtir.Bu, boş (null) değer karşı tüm karşılaştırmalar için BILINMEYEN değerlendirileceği anlamına gelir.Bu ayar, tüm ifadelerin tablo mevcut sürece için hesaplanan sütunlar ve kısıtlamaları, birlikte tablo tanımlamasını uygulanır.

    1 = True

    0 = False

    IsCheckCnst

    Herhangi bir şema kapsamlı nesne

    CHECK kısıtlaması.

    1 = True

    0 = False

    IsConstraint

    Herhangi bir şema kapsamlı nesne

    Bir sütun veya Tablo tek bir sütun CHECK, DEFAULT veya yabancı anahtar kısıtlaması belirtilir.

    1 = True

    0 = False

    IsDefault

    Herhangi bir şema kapsamlı nesne

    Varsayılan bağlı.

    1 = True

    0 = False

    IsDefaultCnst

    Herhangi bir şema kapsamlı nesne

    VARSAYıLAN kısıtlama.

    1 = True

    0 = False

    Isdeterministic

    işlev, Görüntüle

    Görünüm veya işlev determinism özellik.

    1 Deterministic =

    0 = Deterministic değil

    IsEncrypted

    Transact-SQL işlev Transact-SQL yordamı, tablo, Transact-SQL Tetikleyici, görüntüleme

    Özgün metin modül ifadesinin obfuscated bir biçime dönüştürülmüş gösterir.Gizleme hile şaka çıktısını doğrudan herhangi bir katalog görünümlerinde görünür durumda değilse SQL Server 2005. Sistem tabloları veya veritabanı dosyalarına erişimi olmayan kullanıcılar obfuscated metin alamıyor.Ancak, metin ya da sistem tabloları üzerinden erişebilen kullanıcılar için kullanılabilir DAC bağlantı noktası veya doğrudan access veritabanı dosyaları.Ayrıca, bir hata ayıklayıcı için sunucu işleminin ekleyebileceğini kullanıcıların özgün yordamı bellekten zamanında alabilirsiniz.

    1 Şifreli =

    0 = Şifreli değil

    Temel veri türü: int

    IsExecuted

    Herhangi bir şema kapsamlı nesne

    Nesne yürütülebilecek (Görünüm, yordam, işlev veya tetikleyicisi).

    1 = True

    0 = False

    IsExtendedProc

    Herhangi bir şema kapsamlı nesne

    Genişletilmiş bir yordamdır.

    1 = True

    0 = False

    IsForeignKey

    Herhangi bir şema kapsamlı nesne

    yabancı anahtar kısıtlaması.

    1 = True

    0 = False

    IsIndexed

    Tablo, Görünüm

    Tablo veya Görünüm, dizin sahip.

    1 = True

    0 = False

    IsIndexable

    Tablo, Görünüm

    Tablo veya Görünüm dizin oluşturulabilir.

    1 = True

    0 = False

    IsInlineFunction

    İşlev

    Satır içi işlev.

    1 Satır içi işlev =

    0 Değil, satır içi işlev =

    IsMSShipped

    Herhangi bir şema kapsamlı nesne

    Yükleme işlemi sırasında oluşturulan nesne SQL Server.

    1 = True

    0 = False

    Isprimarykey

    Herhangi bir şema kapsamlı nesne

    birincil anahtar kısıtlaması.

    1 = True

    0 = False

    NULL olmayan bir işlev = veya KIMLIĞI geçersiz nesne.

    IsProcedure

    Herhangi bir şema kapsamlı nesne

    Yordam.

    1 = True

    0 = False

    IsQuotedIdentOn

    Transact-SQL işlev Transact-SQL yordamı, tablo, Transact-SQL Tetikleyici, görünüm, CHECK kısıtlaması, DEFAULT tanımı

    Nesne için tırnak işaretli tanımlayıcı ayarı AÇıK olduğunu belirtir.Bu tanımlayıcılar nesnesi tanımında yer alan tüm Deyimlerde çift tırnak işareti sınırlandırmak anlamına gelir.

    1 ÜZERİNDE =

    0 = off

    IsQueue

    Herhangi bir şema kapsamlı nesne

    Hizmet Aracısı sırası

    1 = True

    0 = False

    IsReplProc

    Herhangi bir şema kapsamlı nesne

    Çoğaltma yordamdır.

    1 = True

    0 = False

    IsRule

    Herhangi bir şema kapsamlı nesne

    Ilişkili bir kural.

    1 = True

    0 = False

    IsScalarFunction

    İşlev

    skaler değerli işlev.

    1 = skaler değerli işlev

    0 işlev tek deðerli =

    IsSchemaBound

    işlev, Görüntüle

    Bir şema, işlev veya SCHEMABINDING kullanılarak oluşturulmuş görünümü bağlı.

    1 Şemaya bağlı =

    0 = Şemaya bağlı değil.

    IsSystemTable

    Table

    Sistem tablo.

    1 = True

    0 = False

    IsTable

    Table

    Tablo.

    1 = True

    0 = False

    IsTableFunction

    İşlev

    Tablo değerli işlev.

    1 Tablo değerli = işlev

    0 tablo değerli işlev =

    IsTrigger

    Herhangi bir şema kapsamlı nesne

    Tetikleyici.

    1 = True

    0 = False

    IsUniqueCnst

    Herhangi bir şema kapsamlı nesne

    UNIQUE sınırlamasıyla.

    1 = True

    0 = False

    IsUserTable

    Table

    Kullanıcı tanımlı tablo.

    1 = True

    0 = False

    IsView

    Görünümü

    Görünüm.

    1 = True

    0 = False

    OwnerId

    Herhangi bir şema kapsamlı nesne

    Nesnenin sahibi.

    NoteNote:
    Şema sahibi, mutlaka nesnenin sahibi değil.Örneğin, alt nesneler (Bu yeri parent_object_id nonnull) her zaman aynı sahip KIMLIĞI olarak üst döndürecektir.

    Nonnull veritabanı nesne sahibinin kullanıcı KIMLIĞI =.

    TableDeleteTrigger

    Table

    Tablo DELETE Tetik vardır.

    >1 Belirtilen tür ile ilk tetikleyici KIMLIĞI =.

    TableDeleteTriggerCount

    Table

    Tablo, belirtilen sayıda DELETE Tetikleyicileri vardır.

    >0 = DELETE Tetikleyicileri sayısı.

    TableFullTextMergeStatus

    Table

    Bir tablo, o anda birleştirme bir tam metin dizinine sahip olup olmadığını belirler.

    0 = tablo mu bir tam metin dizini ya da tam metin dizini içindeki birleştirme değil sahip değil.

    1 = Tam metin içinde birleştirme dizinidir.

    TableFullTextBackgroundUpdateIndexOn

    Table

    Tablo tam metin arka plan (autochange izleme) etkin dizini güncelleştirmeniz var.

    1 = true

    0 = false

    TableFulltextCatalogId

    Table

    Tablo için tam metin dizini verilerin bulunduğu tam metin kataloğu TEŞHIS kodu

    Sıfır olmayan dizine bir tam metin satırları tanımlayan benzersiz dizin ile ilişkili, tam metin kataloğu KIMLIĞI = tablo.

    0 = tablo bir tam metin dizini yok.

    TableFulltextChangeTrackingOn

    Table

    Tablo için tam metin değişiklik etkin izleme vardır.

    1 = true

    0 = false

    TableFulltextDocsProcessed

    Table

    Tam metin dizinlemesi başlangıcı sonra işlenen satır sayısı.Içinde bir tablo, tam metin araması için dizine alınırken, tüm sütunları bir satırın bir belgenin bir parçası endekslenecek kabul edilir.

    0 Hiçbir etkin = gezinme veya tam metin dizini oluşturmayı tamamladı.

    > 0 Aşağıdakilerden =:

    • Tarafından işlenen belge sayısı veya başlangıç itibaren işlemlerinin tam, artımlı veya el ile değişiklik popülasyon izleme.

    • Ekleme veya güncelleştirme işlemlerini değişiklik arka plan güncelleştirme dizini popülasyon ile izleme etkinleştirildikten sonra tam metin dizini şemayı değiştirdi, tam metin Kataloğu yeniden veya örnek tarafından işlenen satır sayısı SQL Server yeniden başlatılan ve böyle devam eder.

    NULL = tablosu, bir tam metin dizini yok.

    NoteNote:
    Bu özellik değil izlemek veya silinen satır sayısı.

    TableFulltextFailCount

    Table

    tam metin araması dizin değil, satır sayısı.

    0 = Tüm nüfusun tamamladı.

    > 0 Aşağıdakilerden =:

    • Popülasyon izleme tam, artımlı ve el ile güncelleştirme değişikliği başlangıcından bu yana dizine belge sayısı.

    • Değişiklik arka plan izlemeyi için dizin, popülasyon başlangıç veya yeniden popülasyonun dizine satır sayısını güncelleştirin.Bu, şema değiştirme, katalog, sunucu yeniden başlatma ve benzeri rebuild tarafından kaynaklanabilir.

    NULL = tablosu, bir tam metin dizini yok.

    TableFulltextItemCount

    Table

    Tam metin olarak başarıyla satır sayısını dizin.

    TableFulltextKeyColumn

    Table

    Tam metin dizini tanımında katılıyor tek sütunlu benzersiz dizin ile ilişkili sütun KIMLIĞI.

    0 = tablo bir tam metin dizini yok.

    TableFulltextPendingChanges

    Table

    Değişiklik izleme girişlerini işlemek için bekleyen sayısı.

    0 değişiklik = izleme etkin değil.

    NULL = tablosu, bir tam metin dizini yok.

    TableFulltextPopulateStatus

    Table

    0 Boş =.

    1 Tam = popülasyon sürüyor.

    2 Artımlı = popülasyon sürüyor.

    3 = Izlenmiş değişiklikler yayılmasını sürüyor.

    4 Arka plan izlemeyi autochange gibi sürüyor güncelleştirme dizinidir =.

    5 = Tam metin dizin oluşturmayı daraltma duraklatıldı veya.

    TableHasActiveFulltextIndex

    Table

    Tablo, etkin olan bir tam metin dizini yok.

    1 = True

    0 = False

    TableHasCheckCnst

    Table

    Tablo, bir CHECK kısıtlaması yok.

    1 = True

    0 = False

    TableHasClustIndex

    Table

    Tablo, kümelenmiş dizin vardır.

    1 = True

    0 = False

    TableHasDefaultCnst

    Table

    Tablo, VARSAYıLAN sınırlama vardır.

    1 = True

    0 = False

    TableHasDeleteTrigger

    Table

    Tablo DELETE Tetik vardır.

    1 = True

    0 = False

    TableHasForeignKey

    Table

    Tablo bir yabancı anahtar kısıtlaması vardır.

    1 = True

    0 = False

    TableHasForeignRef

    Table

    Tablo bir yabancı anahtar kısıtlaması tarafından başvurulmaktadır.

    1 = True

    0 = False

    TableHasIdentity

    Table

    tablo kimlik sütun olan.

    1 = True

    0 = False

    TableHasIndex

    Table

    Tablo, bir dizin herhangi bir tür vardır.

    1 = True

    0 = False

    TableHasInsertTrigger

    Table

    Nesne bir INSERT tetikleyicisi yok.

    1 = True

    0 = False

    TableHasNonclustIndex

    Table

    Tablo, kümelenmemiş bir dizin vardır.

    1 = True

    0 = False

    TableHasPrimaryKey

    Table

    tablo birincil anahtar vardır.

    1 = True

    0 = False

    TableHasRowGuidCol

    Table

    Tablo için bir ROWGUIDCOL sahip bir uniqueidentifier sütun.

    1 = True

    0 = False

    TableHasTextImage

    Table

    Tablo bulunan bir text, ntext, veya image sütun.

    1 = True

    0 = False

    TableHasTimestamp

    Table

    Tablo bulunan bir timestamp sütun.

    1 = True

    0 = False

    TableHasUniqueCnst

    Table

    Tablo bir UNIQUE sınırlaması vardır.

    1 = True

    0 = False

    TableHasUpdateTrigger

    Table

    Nesne bir UPDATE tetikleyicisi yok.

    1 = True

    0 = False

    TableHasVarDecimalStorageFormat

    Table

    Tablo için etkinleştirilir. vardecimal depolama biçimi.

    1 = True

    0 = False

    TableInsertTrigger

    Table

    Tablo bir INSERT tetikleyicisi yok.

    >1 Belirtilen tür ile ilk tetikleyici KIMLIĞI =.

    TableInsertTriggerCount

    Table

    Tablo, belirtilen sayıda INSERT Tetikleyicileri vardır.

    >0 = INSERT Tetikleyicileri sayısı.

    TableIsFake

    Table

    Tablo, gerçek değil.Bu dahili isteğe bağlı materialized SQL Server Database Engine.

    1 = True

    0 = False

    TableIsLockedOnBulkLoad

    Table

    Tablo nedeniyle kilitli bir Kullanımıbcp veya BULK INSERT işlemi.

    1 = True

    0 = False

    TableIsPinned

    Table

    Tablo, veri önbelleğinde tutulması için sabitleninceye.

    0 = False

    Bu özellik, desteklenmiyor. SQL Server 2005 ve daha yeni.

    TableTextInRowLimit

    Table

    Izin verilen en fazla bayt Satır metni.

    0 ise Satır metni seçenek küme.

    TableUpdateTrigger

    Table

    Tablo bir UPDATE tetikleyicisi yok.

    > 1 Belirtilen tür ile ilk tetikleyici KIMLIĞI =.

    TableUpdateTriggerCount

    Table

    UPDATE tetikleyicisi ile belirtilen sayıda tablo var.

    > 0 = UPDATE Tetikleyicileri sayısı.

    TableHasColumnSet

    Table

    Tablo, küme bir sütun var.

    0 = False

    1 = True

    Daha fazla bilgi için bkz:Sütun kümesi'ni kullanma.

Dönüş Türleri

int

Exceptions

Arayanı nesneyi görüntüleme iznine sahip değil, hata NULL veya'ı verir.

Bir kullanıcı, yalnızca kullanıcının sahip olduğu veya kullanıcı izni verilmiş securables meta veriler görüntüleyebilirsiniz.Bu, kullanıcı nesnesi üzerinde herhangi bir izin yoksa OBJECTPROPERTY NULL döndürebilir gibi meta veriler verilirken, yerleşik çalışmasını anlamına gelir.Daha fazla bilgi için bkz: Meta veriler görünürlük yapılandırma ve Meta veriler görünürlük sorun giderme.

Remarks

The Database Engine assumes that object_id is in the current database context.Başvuran BIR sorgu bir object_id başka bir veritabanında, NULL veya hatalı sonuçlar verir. Örneğin, aşağıdaki sorguda, geçerli veritabanı içeriğini olan master Veritabanı. The Database Engine will try to return the özellik value for the specified object_id in that database instead of the database specified in the query. Sorgu yanlış sonuçlar verir, çünkü görünümü vEmployee olmayan master Veritabanı.

USE master;
GO
SELECT OBJECTPROPERTY(OBJECT_ID(N'AdventureWorks.HumanResources.vEmployee'), 'IsView');
GO

objectproperty)view_id, 'IsIndexable') önemli bilgisayar kaynakları için tüketebilir değerlendirmesiIsIndexable özellik, görünüm tanımı, normalleştirme ve kısmi en iyi duruma getirme ayrıştırma gerektirir.Ancak IsIndexable özellik, tablo veya görünümlerin dizine alınması, tanımlar, belirli dizin anahtar gereksinimlerinin yerine getirilmesi, gerçek dizin oluşturulmasını hala başarısız.Daha fazla bilgi için bkz:INDIS (Transact-SQL) CREATE.

objectproperty)table_id, 'tablo HasActiveFulltextIndex') 1 (doğru) en az bir zaman değeri döndürecektir sütun bir tablo için dizine eklenir.Ilk sütun için dizin eklenir gibi tam metin dizinlemesi popülasyon için etkin duruma gelir.

Bir tablo oluşturduğunuzda, tablo oluşturulduğunda seçeneği KAPALı olarak küme olsa bile tırnak içine ALıNMıŞ TANıMLAYıCı seçeneği her zaman AÇıK tablonun meta verilerde depolanır.Bu nedenle, OBJECTPROPERTY (table_id, 'IsQuotedIdentOn') her zaman 1 (doğru) değerini döndürecektir.

Örnekler

C.Nesne bir tablo olduğunu doğrulama

Aşağıdaki örnek sınamaları mi UnitMeasure bir tabloda AdventureWorks Veritabanı.

b.Kullanıcı tanımlı skaler değerli işlev deterministic olduğunu doğrulama

Aşağıdaki örnek sınamaları olup olmadığını kullanıcı tanımlı skaler değerli işlev ufnGetProductDealerPrice, hangi döndürür bir money değer, belirli bir durumda.

Sonuç kümesi, gösterir. ufnGetProductDealerPrice Belirli bir işlev değil.

-----
0

c.Belirli bir şemaya ait nesneleri bulma

Aşağıdaki örnek SchemaId şemaya ait tüm nesnelerini geri dönmek için özellik Production.