次の方法で共有


OBJECTPROPERTYEX (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric の SQL 分析エンドポイントMicrosoft Fabric のウェアハウスMicrosoft Fabric プレビューの SQL データベース

OBJECTPROPERTYEX関数は、現在のデータベース内のスキーマ スコープ オブジェクトに関する情報を返します。

これらのオブジェクトの一覧については、「sys.objects (Transact-SQL)」をご覧ください。 OBJECTPROPERTYEX は、データ定義言語 (DDL) トリガーやイベント通知など、スキーマ スコープではないオブジェクトには使用できません。

Transact-SQL 構文表記規則

構文

OBJECTPROPERTYEX ( id , property )

引数

身分証明書

現在のデータベース内のオブジェクトの ID を表す式。 IDint であり、現在のデータベース コンテキストではスキーマ スコープ オブジェクトであると見なされます。

property

ID で指定されたオブジェクトに対して返される情報を含む式。 戻り値の型は sql_variant。 次の表に、各プロパティ値に対する基本のデータ型を示します。

Note

特に明記されていない限り、プロパティが有効なプロパティ名でない場合、ID が有効なオブジェクト ID ではない場合、ID が指定されたプロパティに対してサポートされていないオブジェクトの種類である場合、または呼び出し元にオブジェクトのメタデータを表示する権限がない場合、NULLが返されます。

プロパティ名 オブジェクトの種類 説明と戻り値
BaseType 任意のスキーマ スコープ オブジェクト オブジェクトの基本の種類。 指定したオブジェクトが SYNONYMの場合は、基になるオブジェクトの基本型が返されます。

Null 以外 = オブジェクト型

基本データ型: char(2)
CnstIsClustKey 制約 PRIMARY KEY 制約とクラスター化インデックス。

1 = True

0 = False

基本データ型: int
CnstIsColumn 制約 CHECKDEFAULT、または 1 つの列に対する制約を FOREIGN KEY します。

1 = True

0 = False

基本データ型: int
CnstIsDeleteCascade 制約 FOREIGN KEY 制約を ON DELETE CASCADE オプションで指定します。

1 = True

0 = False

基本データ型: int
CnstIsDisabled 制約 制約の無効化。

1 = True

0 = False

基本データ型: int
CnstIsNonclustKey 制約 PRIMARY KEY 制約と非クラスター化インデックス。

1 = True

0 = False

基本データ型: int
CnstIsNotRepl 制約 制約は、 NOT FOR REPLICATION キーワードを使用して定義されます。

1 = True

0 = False

基本データ型: int
CnstIsNotTrusted 制約 既存の行を確認せずに制約が有効化されていました。 したがって、制約はすべての行に対して保持されない場合があります。

1 = True

0 = False

基本データ型: int
CnstIsUpdateCascade 制約 FOREIGN KEY 制約を ON UPDATE CASCADE オプションで指定します。

1 = True

0 = False

基本データ型: int
ExecIsAfterTrigger トリガー AFTER トリガー。

1 = True

0 = False

基本データ型: int
ExecIsAnsiNullsOn Transact-SQL 関数、Transact-SQL プロシージャ、Transact-SQL トリガー、ビュー 作成時の ANSI_NULLS の設定。

1 = True

0 = False

基本データ型: int
ExecIsDeleteTrigger トリガー DELETE トリガー。

1 = True

0 = False

基本データ型: int
ExecIsFirstDeleteTrigger トリガー テーブルに対して DELETE が実行されたときに発生する最初のトリガー。

1 = True

0 = False

基本データ型: int
ExecIsFirstInsertTrigger トリガー テーブルに対して INSERT が実行されたときに発生する最初のトリガー。

1 = True

0 = False

基本データ型: int
ExecIsFirstUpdateTrigger トリガー テーブルに対して UPDATE が実行されたときに発生する最初のトリガー。

1 = True

0 = False

基本データ型: int
ExecIsInsertTrigger トリガー INSERT トリガー。

1 = True

0 = False

基本データ型: int
ExecIsInsteadOfTrigger トリガー INSTEAD OF トリガー。

1 = True

0 = False

基本データ型: int
ExecIsLastDeleteTrigger トリガー テーブルに対して DELETE が実行されたときに発生した最後のトリガー。

1 = True

0 = False

基本データ型: int
ExecIsLastInsertTrigger トリガー テーブルに対して INSERT が実行されたときに発生した最後のトリガー。

1 = True

0 = False

基本データ型: int
ExecIsLastUpdateTrigger トリガー テーブルに対して UPDATE が実行されたときに発生した最後のトリガー。

1 = True

0 = False

基本データ型: int
ExecIsQuotedIdentOn Transact-SQL 関数、Transact-SQL プロシージャ、Transact-SQL トリガー、ビュー 作成時の QUOTED_IDENTIFIER の設定。

1 = True

0 = False

基本データ型: int
ExecIsStartup 手順 スタートアップ プロシージャ。

1 = True

0 = False

基本データ型: int
ExecIsTriggerDisabled トリガー トリガーの無効化。

1 = True

0 = False

基本データ型: int
ExecIsTriggerNotForRepl トリガー NOT FOR REPLICATIONとして定義されたトリガー。

1 = True

0 = False

基本データ型: int
ExecIsUpdateTrigger トリガー UPDATE トリガー。

1 = True

0 = False

基本データ型: int
ExecIsWithNativeCompilation Transact-SQL プロシージャ 適用対象: SQL Server 2014 (12.x) 以降のバージョン。

プロシージャはネイティブでコンパイルされます。

1 = True

0 = False

基本データ型: int
HasAfterTrigger テーブルまたはビュー テーブルまたはビューには、 AFTER トリガーがあります。

1 = True

0 = False

基本データ型: int
HasDeleteTrigger テーブルまたはビュー テーブルまたはビューには、 DELETE トリガーがあります。

1 = True

0 = False

基本データ型: int
HasInsertTrigger テーブルまたはビュー テーブルまたはビューには、 INSERT トリガーがあります。

1 = True

0 = False

基本データ型: int
HasInsteadOfTrigger テーブルまたはビュー テーブルまたはビューには、 INSTEAD OF トリガーがあります。

1 = True

0 = False

基本データ型: int
HasUpdateTrigger テーブルまたはビュー テーブルまたはビューには、 UPDATE トリガーがあります。

1 = True

0 = False

基本データ型: int
IsAnsiNullsOn Transact-SQL 関数、Transact-SQL プロシージャ、テーブル、Transact-SQL トリガー、ビュー テーブルの ANSI NULLS オプションの設定が ONされることを指定します。つまり、null 値に対するすべての比較が UNKNOWN評価されます。 この設定は、テーブルが存在する限り、計算列や制約をはじめとするテーブル定義内のすべての式に適用されます。

1 = True

0 = False

基本データ型: int
IsCheckCnst 任意のスキーマ スコープ オブジェクト CHECK 制約。

1 = True

0 = False

基本データ型: int
IsConstraint 任意のスキーマ スコープ オブジェクト 制約。

1 = True

0 = False

基本データ型: int
IsDefault 任意のスキーマ スコープ オブジェクト 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

既定のバインド。

1 = True

0 = False

基本データ型: int
IsDefaultCnst 任意のスキーマ スコープ オブジェクト DEFAULT 制約。

1 = True

0 = False

基本データ型: int
IsDeterministic スカラーおよびテーブル値関数、ビュー 関数またはビューの決定性を示すプロパティ。

1 = 決定的

0 = 非決定的

基本データ型: int
IsEncrypted Transact-SQL 関数、Transact-SQL プロシージャ、テーブル、Transact-SQL トリガー、ビュー モジュール ステートメントの元のテキストが、暗号化した形式に変換されたことを示します。 暗号化した形式の出力は、SQL Server 2005 (9.x) 内のどのカタログ ビューでも直接見ることはできません。 システム テーブルまたはデータベース ファイルへのアクセス権を持たないユーザーは、暗号化した形式のテキストを取得できません。 ただし、データベース 管理者の診断接続 を介してシステム テーブルにアクセスしたり、データベース ファイルに直接アクセスしたりできるユーザーは、テキストを使用できます。 また、サーバー プロセスにデバッガーをアタッチできるユーザーは、実行時、元のプロシージャをメモリから取得できます。

1 = 暗号化

0 = 暗号化なし

基本データ型: int
IsExecuted 任意のスキーマ スコープ オブジェクト オブジェクトは実行可能 (ビュー、プロシージャ、関数、またはトリガー)。

1 = True

0 = False

基本データ型: int
IsExtendedProc 任意のスキーマ スコープ オブジェクト 拡張プロシージャ。

1 = True

0 = False

基本データ型: int
IsForeignKey 任意のスキーマ スコープ オブジェクト FOREIGN KEY 制約。

1 = True

0 = False

基本データ型: int
IsIndexed テーブルまたはビュー インデックス付きのテーブルまたはビュー。

1 = True

0 = False

基本データ型: int
IsIndexable テーブルまたはビュー インデックスが作成されるテーブルまたはビュー。

1 = True

0 = False

基本データ型: int
IsInlineFunction 機能 インライン関数。

1 = インライン関数

0 = インライン関数ではない

基本データ型: int
IsMSShipped 任意のスキーマ スコープ オブジェクト SQL Server のインストール中に作成されたオブジェクト。

1 = True

0 = False

基本データ型: int
IsPrecise 計算列、関数、ユーザー定義型、ビュー 浮動小数点演算など、不正確な計算を含むオブジェクトかどうかを示します。

1 = 正確

0 = 不正確

基本データ型: int
IsPrimaryKey 任意のスキーマ スコープ オブジェクト PRIMARY KEY 制約。

1 = True

0 = False

基本データ型: int
IsProcedure 任意のスキーマ スコープ オブジェクト プロシージャ。

1 = True

0 = False

基本データ型: int
IsQuotedIdentOn CHECK 制約, DEFAULT 定義, Transact-SQL 関数, Transact-SQL プロシージャ, テーブル, Transact-SQL トリガー, ビュー オブジェクトの引用符で囲まれた識別子の設定が ONされることを指定します。つまり、二重引用符は、オブジェクト定義に関係するすべての式で識別子を区切ります。

1 = True

0 = False

基本データ型: int
IsQueue 任意のスキーマ スコープ オブジェクト Service Broker キュー

1 = True

0 = False

基本データ型: int
IsReplProc 任意のスキーマ スコープ オブジェクト レプリケーション プロシージャ。

1 = True

0 = False

基本データ型: int
IsRule 任意のスキーマ スコープ オブジェクト ルールのバインド。

1 = True

0 = False

基本データ型: int
IsScalarFunction 機能 スカラー値関数。

1 = スカラー値関数

0 = スカラー値関数ではない

基本データ型: int
IsSchemaBound 関数、プロシージャ、ビュー SCHEMABINDINGを使用して作成されたスキーマ バインド関数またはビュー。

1 = スキーマ バインド

0 = 非スキーマ バインド

基本データ型: int
IsSystemTable テーブル システム テーブル。

1 = True

0 = False

基本データ型: int
IsSystemVerified 計算列、関数、ユーザー定義型、ビュー オブジェクトの精度と決定性のプロパティを SQL Server で確認できます。

1 = True

0 = False

基本データ型: int
IsTable テーブル テーブル。

1 = True

0 = False

基本データ型: int
IsTableFunction 機能 テーブル値関数。

1 = テーブル値関数

0 = テーブル値関数ではない

基本データ型: int
IsTrigger 任意のスキーマ スコープ オブジェクト トリガー。

1 = True

0 = False

基本データ型: int
IsUniqueCnst 任意のスキーマ スコープ オブジェクト UNIQUE 制約。

1 = True

0 = False

基本データ型: int
IsUserTable テーブル ユーザー定義テーブル。

1 = True

0 = False

基本データ型: int
IsView View ビュー。

1 = True

0 = False

基本データ型: int
OwnerId 任意のスキーマ スコープ オブジェクト オブジェクトの所有者。

注: スキーマ所有者はオブジェクト所有者である必要はありません。 たとえば、子オブジェクト ( parent_object_id が null 以外のオブジェクト) は、常に親と同じ所有者 ID を返します。

Null 以外 = オブジェクト所有者のデータベース ユーザー ID。

NULL = サポートされていないオブジェクトの種類、またはオブジェクト ID が無効です。

基本データ型: int
SchemaId 任意のスキーマ スコープ オブジェクト オブジェクトに関連付けられているスキーマの ID。

Null 以外 = オブジェクトのスキーマ ID。

基本データ型: int
SystemDataAccess 関数またはビュー オブジェクトは、SQL Server のローカル インスタンス内のシステム データ、システム カタログ、または仮想システム テーブルにアクセスします。

0 = なし

1 = 読み取り

基本データ型: int
TableDeleteTrigger テーブル テーブルには、 DELETE トリガーがあります。

>1 = 指定された種類の最初のトリガーの ID。

基本データ型: int
TableDeleteTriggerCount テーブル テーブルには、指定した数の DELETE トリガーがあります。

Nonnull = DELETE トリガーの数

基本データ型: int
TableFullTextMergeStatus テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

現在マージ中のフルテキスト インデックスがテーブルにあるかどうかを示します。

0 = テーブルにフルテキスト インデックスがないか、フルテキスト インデックスがマージ中ではない

1 = フルテキスト インデックスがマージ中。
TableFullTextBackgroundUpdateIndexOn テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

テーブルでは、フルテキスト インデックスのバックグラウンド更新 (自動変更の追跡) が有効になっています。

1 = TRUE

0 = FALSE

基本データ型: int
TableFulltextCatalogId テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

テーブルのフルテキスト インデックス データが存在する、フルテキスト カタログの ID。

0 以外 = フルテキスト インデックス テーブル内の行を識別する一意なインデックスに関連付けられた、フルテキスト カタログ ID。

0 = テーブルにフルテキスト インデックスはない。

基本データ型: int
TableFullTextChangeTrackingOn テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

テーブルでは、フルテキストの変更の追跡が有効になっています。

1 = TRUE

0 = FALSE

基本データ型: int
TableFulltextDocsProcessed テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

フルテキスト インデックス作成の開始以降に処理された行の数。 フルテキスト検索用にインデックスが作成されるテーブルでは、1 行のすべての列が、インデックスが作成される 1 つのドキュメントの一部と見なされます。

0 = アクティブ クロールまたはフルテキスト インデックス作成は完了していない。

> 0 = 次のいずれか (A または B): A) 完全、増分、または手動による変更追跡の作成開始以降、挿入または更新操作で処理されたドキュメントの数です。B) バックグラウンド更新インデックス作成の有効化、フルテキスト インデックス スキーマの変更、フルテキスト カタログのリビルド、または SQL Server のインスタンスの再起動などの変更の追跡以降、挿入または更新操作で処理された行数。

NULL = テーブルにフルテキスト インデックスがありません。

基本データ型: int

このプロパティは、削除された行を監視またはカウントしません。
TableFulltextFailCount テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

フルテキスト検索でインデックスが作成されなかった行の数。

0 = 作成完了

>0 = 次のいずれか (A または B): A) 完全、増分、または手動更新による変更追跡の作成開始以降に、インデックスが作成されなかったドキュメントの数。B) インデックスのバックグラウンド更新による変更追跡の場合、作成の開始または再開以降にインデックスが作成されなかった行数。 これは、スキーマ変更、カタログの再構築、サーバーの再起動などにより発生する場合があります。

NULL = テーブルに Full-Text インデックスがありません。

基本データ型: int
TableFulltextItemCount テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

Null 以外 = フルテキスト インデックスが正常に作成された行の数。

NULL = テーブルにフルテキスト インデックスがありません。

基本データ型: int
TableFulltextKeyColumn テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

フルテキスト インデックスとセマンティック インデックスの定義の一部である、一意な単一列インデックスに関連付けられた列の ID。

0 = テーブルにフルテキスト インデックスはない。

基本データ型: int
TableFulltextPendingChanges テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

変更の追跡が処理されていないエントリ数。

0 = 変更の追跡は有効でない

NULL = テーブルにフルテキスト インデックスがありません。

基本データ型: int
TableFulltextPopulateStatus テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

0 = アイドル状態

1 = 全体を作成中

2 = 増分作成中

3 = 追跡した変更を伝達中

4 = 自動変更の追跡など、インデックスのバックグラウンド更新が進行中

5 = フルテキスト インデックス作成が絞り込みまたは停止された

6 = エラーが発生しました。 詳細については、クロール ログを確認します。 詳しくは、「フルテキスト インデックスの作成」の「フルテキスト作成 (クロール) で発生したエラーのトラブルシューティング」セクションをご覧ください。

基本データ型: int
TableFullTextSemanticExtraction テーブル 適用対象: SQL Server 2012 (11.x) 以降のバージョン。

テーブルでセマンティック インデックス作成が有効になっています。

1 = True

0 = False

基本データ型: int
TableHasActiveFulltextIndex テーブル 適用対象: SQL Server 2008 (10.0.x) 以降のバージョン。

テーブルにアクティブなフルテキスト インデックスがあります。

1 = True

0 = False

基本データ型: int
TableHasCheckCnst テーブル テーブルには CHECK 制約があります。

1 = True

0 = False

基本データ型: int
TableHasClustIndex テーブル テーブルにクラスター化インデックスがあります。

1 = True

0 = False

基本データ型: int
TableHasDefaultCnst テーブル テーブルには DEFAULT 制約があります。

1 = True

0 = False

基本データ型: int
TableHasDeleteTrigger テーブル テーブルには、 DELETE トリガーがあります。

1 = True

0 = False

基本データ型: int
TableHasForeignKey テーブル テーブルには FOREIGN KEY 制約があります。

1 = True

0 = False

基本データ型: int
TableHasForeignRef テーブル テーブルは、 FOREIGN KEY 制約によって参照されます。

1 = True

0 = False

基本データ型: int
TableHasIdentity テーブル テーブルに ID 列があります。

1 = True

0 = False

基本データ型: int
TableHasIndex テーブル テーブルに任意の種類のインデックスがあります。

1 = True

0 = False

基本データ型: int
TableHasInsertTrigger テーブル オブジェクトには、 INSERT トリガーがあります。

1 = True

0 = False

基本データ型: int
TableHasNonclustIndex テーブル テーブルに非クラスター化インデックスがあります。

1 = True

0 = False

基本データ型: int
TableHasPrimaryKey テーブル テーブルに主キーがあります。

1 = True

0 = False

基本データ型: int
TableHasRowGuidCol テーブル テーブルには、uniqueidentifier 列のROWGUIDCOLがあります。

1 = True

0 = False

基本データ型: int
TableHasTextImage テーブル テーブルには、textntext、または image 列があります。

1 = True

0 = False

基本データ型: int
TableHasTimestamp テーブル テーブルには、timestamp 列があります。

1 = True

0 = False

基本データ型: int
TableHasUniqueCnst テーブル テーブルには UNIQUE 制約があります。

1 = True

0 = False

基本データ型: int
TableHasUpdateTrigger テーブル オブジェクトには、 UPDATE トリガーがあります。

1 = True

0 = False

基本データ型: int
TableHasVarDecimalStorageFormat テーブル テーブルで vardecimal ストレージ形式が有効になっています。

1 = True

0 = False
TableInsertTrigger テーブル テーブルには、 INSERT トリガーがあります。

>1 = 指定された種類の最初のトリガーの ID。

基本データ型: int
TableInsertTriggerCount テーブル テーブルには、指定した数の INSERT トリガーがあります。

>0 = INSERT トリガーの数。

基本データ型: int
TableIsFake テーブル テーブルは実在せず、 データベース エンジンによって、要求時に内部的に具体化されます。

1 = True

0 = False

基本データ型: int
TableIsLockedOnBulkLoad テーブル bcp ジョブまたはBULK INSERT ジョブが原因でテーブルがロックされています。

1 = True

0 = False

基本データ型: int
TableIsMemoryOptimized テーブル 適用対象: SQL Server 2014 (12.x) 以降のバージョン。

テーブルはメモリ最適化されています

1 = True

0 = False

基本データ型: int

詳細については、「 In-Memory OLTP の概要と使用シナリオ」を参照してください。
TableIsPinned テーブル テーブルは固定され、データ キャッシュに確保されています。

0 = False

この機能は SQL Server 2005 (9.x) 以降ではサポートされていません。
TableTextInRowLimit テーブル テーブルに text in row オプション セットがあります。

> 0 = text in row に許可されている最大バイト数。

0 = text in row オプションは設定されていません。

基本データ型: int
TableUpdateTrigger テーブル テーブルには、 UPDATE トリガーがあります。

> 1 = 指定された種類の最初のトリガーの ID。

基本データ型: int
TableUpdateTriggerCount テーブル テーブルには、指定した数の UPDATE トリガーがあります。

> 0 = UPDATE トリガーの数。

基本データ型: int
UserDataAccess 関数またはビュー SQL Server のローカル インスタンス内にあるユーザー データやユーザー テーブルにオブジェクトからアクセスすることを示します。

1 = 読み取り

0 = なし

基本データ型: int
TableHasColumnSet テーブル テーブルに列セットがあります。

0 = False

1 = True

詳細については、「 列セットの使用」を参照してください。
Cardinality テーブル (システムまたはユーザー定義)、ビュー、またはインデックス 適用対象: SQL Server 2012 (11.x) 以降のバージョン。

指定されたオブジェクト内の行数。
TableTemporalType テーブル 適用対象: SQL Server 2016 (13.x) 以降のバージョン。

テーブルの種類を指定します。

0 = 非テンポラル テーブル

1 = システムのバージョン情報のテーブルの履歴テーブル

2 = システムのバージョン情報のテンポラル テーブル

戻り値の型

sql_variant

例外

エラーが発生した場合、または呼び出し元にオブジェクトを表示する権限がない場合に NULL を返します。

ユーザーが所有しているか、または権限を与えられている、セキュリティ保護可能なリソースのメタデータのみを表示できます。 つまり、ユーザーがオブジェクトに対する権限を持っていない場合、メタデータを出力する組み込み関数 (OBJECTPROPERTYEX など) は NULL を返す可能性があります。 詳細については、「 メタデータの可視性の構成」を参照してください。

解説

データベース エンジン を前提としています object_id が現在のデータベース コンテキストでします。 別のデータベース内の object_id を参照するクエリは、 NULL または正しくない結果を返します。 たとえば、次のクエリでは、現在のデータベース コンテキストは master データベースです。 データベース エンジンは、クエリで指定されたデータベースではなく、そのデータベース内の指定された object_id のプロパティ値を返そうとします。 ビュー vEmployeemaster データベースにないため、クエリから正しくない結果が返されます。

USE master;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'AdventureWorks2022.HumanResources.vEmployee'), 'IsView');
GO

OBJECTPROPERTYEX(view_id, 'IsIndexable') IsIndexable プロパティを評価するには、ビュー定義、正規化、部分最適化の解析が必要なため、コンピューター リソースが大幅に消費される可能性があります。 IsIndexable プロパティではインデックスを作成できるテーブルまたはビューを指定しますが、特定のインデックス キーの要件が満たされない場合、インデックスの実際の作成は失敗します。 詳細については、「 CREATE INDEX (Transact-SQL)」を参照してください。

OBJECTPROPERTYEX (table_id, 'TableHasActiveFulltextIndex') は、インデックス作成のためにテーブルの少なくとも 1 つの列が追加されると、1 (true) の値を返します。 インデックス作成で先頭の列が追加されるとすぐ、フルテキスト インデックス作成が自動的にアクティブになります。

メタデータの表示に関する制限は、結果セットに適用されます。 詳細については、「 メタデータの可視性の構成」を参照してください。

A. オブジェクトの基本型を検索する

次の例では、AdventureWorks2022 データベースにEmployee テーブルのSYNONYMMyEmployeeTableを作成し、SYNONYMの基本型を返します。

USE AdventureWorks2022;
GO
CREATE SYNONYM MyEmployeeTable FOR HumanResources.Employee;
GO
SELECT OBJECTPROPERTYEX ( object_id(N'MyEmployeeTable'), N'BaseType')AS [Base Type];
GO

結果セットでは、基になるオブジェクトである Employee テーブルの基本の種類が、ユーザー テーブルであることが示されます。

Base Type
--------
U

B. プロパティ値を返す

次の例では、指定したテーブルの UPDATE トリガーの数を返します。

USE AdventureWorks2022;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'HumanResources.Employee'), N'TABLEUPDATETRIGGERCOUNT');
GO

C. FOREIGN KEY 制約を持つテーブルを検索する

次の例では、 TableHasForeignKey プロパティを使用して、 FOREIGN KEY 制約を持つすべてのテーブルを返します。

USE AdventureWorks2022;
GO
SELECT name, object_id, schema_id, type_desc
FROM sys.objects
WHERE OBJECTPROPERTYEX(object_id, N'TableHasForeignKey') = 1
ORDER BY name;
GO

例: Azure Synapse Analytics、Analytics Platform System (PDW)

D: オブジェクトの基本型を検索する

次の例では、dbo.DimReseller オブジェクトの基本型を返します。

-- Uses AdventureWorks

SELECT OBJECTPROPERTYEX ( object_id(N'dbo.DimReseller'), N'BaseType')AS BaseType;

結果セットでは、基になるオブジェクトである dbo.DimReseller テーブルの基本の種類が、ユーザー テーブルであることが示されます。

BaseType
--------
U