次の方法で共有


ForeignKey クラス

ForeignKey オブジェクトは、SQL Server 外部キーを表します。

継承階層

System.Object
  Microsoft.SqlServer.Management.Smo.SmoObjectBase
    Microsoft.SqlServer.Management.Smo.SqlSmoObject
      Microsoft.SqlServer.Management.Smo.NamedSmoObject
        Microsoft.SqlServer.Management.Smo.ScriptNameObjectBase
          Microsoft.SqlServer.Management.Smo.ForeignKey

名前空間:  Microsoft.SqlServer.Management.Smo
アセンブリ:  Microsoft.SqlServer.Smo (Microsoft.SqlServer.Smo.dll)

構文

'宣言
Public NotInheritable Class ForeignKey _
    Inherits ScriptNameObjectBase _
    Implements ICreatable, IDroppable, IMarkForDrop, IAlterable,  _
    IRenamable, IExtendedProperties, IScriptable, ISfcSupportsDesignMode
'使用
Dim instance As ForeignKey
public sealed class ForeignKey : ScriptNameObjectBase, 
    ICreatable, IDroppable, IMarkForDrop, IAlterable, IRenamable, 
    IExtendedProperties, IScriptable, ISfcSupportsDesignMode
public ref class ForeignKey sealed : public ScriptNameObjectBase, 
    ICreatable, IDroppable, IMarkForDrop, IAlterable, IRenamable, 
    IExtendedProperties, IScriptable, ISfcSupportsDesignMode
[<SealedAttribute>]
type ForeignKey =  
    class 
        inherit ScriptNameObjectBase 
        interface ICreatable 
        interface IDroppable 
        interface IMarkForDrop 
        interface IAlterable 
        interface IRenamable 
        interface IExtendedProperties 
        interface IScriptable 
        interface ISfcSupportsDesignMode 
    end
public final class ForeignKey extends ScriptNameObjectBase implements ICreatable, IDroppable, IMarkForDrop, IAlterable, IRenamable, IExtendedProperties, IScriptable, ISfcSupportsDesignMode

ForeignKey 型は、以下のメンバーを公開しています。

コンストラクター

  名前 説明
パブリック メソッド ForeignKey() ForeignKey クラスの新しいインスタンスを初期化します。
パブリック メソッド ForeignKey(Table, String) 指定したテーブルで、指定した名前を使用して ForeignKey クラスの新しいインスタンスを初期化します。

先頭に戻る

プロパティ

  名前 説明
パブリック プロパティ Columns Column オブジェクトのコレクションを表します。各 Column オブジェクトは、外部キーに含まれる列を表します。
パブリック プロパティ CreateDate 外部キーが作成された日時を取得します。
パブリック プロパティ DateLastModified 外部キーが前回変更された日時を取得します。
パブリック プロパティ DeleteAction 外部キーによって参照される行が削除されたときに実行するアクションを取得または設定します。
パブリック プロパティ ExtendedProperties ExtendedProperty オブジェクトのコレクションを表します。各 ExtendedProperty オブジェクトは、ForeignKey オブジェクトの拡張プロパティを表します。
パブリック プロパティ ID 外部キーを一意に識別する ID 値を取得します。
パブリック プロパティ IsChecked 既存の行を確認しないで外部キー制約が有効にされたかどうかを示す Boolean プロパティ値を取得または設定します。
パブリック プロパティ IsEnabled 外部キーが有効かどうかを示す Boolean プロパティ値を取得または設定します。
パブリック プロパティ IsFileTableDefined ファイル テーブルが定義されているかどうかを取得または設定します。
パブリック プロパティ IsSystemNamed 外部キーがシステムとユーザーのどちらによって名付けられたかを示す Boolean プロパティ値を取得します。
パブリック プロパティ Name 外部キーの名前を取得または設定します。 (NamedSmoObject.Name をオーバーライドします。)
パブリック プロパティ NotForReplication 外部キーがレプリケーションで利用可能かどうかを示す Boolean プロパティ値を取得します。
パブリック プロパティ Parent ForeignKey オブジェクトの親である Table オブジェクトを取得または設定します。
パブリック プロパティ Properties オブジェクトのプロパティを表す Property オブジェクトのコレクションを取得します。 (SqlSmoObject から継承されています。)
パブリック プロパティ ReferencedKey 外部キーによって参照される主キーを取得します。
パブリック プロパティ ReferencedTable 外部キーによって参照される主キーを含むテーブルを取得または設定します。
パブリック プロパティ ReferencedTableSchema 外部キーによって参照される主キーを含むテーブルのスキーマを取得または設定します。
パブリック プロパティ ScriptReferencedTable 外部キーによって参照されるテーブルのスクリプトを作成するかどうかを示す Boolean 値を取得または設定します。
パブリック プロパティ ScriptReferencedTableSchema 外部キーによって参照されるテーブルのスキーマのスクリプトを作成するかどうかを示す Boolean 値を取得または設定します。
パブリック プロパティ State 参照先のオブジェクトの状態を取得します。 (SmoObjectBase から継承されています。)
パブリック プロパティ UpdateAction 外部キーがカスケード更新をサポートするかどうかを示す Boolean プロパティ値を取得または設定します。
パブリック プロパティ Urn オブジェクトを一意に識別する URN (Uniform Resource Name) アドレスの値を取得します。 (SqlSmoObject から継承されています。)
パブリック プロパティ UserData 参照先のオブジェクトに関連付けられたユーザー定義データを取得します。値の設定も可能です。 (SmoObjectBase から継承されています。)

先頭に戻る

メソッド

  名前 説明
パブリック メソッド Alter SQL Server のインスタンスでの ForeignKey オブジェクトのプロパティに対する変更をすべて更新します。 
パブリック メソッド Create SQL Server のインスタンスで、ForeignKey オブジェクトによる定義に基づいて外部キーを作成します。
パブリック メソッド Discover Object 型の一覧を検出します。 (SqlSmoObject から継承されています。)
パブリック メソッド Drop 外部キーを削除します。
パブリック メソッド Equals (Object から継承されています。)
プロテクト メソッド FormatSqlVariant SqlVariant 型としてオブジェクトの書式を設定します。 (SqlSmoObject から継承されています。)
プロテクト メソッド GetContextDB このオブジェクトに関連付けられているコンテキスト データベースを取得します。 (SqlSmoObject から継承されています。)
プロテクト メソッド GetDBName オブジェクトに関連付けられたデータベース名を取得します。 (SqlSmoObject から継承されています。)
パブリック メソッド GetHashCode (Object から継承されています。)
プロテクト メソッド GetPropValue SqlSmoObject オブジェクトのプロパティの値を取得します。 (SqlSmoObject から継承されています。)
プロテクト メソッド GetPropValueOptional SqlSmoObject オブジェクトのプロパティの値を取得します。 (SqlSmoObject から継承されています。)
プロテクト メソッド GetPropValueOptionalAllowNull SqlSmoObject オブジェクトのプロパティの値を取得します。 (SqlSmoObject から継承されています。)
プロテクト メソッド GetServerObject SqlSmoObject オブジェクトのサーバーを取得します。 (SqlSmoObject から継承されています。)
パブリック メソッド GetType (Object から継承されています。)
パブリック メソッド Initialize() オブジェクトを初期化し、プロパティを強制的に読み込ませます。 (SqlSmoObject から継承されています。)
パブリック メソッド Initialize(Boolean) オブジェクトを初期化し、プロパティを強制的に読み込ませます。 (SqlSmoObject から継承されています。)
プロテクト メソッド IsObjectInitialized オブジェクトが初期化されたかどうかを確認します。 (SqlSmoObject から継承されています。)
プロテクト メソッド IsObjectInSpace オブジェクトが孤立しているか、または SQL Server のインスタンスに接続されているかを確認します。 (SqlSmoObject から継承されています。)
パブリック メソッド MarkForDrop 外部キーの親 Table オブジェクトが Alter メソッドによって次回変更されるときに、削除される外部キーをマークします。
パブリック メソッド Refresh スクリプト名を更新します。 (ScriptNameObjectBase から継承されています。)
パブリック メソッド Rename 外部キーの名前を指定された新しい名前に変更します。
パブリック メソッド Script() 外部キーの再作成に使用できる Transact-SQL スクリプトを生成します。
パブリック メソッド Script(ScriptingOptions) スクリプト オプションで指定したとおりに外部キーを再作成するために使用できる Transact-SQL スクリプトを生成します。 
プロテクト メソッド SetParentImpl SqlSmoObject の親を newParent パラメーターに設定します。 (SqlSmoObject から継承されています。)
パブリック メソッド ToString 参照するオブジェクトを表す String を返します。 (SqlSmoObject から継承されています。)
パブリック メソッド Validate オブジェクトの状態を検証します。 (SmoObjectBase から継承されています。)

先頭に戻る

イベント

  名前 説明
パブリック イベント PropertyChanged プロパティが変更されるときに発生するイベントを表します。 (SqlSmoObject から継承されています。)
パブリック イベント PropertyMetadataChanged プロパティ メタデータが変更されたときに発生するイベントを表します。 (SqlSmoObject から継承されています。)

先頭に戻る

明示的なインターフェイスの実装

  名前 説明
明示的なインターフェイスの実装プライベート メソッド IAlienObject.Discover 依存関係を検出します。このメンバーをコード内で直接参照しないでください。このメンバーは、SQL Server インフラストラクチャをサポートしています。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.GetDomainRoot ドメインのルートを返します。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.GetParent このオブジェクトの親を取得します。このメンバーをコード内で直接参照しないでください。このメンバーは、SQL Server インフラストラクチャをサポートしています。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.GetPropertyType 指定したプロパティの種類を取得します。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.GetPropertyValue 指定されたプロパティの値を取得します。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.GetUrn オブジェクトの Unified Resource Name (URN) を取得します。このメンバーをコード内で直接参照しないでください。このメンバーは、SQL Server インフラストラクチャをサポートしています。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.Resolve オブジェクトに関する情報を含むインスタンスを、オブジェクトの Unified Resource Name (URN) から取得します。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.SetObjectState オブジェクトの状態を、指定した SfcObjectState 値に設定します。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド IAlienObject.SetPropertyValue プロパティの値を設定します。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート メソッド ISfcPropertyProvider.GetPropertySet このオブジェクトのプロパティ セットへのインターフェイス リファレンスを取得します。このメンバーをコード内で直接参照しないでください。このメンバーは、SQL Server インフラストラクチャをサポートしています。 (SqlSmoObject から継承されています。)
明示的なインターフェイスの実装プライベート プロパティ ISfcSupportsDesignMode.IsDesignMode オブジェクトがデザイン モードをサポートしているかどうかを示すブール値を取得します。単に情報を示すためだけに特定されます。サポートされていません。将来の互換性は保証されません。

先頭に戻る

説明

ForeignKey オブジェクトのプロパティを取得するには、固定サーバー ロール public のメンバーでもかまいません。

ForeignKey オブジェクトのプロパティを設定するには、親テーブルの ALTER 権限を持っているか、固定データベース ロール db_owner のメンバーである必要があります。

外部キーを作成または削除するには、親テーブルの ALTER 権限を持っているか、固定データベース ロール db_owner のメンバーである必要があります。

スレッド セーフ

この型の public static (Microsoft Visual Basic では Shared) のすべてのメンバーは、マルチスレッド操作で安全に使用できます。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

使用例

外部キーの作成、変更、および削除

スレッド セーフ

この型の public static (Visual Basic では Shared) のメンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

関連項目

参照

Microsoft.SqlServer.Management.Smo 名前空間

その他の技術情報

外部キーの作成、変更、および削除

CREATE TABLE (Transact-SQL)