次の方法で共有


ForeignKeys プロパティ

ForeignKey オブジェクトのコレクションを表します。各 ForeignKey オブジェクトは、テーブルで定義されている外部キーを表します。

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

構文

'宣言
<SfcObjectAttribute(SfcContainerRelationship.ChildContainer, SfcContainerCardinality.ZeroToAny,  _
    GetType(ForeignKey), SfcObjectFlags.Design)> _
Public ReadOnly Property ForeignKeys As ForeignKeyCollection
    Get
'使用
Dim instance As Table
Dim value As ForeignKeyCollection

value = instance.ForeignKeys
[SfcObjectAttribute(SfcContainerRelationship.ChildContainer, SfcContainerCardinality.ZeroToAny, 
    typeof(ForeignKey), SfcObjectFlags.Design)]
public ForeignKeyCollection ForeignKeys { get; }
[SfcObjectAttribute(SfcContainerRelationship::ChildContainer, SfcContainerCardinality::ZeroToAny, 
    typeof(ForeignKey), SfcObjectFlags::Design)]
public:
property ForeignKeyCollection^ ForeignKeys {
    ForeignKeyCollection^ get ();
}
[<SfcObjectAttribute(SfcContainerRelationship.ChildContainer, SfcContainerCardinality.ZeroToAny, 
    typeof(ForeignKey), SfcObjectFlags.Design)>]
member ForeignKeys : ForeignKeyCollection
function get ForeignKeys () : ForeignKeyCollection

プロパティ値

型: Microsoft.SqlServer.Management.Smo. . :: . .ForeignKeyCollection
テーブルで定義されたすべての外部キーを表す ForeignKey オブジェクト。

使用例

次のコード例では、AdventureWorks2008R2 テーブルのそれぞれの外部キーを表示する方法を示します。

C#

Server srv = new Server("(local)");
Database db = srv.Databases["AdventureWorks2008R2"];

Foreach (Table tb in db.Tables) 
{
   foreach (ForeignKey f in tb.ForeignKeys)
   {
      Console.WriteLine("The " + tb.Name + " table contains the " + f.ToString() + " foreign key.");
   }
}

Powershell

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$db = New-Object Microsoft.SqlServer.Management.Smo.Database
$db = $srv.Databases.Item("AdventureWorks2008R2")

Foreach ($tb in $db.Tables) 
{
   foreach ($f in $tb.ForeignKeys)
   {
      Write-Host "The" $tb.Name "table contains the" $f "foreign key."
   }
}