diff --git a/pkg/writers/pgsql/migration_writer.go b/pkg/writers/pgsql/migration_writer.go index 3ce9ee8..e1e8ded 100644 --- a/pkg/writers/pgsql/migration_writer.go +++ b/pkg/writers/pgsql/migration_writer.go @@ -477,7 +477,7 @@ func (w *MigrationWriter) generateIndexScripts(model *models.Schema, current *mo } if len(pkColumns) > 0 { sort.Strings(pkColumns) - constraintName := fmt.Sprintf("pk_%s_%s", strings.ToLower(model.Name), strings.ToLower(modelTable.Name)) + constraintName := fmt.Sprintf("pk_%s_%s", model.SQLName(), modelTable.SQLName()) shouldCreate := true if currentTable != nil { diff --git a/pkg/writers/pgsql/writer.go b/pkg/writers/pgsql/writer.go index b2fcb5e..76f8645 100644 --- a/pkg/writers/pgsql/writer.go +++ b/pkg/writers/pgsql/writer.go @@ -594,7 +594,8 @@ func (w *Writer) writeIndexes(schema *models.Schema) error { if index.Unique { indexType = "uidx" } - indexName = fmt.Sprintf("%s_%s_%s", indexType, schema.SQLName(), table.SQLName()) + columnSuffix := strings.Join(index.Columns, "_") + indexName = fmt.Sprintf("%s_%s_%s", indexType, table.SQLName(), strings.ToLower(columnSuffix)) } // Build column list with operator class support for GIN indexes