fk.setDeleteRule(getKeyModifyRuleType(deleteRule));
// Can the evaluation of foreign key constraints be deferred until commit
fk.setDeferrability(getKeyDeferrabilityType(defferability));
// find PK table column
TableColumn pkColumn = (pkTable == null) ? null : pkTable.findColumnByName(pkColumnName);
// Sets mapped source column (in PK/source table) for this foreign key column
fkColumn.setSourceColumn(pkColumn);
// add FK column to the foreign key
fk.addColumn(fkColumn);