Module Sqlgg.TablesSource

Global list of tables

Sourcetype column = {
  1. attr : Sql.attr;
  2. source_kind : Sql.Source_type.kind Sql.collated option;
  3. default_sql : string option;
}
Sourcetype table = Sql.table
Sourcetype table_charset = {
  1. charset : Sql.charset_name;
  2. collation : string option;
}
Sourcetype table_ttl = {
  1. ttl_col : string;
  2. ttl_n : int;
  3. ttl_unit : string;
  4. ttl_enabled : bool;
}
Sourcemodule SMap : sig ... end
Sourcetype stored_index = {
  1. kind : Sql.index_op_kind;
  2. cols : string list;
}
Sourcetype stored_table = {
  1. name : Sql.table_name;
  2. columns : column list;
  3. tbl_charset : table_charset option;
  4. tbl_ttl : table_ttl option;
  5. tbl_indexes : stored_index SMap.t;
}
Sourceval store : stored_table list ref
Sourceval by_name : Sql.table_name -> Sql.table -> bool

FIXME table names case sensitivity?

Sourceval col_name : column -> string
Sourceval map_attr : (Sql.attr -> Sql.attr) -> column -> column
Sourceval find_column : name:string -> column list -> column option
Sourceval columns_to_schema : column list -> Sql.attr list
Sourceval column_of_attr : Sql.attr -> column
Sourceval no_such_table : Sql.table_name -> 'a
Sourceval table_exists : Sql.table_name -> 'a
Sourceval to_table : stored_table -> Sql.table_name * Sql.attr list
Sourceval get_from : Sql.table list -> Sql.table_name -> Sql.table
Sourceval find_stored : Sql.table_name -> stored_table option
Sourceval with_stored : Sql.table_name -> 'a -> (stored_table -> 'a) -> 'a
Sourceval get_schema : Sql.table_name -> Sql.attr list
Sourceval get_columns : Sql.table_name -> column list
Sourceval check : Sql.table_name -> unit
Sourceval add_columns : (Sql.table_name * column list) -> unit
Sourceval add : (Sql.table_name * Sql.attr list) -> unit
Sourceval alter : Sql.table_name -> (stored_table -> stored_table) -> unit
Sourceval alter_columns : Sql.table_name -> (column list -> column list) -> unit
Sourceval get_charset : Sql.table_name -> table_charset option
Sourceval set_charset : Sql.table_name -> table_charset -> unit
Sourceval get_ttl : Sql.table_name -> table_ttl option
Sourceval set_ttl : Sql.table_name -> table_ttl option -> unit
Sourceval index_find : Sql.table_name -> index_name:SMap.key -> stored_index option
Sourceval column_find : Sql.table_name -> column_name:string -> column option
Sourceval add_constraint_to_columns : column list -> cols:string list -> Sql.Constraints.elt -> column list
Sourceval remove_constraint_from_columns : column list -> cols:string list -> Sql.Constraints.elt -> column list
Sourceval grouped_constraint : single:'a -> composite:('b list -> 'a) -> 'b list -> 'a
Sourceval mark_unique_columns : column list -> cols:Sql.Constraint.StringSet.elt list -> column list
Sourceval add_index_record : stored_table -> index_name:SMap.key -> kind:Sql.index_op_kind -> cols:Sql.Constraint.StringSet.elt list -> stored_table
Sourceval synth_index_name : 'a SMap.t -> SMap.key list -> SMap.key
Sourceval index_add : Sql.table_name -> index_name:SMap.key -> kind:Sql.index_op_kind -> cols:Sql.Constraint.StringSet.elt list -> unit
Sourceval index_add_auto : Sql.table_name -> kind:Sql.index_op_kind -> cols:Sql.Constraint.StringSet.elt list -> unit
Sourceval add_inline_indexes : Sql.table_name -> indexes:Sql.table_inline_index Sql.located list -> constraints: [> `Unique of SMap.key option * Sql.Constraint.StringSet.elt list ] list -> unit
Sourceval singleton_unique_col : stored_index -> string option
Sourceval index_drop : Sql.table_name -> index_name:SMap.key -> unit
Sourceval index_rename : Sql.table_name -> old_name:SMap.key -> new_name:SMap.key -> unit
Sourceval drop : Sql.table_name -> unit
Sourceval rename : Sql.table_name -> Sql.table_name -> unit
Sourceval schema_to_columns : cols:column list -> new_col:column -> Sql.attr list -> column list
Sourceval is_pk_constraint : Sql.Constraint.t -> bool
Sourceval has_pk_constraint : column -> bool
Sourceval alter_add : Sql.table_name -> col:column -> pos:[< `After of string | `Default | `First ] -> unit
Sourceval alter_drop : Sql.table_name -> col:string -> unit
Sourceval alter_change : Sql.table_name -> oldcol:string -> col:column -> pos:[< `After of string & 'a | `Default | `First ] -> unit
Sourceval rename_column : Sql.table_name -> old_name:string -> new_name:string -> unit
Sourceval get_primary_key_columns : column list -> string list
Sourceval drop_primary_key : Sql.table_name -> unit
Sourceval add_primary_key : Sql.table_name -> cols:Sql.Constraint.StringSet.elt list -> unit
Sourceval alter_column_pg : Sql.table_name -> col_name:string -> Sql.Alter_column_pg.t -> unit
Sourceval print : out_channel -> (Sql.table_name * Sql.attr list) list -> unit
Sourceval all : unit -> (Sql.table_name * Sql.attr list) list
Sourceval print_all : unit -> unit
Sourceval print1 : string -> unit
Sourceval reset : unit -> unit
Sourceval snapshot : unit -> stored_table list
Sourceval restore : stored_table list -> unit