@@ -45,6 +45,7 @@ module Squeal.PostgreSQL.Definition
45 , alterTable
45 , alterTable
46 , alterTableRename
46 , alterTableRename
47 , addConstraint
47 , addConstraint
48 , AlterTable (UnsafeAlterTable, renderAlterTable)
49 , AlterTable (UnsafeAlterTable, renderAlterTable)
49 , addColumnDefault
50 , addColumnDefault
50 , addColumnNull
51 , addColumnNull
@@ -373,17 +374,24 @@ alterTableRename table0 table1 = UnsafeDefinition $
373-- <+> "ADD" <+> renderTableConstraintExpression constraint <> ";"
374-- <+> "ADD" <+> renderTableConstraintExpression constraint <> ";"
375addConstraint
376addConstraint
377+ :: KnownSymbol constraintName
378+ => Alias constraintName
376− :: Aliased (TableConstraintExpression schema (UnconstrainColumns columns)) constraint
379+ -> TableConstraintExpression schema (UnconstrainColumns columns) constraint
380+ -> AlterTable schema
377− -> AlterTable schema (constraints :=> columns)
381+ (constraints :=> columns)
378− ((constraint ': constraints) :=> columns)
382+ (Create constraintName constraint constraints :=> columns)
379−addConstraint constraint = UnsafeAlterTable $
383+addConstraint constraintName constraint = UnsafeAlterTable $
380− "ADD" <+> "CONSTRAINT" <+> renderConstraint constraint
384+ "ADD" <+> "CONSTRAINT" <+> renderAlias constraintName
383− :: Aliased (TableConstraintExpression schema columns) constraint
385− renderConstraint (constraint' `As` alias) =
386− "CONSTRAINT" <+> renderAlias alias <+> renderTableConstraintExpression constraint'
385+ <+> renderTableConstraintExpression constraint
388+ :: KnownSymbol constraintName
389+ => Alias constraintName
390+ -> AlterTable schema
391+ (constraints :=> columns)
392+ (Drop constraintName constraints :=> columns)
393+dropConstraint constraint = UnsafeAlterTable $
394+ "DROP" <+> "CONSTRAINT" <+> renderAlias constraint
388-- | An `AlterTable` describes the alteration to perform on the columns
396-- | An `AlterTable` describes the alteration to perform on the columns
389-- of a table.
397-- of a table.