def Column_resolve_references(column, tables):
    if isinstance(column.references, tuple):
        other_table_name, other_column_id = column.references
        other_table = tables[other_table_name]
        column.references = other_table.resolve_column(other_column_id, column.table.identifier + "." + column.identifier)
        # Postgres adds indices for foreign keys
        index = Index("%s_%s_%s_%s" % (column.table.identifier, column.identifier,
                                       column.references.table.identifier, column.references.identifier),
                      unique=False)
        index.column_ids = (column.identifier,)
        column.table.add_index(index)
예제 #2
0
 def create_index(column, unique):
     index = Index(column.name.replace(".", '_'), unique=unique)
     index.column_ids = (column.identifier,)
     column.table.add_index(index)