diff --git a/src/lobos/backends/postgresql.clj b/src/lobos/backends/postgresql.clj index 9a0d809..4b86c4e 100644 --- a/src/lobos/backends/postgresql.clj +++ b/src/lobos/backends/postgresql.clj @@ -77,9 +77,10 @@ (defmethod compile [:postgresql ColumnDefinition] [definition] (let [{:keys [db-spec cname data-type default - auto-inc not-null others]} definition] + auto-inc not-null others alter]} definition] (apply join \space (as-identifier db-spec cname) + (when alter "TYPE") (if auto-inc (if (= :bigint (:dtype data-type)) "BIGSERIAL" diff --git a/src/lobos/compiler.clj b/src/lobos/compiler.clj index 12ea669..1256342 100644 --- a/src/lobos/compiler.clj +++ b/src/lobos/compiler.clj @@ -311,7 +311,7 @@ (defmethod compile [::standard AlterModifyDataTypeAndOptionsAction] [action] (let [{:keys [db-spec element]} action] - (str "ALTER COLUMN " (compile element)))) + (str "ALTER COLUMN " (compile (assoc element :alter :alter))))) (defmethod compile [::standard AlterModifyDefaultAction] [action]