private static void UpdateForeignKeyColumns(TableDefinitionCollection tableList, IDataReader reader) { while (reader.Read()) { TableColumnDefinition columnInfo = tableList.FindColumn(reader.GetString(0), reader.GetString(1), reader.GetString(2)); if (columnInfo != null && columnInfo.IsForeignKey) { columnInfo.ForeignKeyColumn = tableList.FindColumn(reader.GetString(3), reader.GetString(4), reader.GetString(5)); } } }
private static void UpdateColumnConstraints(TableDefinitionCollection tableList, IDataReader reader) { while (reader.Read()) { TableColumnDefinition columnInfo = tableList.FindColumn(reader.GetString(0), reader.GetString(1), reader.GetString(2)); if (columnInfo == null) { continue; } switch (reader.GetString(3)) { case SchemaValue.ForeignKey: columnInfo.IsForeignKey = true; break; case SchemaValue.PrimaryKey: columnInfo.IsPrimaryKey = true; columnInfo.ParentTable.PrimaryKey = columnInfo; break; case SchemaValue.Unique: columnInfo.IsUnique = true; break; } } }