MySQL 8.0.39
Source Code Documentation
table_access_bits.h File Reference

Generic table access interface. More...

Go to the source code of this file.

Classes

struct  TA_table_field_def
 Expected field definition. More...
 
struct  TA_index_field_def
 Expected index definition. More...
 

Macros

#define TA_ERROR_GRL   1
 
#define TA_ERROR_READONLY   2
 
#define TA_ERROR_OPEN   3
 

Typedefs

typedef struct Table_access_imp * Table_access
 Table_access. More...
 
typedef struct TA_table_imp * TA_table
 An opened table. More...
 
typedef struct TA_key_imp * TA_key
 An index key. More...
 
typedef Table_access(* create_table_access_v1_t) (MYSQL_THD thd, size_t count)
 Create a table access object. More...
 
typedef void(* destroy_table_access_v1_t) (Table_access ta)
 Destroy a table access object. More...
 
typedef size_t(* add_table_v1_t) (Table_access ta, const char *schema_name, size_t schema_name_length, const char *table_name, size_t table_name_length, TA_lock_type lock_type_arg)
 Add a table to a table access session. More...
 
typedef int(* begin_v1_t) (Table_access ta)
 Start a table access transaction. More...
 
typedef int(* commit_v1_t) (Table_access ta)
 Commit changes. More...
 
typedef int(* rollback_v1_t) (Table_access ta)
 Rollback changes. More...
 
typedef TA_table(* get_table_v1_t) (Table_access ta, size_t ticket)
 Get an opened table. More...
 
typedef int(* check_table_fields_v1_t) (Table_access ta, TA_table table, const TA_table_field_def *fields, size_t fields_count)
 Check the actual table fields against expected fields. More...
 
typedef int(* index_init_v1_t) (Table_access ta, TA_table table, const char *index_name, size_t index_name_length, const TA_index_field_def *fields, size_t fields_count, TA_key *key)
 Open a table index. More...
 
typedef int(* index_read_map_v1_t) (Table_access ta, TA_table table, size_t num_parts, TA_key key)
 Position a table index at a search key. More...
 
typedef int(* index_first_v1_t) (Table_access ta, TA_table table, TA_key key)
 Position on index at the beginning. More...
 
typedef int(* index_next_v1_t) (Table_access ta, TA_table table, TA_key key)
 Advance to the next record in the index. More...
 
typedef int(* index_next_same_v1_t) (Table_access ta, TA_table table, TA_key key)
 Advance to the next record that matches the current search key. More...
 
typedef int(* index_end_v1_t) (Table_access ta, TA_table table, TA_key key)
 Close an index. More...
 
typedef int(* rnd_init_v1_t) (Table_access ta, TA_table table)
 Start a full table scan. More...
 
typedef int(* rnd_next_v1_t) (Table_access ta, TA_table table)
 Advance to the next record in a table scan. More...
 
typedef int(* rnd_end_v1_t) (Table_access ta, TA_table table)
 End a full table scan. More...
 
typedef int(* write_row_v1_t) (Table_access ta, TA_table table)
 Insert a new row in the table. More...
 
typedef int(* update_row_v1_t) (Table_access ta, TA_table table)
 Update the current row. More...
 
typedef int(* delete_row_v1_t) (Table_access ta, TA_table table)
 Delete the current row. More...
 
typedef void(* set_field_null_v1_t) (Table_access ta, TA_table table, size_t index)
 Set a column to NULL. More...
 
typedef bool(* is_field_null_v1_t) (Table_access ta, TA_table table, size_t index)
 Is a column NULL. More...
 
typedef bool(* maybe_field_null_v1_t) (Table_access ta, TA_table table, size_t index)
 Can a column be NULL. More...
 
typedef int(* set_field_integer_value_v1_t) (Table_access ta, TA_table table, size_t index, long long v)
 Write an INTEGER column value. More...
 
typedef int(* get_field_integer_value_v1_t) (Table_access ta, TA_table table, size_t index, long long *v)
 Read an INTEGER column value. More...
 
typedef int(* set_field_varchar_value_v1_t) (Table_access ta, TA_table table, size_t index, my_h_string v)
 Write a VARCHAR column value. More...
 
typedef int(* get_field_varchar_value_v1_t) (Table_access ta, TA_table table, size_t index, my_h_string v)
 Read a VARCHAR column value. More...
 
typedef int(* set_field_any_value_v1_t) (Table_access ta, TA_table table, size_t index, my_h_string v)
 Write any column value. More...
 
typedef int(* get_field_any_value_v1_t) (Table_access ta, TA_table table, size_t index, my_h_string v)
 Read any column value. More...
 

Enumerations

enum  TA_lock_type { TA_READ , TA_WRITE }
 Table lock type. More...
 
enum  TA_field_type {
  TA_TYPE_UNKNOWN = 0 , TA_TYPE_INTEGER = 1 , TA_TYPE_VARCHAR = 2 , TA_TYPE_JSON = 3 ,
  TA_TYPE_ENUM = 4
}
 Types of columns supported by the table access service. More...
 

Detailed Description

Generic table access interface.