我有一个小问题,至今没有找到答案:如何在c#中使用Microsoft.SqlServer.Smo获取表中外键列所引用的表?
foreach (Column column in currentTable.Columns) {
if (column.IsForeignKey) {
//GET TABLE FOREIGN KEY REFERS TO
}
}
我有一个小问题,至今没有找到答案:如何在c#中使用Microsoft.SqlServer.Smo获取表中外键列所引用的表?
foreach (Column column in currentTable.Columns) {
if (column.IsForeignKey) {
//GET TABLE FOREIGN KEY REFERS TO
}
}
你应该从表本身开始,枚举所有的外键。示例代码:
foreach (ForeignKey key in currentTable.ForeignKeys)
{
foreach (ForeignKeyColumn column in key.Columns)
{
Console.WriteLine("Column: {0} is a foreign key to Table: {1}",column.Name,key.ReferencedTable);
}
}
编辑:做了小改动。在第二个foreach循环中,使用 foreach (ForeignKeyColumn column in key.Columns) (之前我写成了 foreach (Column column in key.Columns),这是错误的,是我的失误。)