def METHOD_NAME():
    if is_sqlite:
        with op.batch_alter_table('attraction', reflect_kwargs=sqlite_reflect_kwargs) as batch_op:
            batch_op.add_column(sa.Column('slug', sa.Unicode(), server_default='', nullable=False))
        with op.batch_alter_table('attraction_feature', reflect_kwargs=sqlite_reflect_kwargs) as batch_op:
            batch_op.add_column(sa.Column('slug', sa.Unicode(), server_default='', nullable=False))
    else:
        op.add_column('attraction', sa.Column('slug', sa.Unicode(), server_default='', nullable=False))
        op.add_column('attraction_feature', sa.Column('slug', sa.Unicode(), server_default='', nullable=False))
    connection = op.get_bind()
    for attraction in connection.execute(attraction_table.select()):
        connection.execute(
            attraction_table.update().where(
                attraction_table.c.id == attraction.id
            ).values(
                slug=sluggify(attraction.name)
            )
        )
    for feature in connection.execute(attraction_feature_table.select()):
        connection.execute(
            attraction_feature_table.update().where(
                attraction_feature_table.c.id == feature.id
            ).values(
                slug=sluggify(feature.name)
            )
        )
    if is_sqlite:
        with op.batch_alter_table('attraction', reflect_kwargs=sqlite_reflect_kwargs) as batch_op:
            batch_op.create_unique_constraint(op.f('uq_attraction_slug'), ['slug'])
        with op.batch_alter_table('attraction_feature', reflect_kwargs=sqlite_reflect_kwargs) as batch_op:
            batch_op.create_unique_constraint(op.f('uq_attraction_feature_slug'), ['slug', 'attraction_id'])
    else:
        op.create_unique_constraint(op.f('uq_attraction_slug'), 'attraction', ['slug'])
        op.create_unique_constraint(op.f('uq_attraction_feature_slug'), 'attraction_feature', ['slug', 'attraction_id'])