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.
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.
Note:Ş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.
Note: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.