@@ -246,7 +246,9 @@ check
246 :: ( Has alias schema ('Table table)
246 :: ( Has alias schema ('Table table)
247 , HasAll aliases (TableToRelation table) subcolumns )
247 , HasAll aliases (TableToRelation table) subcolumns )
248 => NP Alias aliases
248 => NP Alias aliases
249+ -- ^ specify the subcolumns which are getting checked
249 -> (forall tab. Condition '[tab ::: subcolumns] 'Ungrouped '[])
250 -> (forall tab. Condition '[tab ::: subcolumns] 'Ungrouped '[])
251+ -- ^ a closed `Condition` on those subcolumns
250 -> TableConstraintExpression schema alias ('Check aliases)
252 -> TableConstraintExpression schema alias ('Check aliases)
251check _cols condition = UnsafeTableConstraintExpression $
253check _cols condition = UnsafeTableConstraintExpression $
252 "CHECK" <+> parenthesized (renderExpression condition)
254 "CHECK" <+> parenthesized (renderExpression condition)
@@ -277,6 +279,7 @@ unique
277 :: ( Has alias schema ('Table table)
279 :: ( Has alias schema ('Table table)
278 , HasAll aliases (TableToRelation table) subcolumns )
280 , HasAll aliases (TableToRelation table) subcolumns )
279 => NP Alias aliases
281 => NP Alias aliases
282+ -- ^ specify subcolumns which together are unique for each row
280 -> TableConstraintExpression schema alias ('Unique aliases)
283 -> TableConstraintExpression schema alias ('Unique aliases)
281unique columns = UnsafeTableConstraintExpression $
284unique columns = UnsafeTableConstraintExpression $
282 "UNIQUE" <+> parenthesized (commaSeparated (renderAliases columns))
285 "UNIQUE" <+> parenthesized (commaSeparated (renderAliases columns))
@@ -309,6 +312,7 @@ primaryKey
309 , HasAll aliases (TableToColumns table) subcolumns
312 , HasAll aliases (TableToColumns table) subcolumns
310 , AllNotNull subcolumns )
313 , AllNotNull subcolumns )
311 => NP Alias aliases
314 => NP Alias aliases
315+ -- ^ specify the subcolumns which together form a primary key.
312 -> TableConstraintExpression schema alias ('PrimaryKey aliases)
316 -> TableConstraintExpression schema alias ('PrimaryKey aliases)
313primaryKey columns = UnsafeTableConstraintExpression $
317primaryKey columns = UnsafeTableConstraintExpression $
314 "PRIMARY KEY" <+> parenthesized (commaSeparated (renderAliases columns))
318 "PRIMARY KEY" <+> parenthesized (commaSeparated (renderAliases columns))