@@ -184,7 +184,8 @@ in printSQL setup
184184CREATE TABLE IF NOT EXISTS "tab" ("a" int NULL, "b" real NULL);
185185-}
186186createTableIfNotExists
187− :: ( HasQualified sch tab db schema ('Table (constraints :=> columns))
187+ :: ( Has sch db schema
188+ , Has tab schema ('Table (constraints :=> columns))
188189 , SOP.SListI columns
189190 , SOP.SListI constraints )
190191 => QualifiedAlias sch tab -- ^ the name of the table to add
@@ -273,7 +274,8 @@ let
273274CREATE TABLE "tab" ("a" int NOT NULL, "b" int NOT NULL, CONSTRAINT "inequality" CHECK (("a" > "b")));
274275-}
275276check
276− :: ( HasQualified sch tab db schema ('Table table)
277+ :: ( Has sch db schema
278+ , Has tab schema ('Table table)
277279 , HasAll aliases (TableToRow table) subcolumns )
278280 => NP Alias aliases
279281 -- ^ specify the subcolumns which are getting checked
@@ -307,7 +309,8 @@ let
307309CREATE TABLE "tab" ("a" int NULL, "b" int NULL, CONSTRAINT "uq_a_b" UNIQUE ("a", "b"));
308310-}
309311unique
310− :: ( HasQualified sch tab db schema('Table table)
312+ :: ( Has sch db schema
313+ , Has tab schema('Table table)
311314 , HasAll aliases (TableToRow table) subcolumns )
312315 => NP Alias aliases
313316 -- ^ specify subcolumns which together are unique for each row
@@ -340,7 +343,8 @@ let
340343CREATE TABLE "tab" ("id" serial, "name" text NOT NULL, CONSTRAINT "pk_id" PRIMARY KEY ("id"));
341344-}
342345primaryKey
343− :: ( HasQualified sch tab db schema ('Table table)
346+ :: ( Has sch db schema
347+ , Has tab schema ('Table table)
344348 , HasAll aliases (TableToColumns table) subcolumns
345349 , AllNotNull subcolumns )
346350 => NP Alias aliases
@@ -456,8 +460,9 @@ type ForeignKeyed db
456460 columns refcolumns
457461 constraints cols
458462 reftys tys =
459− ( HasQualified sch child db schema ('Table table)
460− , HasQualified sch parent db schema ('Table reftable)
463+ ( Has sch db schema
464+ , Has child schema ('Table table)
465+ , Has parent schema ('Table reftable)
461466 , HasAll columns (TableToColumns table) tys
462467 , reftable ~ (constraints :=> cols)
463468 , HasAll refcolumns cols reftys
@@ -518,7 +523,8 @@ DROP statements
518523-- >>> printSQL definition
519524-- DROP TABLE "muh_table";
520525dropTable
521− :: HasQualified sch tab db schema ('Table table)
526+ :: ( Has sch db schema
527+ , Has tab schema ('Table table))
522528 => QualifiedAlias sch tab -- ^ table to remove
523529 -> Definition db (Alter sch (Drop tab schema) db)
524530dropTable tab = UnsafeDefinition $ "DROP TABLE" <+> renderQualifiedAlias tab <> ";"
@@ -529,7 +535,7 @@ ALTER statements
529535
530536-- | `alterTable` changes the definition of a table from the schema.
531537alterTable
532− :: HasQualified sch tab db schema ('Table table0)
538+ :: (Has sch db schema, Has tab schema ('Table table0))
533539 => QualifiedAlias sch tab -- ^ table to alter
534540 -> AlterTable sch tab db table1 -- ^ alteration to perform
535541 -> Definition db (Alter sch (Alter tab ('Table table1) schema) db)
@@ -575,7 +581,8 @@ newtype AlterTable
575581-- ALTER TABLE "tab" ADD CONSTRAINT "positive" CHECK (("col" > 0));
576582addConstraint
577583 :: ( KnownSymbol alias
578− , HasQualified sch tab db schema ('Table table0)
584+ , Has sch db schema
585+ , Has tab schema ('Table table0)
579586 , table0 ~ (constraints :=> columns)
580587 , table1 ~ (Create alias constraint constraints :=> columns) )
581588 => Alias alias
@@ -599,7 +606,8 @@ addConstraint alias constraint = UnsafeAlterTable $
599606-- ALTER TABLE "tab" DROP CONSTRAINT "positive";
600607dropConstraint
601608 :: ( KnownSymbol constraint
602− , HasQualified sch tab db schema ('Table table0)
609+ , Has sch db schema
610+ , Has tab schema ('Table table0)
603611 , table0 ~ (constraints :=> columns)
604612 , table1 ~ (Drop constraint constraints :=> columns) )
605613 => Alias constraint
@@ -638,7 +646,8 @@ class AddColumn ty where
638646 -- ALTER TABLE "tab" ADD COLUMN "col2" text NULL;
639647 addColumn
640648 :: ( KnownSymbol column
641− , HasQualified sch tab db schema ('Table table0)
649+ , Has sch db schema
650+ , Has tab schema ('Table table0)
642651 , table0 ~ (constraints :=> columns) )
643652 => Alias column -- ^ column to add
644653 -> ColumnTypeExpression db ty -- ^ type of the new column
@@ -666,7 +675,8 @@ instance {-# OVERLAPPABLE #-} AddColumn ('NoDef :=> 'Null ty)
666675-- ALTER TABLE "tab" DROP COLUMN "col2";
667676dropColumn
668677 :: ( KnownSymbol column
669− , HasQualified sch tab db schema ('Table table0)
678+ , Has sch db schema
679+ , Has tab schema ('Table table0)
670680 , table0 ~ (constraints :=> columns)
671681 , table1 ~ (constraints :=> Drop column columns) )
672682 => Alias column -- ^ column to remove
@@ -688,7 +698,8 @@ dropColumn column = UnsafeAlterTable $
688698renameColumn
689699 :: ( KnownSymbol column0
690700 , KnownSymbol column1
691− , HasQualified sch tab db schema ('Table table0)
701+ , Has sch db schema
702+ , Has tab schema ('Table table0)
692703 , table0 ~ (constraints :=> columns)
693704 , table1 ~ (constraints :=> Rename column0 column1 columns) )
694705 => Alias column0 -- ^ column to rename
@@ -700,7 +711,8 @@ renameColumn column0 column1 = UnsafeAlterTable $
700711-- | An `alterColumn` alters a single column.
701712alterColumn
702713 :: ( KnownSymbol column
703− , HasQualified sch tab db schema ('Table table0)
714+ , Has sch db schema
715+ , Has tab schema ('Table table0)
704716 , table0 ~ (constraints :=> columns)
705717 , Has column columns ty0
706718 , tables1 ~ (constraints :=> Alter column ty1 columns))
@@ -833,7 +845,7 @@ createView alias query = UnsafeDefinition $
833845-- :}
834846-- DROP VIEW "bc";
835847dropView
836− :: HasQualified sch vw db schema ('View view)
848+ :: (Has sch db schema, Has vw schema ('View view))
837849 => QualifiedAlias sch vw -- ^ view to remove
838850 -> Definition db (Alter sch (Drop vw schema) db)
839851dropView vw = UnsafeDefinition $ "DROP VIEW" <+> renderQualifiedAlias vw <> ";"
@@ -938,7 +950,7 @@ instance (KnownSymbol alias, PGTyped schema ty)
938950-- >>> printSQL (dropType #schwarma :: Definition '["schwarma" ::: 'Typedef (PG (Enumerated Schwarma))] '[])
939951-- DROP TYPE "schwarma";
940952dropType
941− :: HasQualified sch td db schema ('Typedef ty)
953+ :: (Has sch db schema, Has td schema ('Typedef ty))
942954 => QualifiedAlias sch td
943955 -- ^ name of the user defined type
944956 -> Definition db (Alter sch (Drop td schema) db)