3 type insert_kind
= Values
| Assign deriving
(Show
)
5 (** inferred inserted values to complete sql statement *)
6 type inferred
= (insert_kind
* Sql.Schema.t
) option deriving
(Show
)
8 type cardinality
= [`Zero_one
| `One
| `Nat
] deriving
(Show
)
10 let cardinality_to_string c
= Show.show
<cardinality
>(c
)
12 type kind
= | Select
of cardinality
(** possible number of rows *)
13 | Insert
of inferred
* string (** table *)
15 | CreateIndex
of string
16 | Update
of string option (** name for single-table UPDATEs *)
23 type t
= { schema
: Sql.Schema.t
; params
: Sql.params
; kind
: kind
; props
: Props.t
; }