CUBRID Engine
latest
|
Go to the source code of this file.
Classes | |
struct | db_query_type |
struct | db_select_result |
struct | db_call_result |
struct | db_objfetch_result |
struct | db_get_result |
struct | db_query_tplpos |
struct | db_query_result |
struct | db_executed_statement_type |
struct | db_prepare_info |
Typedefs | |
typedef struct db_select_result | DB_SELECT_RESULT |
typedef struct db_call_result | DB_CALL_RESULT |
typedef struct db_objfetch_result | DB_OBJFETCH_RESULT |
typedef struct db_get_result | DB_GET_RESULT |
typedef struct db_query_tplpos | DB_QUERY_TPLPOS |
typedef struct db_executed_statement_type | DB_EXECUTED_STATEMENT_TYPE |
typedef struct db_prepare_info | DB_PREPARE_INFO |
Enumerations | |
enum | COL_VISIBLE_TYPE { OID_COLUMN, USER_COLUMN, SYSTEM_ADDED_COLUMN } |
enum | DB_RESULT_TYPE { T_SELECT = 1, T_CALL, T_OBJFETCH, T_GET, T_CACHE_HIT } |
enum | DB_RESULT_STATUS { T_OPEN = 1, T_CLOSED } |
typedef struct db_call_result DB_CALL_RESULT |
typedef struct db_executed_statement_type DB_EXECUTED_STATEMENT_TYPE |
Definition at line 132 of file db_query.h.
typedef struct db_get_result DB_GET_RESULT |
typedef struct db_objfetch_result DB_OBJFETCH_RESULT |
typedef struct db_prepare_info DB_PREPARE_INFO |
Definition at line 140 of file db_query.h.
typedef struct db_query_tplpos DB_QUERY_TPLPOS |
typedef struct db_select_result DB_SELECT_RESULT |
enum COL_VISIBLE_TYPE |
Enumerator | |
---|---|
OID_COLUMN | |
USER_COLUMN | |
SYSTEM_ADDED_COLUMN |
Definition at line 45 of file db_query.h.
enum DB_RESULT_STATUS |
Enumerator | |
---|---|
T_OPEN | |
T_CLOSED |
Definition at line 110 of file db_query.h.
enum DB_RESULT_TYPE |
Enumerator | |
---|---|
T_SELECT | |
T_CALL | |
T_OBJFETCH | |
T_GET | |
T_CACHE_HIT |
Definition at line 107 of file db_query.h.
DB_QUERY_TYPE* db_alloc_query_format | ( | int | cnt | ) |
Definition at line 807 of file db_query.c.
References ARG_FILE_LINE, db_query_type::attr_name, db_query_type::col_type, DB_COL_OTHER, db_free_query_format(), DB_SIZEOF, db_query_type::db_type, DB_TYPE_NULL, db_query_type::domain, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), db_query_type::name, db_query_type::next, NULL, db_query_type::original_name, p, db_query_type::size, db_query_type::spec_name, db_query_type::src_domain, USER_COLUMN, and db_query_type::visible_type.
Referenced by db_cp_query_type(), db_execute_oid(), db_get_db_value_query_result(), db_get_query_type_list(), db_object_describe(), and db_object_fetch().
DB_QUERY_RESULT* db_alloc_query_result | ( | DB_RESULT_TYPE | r_type, |
int | col_cnt | ||
) |
Definition at line 868 of file db_query.c.
References allocate_query_result(), ARG_FILE_LINE, db_query_result::c, db_free_query_result(), DB_INVALID_RESTYPE, db_make_null(), DB_SIZEOF, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, ER_QPROC_INVALID_RESTYPE, er_set(), db_query_result::g, NULL, db_query_result::o, QP_QRES_LIST_INC_RATE, QP_QRES_LIST_INIT_CNT, Qres_table, db_query_result::qtable_ind, db_query_result::query_type, db_query_result::res, T_CALL, T_GET, T_OBJFETCH, T_SELECT, db_get_result::tpl_list, db_query_result::type_cnt, db_call_result::val_ptr, and db_objfetch_result::valptr_list.
Referenced by db_execute_oid(), db_get_db_value_query_result(), db_object_fetch(), pt_make_cache_hit_result_descriptor(), and pt_new_query_result_descriptor().
void db_clear_client_query_result | ( | int | notify_server, |
bool | end_holdable | ||
) |
Definition at line 1208 of file db_query.c.
References db_query_end_internal(), NULL, Qres_table, and T_SELECT.
Referenced by tran_2pc_prepare(), tran_2pc_prepare_global_tran(), tran_abort(), tran_abort_only_client(), and tran_commit().
DB_QUERY_TYPE* db_cp_query_type | ( | DB_QUERY_TYPE * | query_type, |
int | copy_only_user | ||
) |
Definition at line 1329 of file db_query.c.
References ARG_FILE_LINE, db_query_type::attr_name, CHECK_CONNECT_NULL, db_alloc_query_format(), db_cp_query_type_helper(), db_free_query_format(), db_query_type::db_type, db_query_type::domain, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), db_query_type::name, db_query_type::next, NULL, db_query_type::original_name, db_query_type::size, sm_domain_copy(), db_query_type::spec_name, db_query_type::src_domain, strlen, SYSTEM_ADDED_COLUMN, USER_COLUMN, and db_query_type::visible_type.
Referenced by db_execute_and_keep_statement_local(), db_get_query_result_format(), and db_get_query_type_list().
int db_execute_with_values | ( | const char * | CSQL_query, |
DB_QUERY_RESULT ** | result, | ||
DB_QUERY_ERROR * | query_error, | ||
int | arg_count, | ||
DB_VALUE * | vals | ||
) |
Definition at line 1511 of file db_query.c.
References db_close_session_local(), db_execute_statement_local(), DB_NO_OIDS, db_open_buffer_and_compile_first_statement(), db_push_values(), error(), and NULL.
Referenced by delete_all_slave_ha_apply_info(), insert_ha_apply_info(), la_get_ha_apply_info(), and la_update_query_execute_with_values().
void db_free_execution_plan | ( | void | ) |
Definition at line 3638 of file db_query.c.
References db_Execution_plan, db_Execution_plan_length, free_and_init, and NULL.
Referenced by db_shutdown().
void db_free_query_format | ( | DB_QUERY_TYPE * | q | ) |
Definition at line 154 of file db_query.c.
References db_query_type::attr_name, free_and_init, db_query_type::name, db_query_type::next, NULL, db_query_type::original_name, p, sm_domain_free(), db_query_type::spec_name, and db_query_type::src_domain.
Referenced by db_alloc_query_format(), db_close_session_local(), db_cp_query_type(), db_free_query_result(), db_object_describe(), db_parse_one_statement(), db_query_format_free(), do_create_entity(), pt_check_partitions(), pt_fillin_type_size(), pt_get_select_query_columns(), and pt_get_titles().
void db_free_query_result | ( | DB_QUERY_RESULT * | r | ) |
Definition at line 727 of file db_query.c.
References db_query_result::c, db_query_result::col_cnt, db_free_query_format(), db_value_clear(), db_value_free(), free_and_init, free_query_result(), db_query_result::g, db_get_result::n_tuple, NULL, db_query_result::o, Qres_table, db_query_result::qtable_ind, db_query_result::query_type, db_query_result::res, db_query_result::status, T_CALL, T_CLOSED, T_GET, T_OBJFETCH, T_SELECT, db_get_result::tpl_list, db_query_result::type, db_call_result::val_ptr, and db_objfetch_result::valptr_list.
Referenced by db_alloc_query_result(), db_execute_oid(), db_get_db_value_query_result(), db_object_fetch(), db_query_end_internal(), and pt_new_query_result_descriptor().
DB_QUERY_RESULT* db_get_db_value_query_result | ( | DB_VALUE * | var | ) |
Definition at line 1998 of file db_query.c.
References db_query_type::attr_name, db_query_result::c, C_BEFORE, CHECK_1ARG_NULL, CHECK_CONNECT_NULL, db_query_result::col_cnt, db_call_result::crs_pos, db_alloc_query_format(), db_alloc_query_result(), db_free_query_result(), db_init_query_result(), db_query_type::db_type, db_value_copy(), DB_VALUE_TYPE, db_query_type::domain, db_query_type::name, NULL, db_query_result::oid_included, db_query_type::original_name, db_query_result::query_type, db_query_result::res, db_query_type::size, db_query_type::spec_name, db_query_type::src_domain, T_CALL, db_query_result::type, db_query_result::type_cnt, and db_call_result::val_ptr.
Referenced by db_execute_and_keep_statement_local(), and uci_static().
char* db_get_execution_plan | ( | void | ) |
Definition at line 3621 of file db_query.c.
References db_Execution_plan, and NULL.
Referenced by fn_execute_array(), and fn_execute_internal().
void db_init_prepare_info | ( | DB_PREPARE_INFO * | info | ) |
Definition at line 411 of file db_query.c.
References assert, db_prepare_info::auto_param_count, db_prepare_info::columns, db_prepare_info::host_var_expected_domains, db_prepare_info::host_variables, db_prepare_info::into_count, db_prepare_info::into_list, NULL, db_prepare_info::oids_included, db_prepare_info::recompile, db_value_array::size, db_prepare_info::statement, and db_value_array::vals.
Referenced by do_get_prepared_statement_info(), and do_process_prepare_statement().
void db_init_query_result | ( | DB_QUERY_RESULT * | r, |
DB_RESULT_TYPE | r_type | ||
) |
Definition at line 1011 of file db_query.c.
References ARG_FILE_LINE, db_query_result::c, C_BEFORE, db_select_result::cache_time, CACHE_TIME_RESET, db_query_result::col_cnt, db_call_result::crs_pos, db_objfetch_result::crs_pos, db_get_result::crs_pos, db_select_result::cursor_id, DB_INVALID_RESTYPE, DB_SIZEOF, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, ER_QPROC_INVALID_RESTYPE, er_set(), db_query_result::g, i, cursor_id::list_id, db_get_result::n_tuple, db_query_result::next, NULL, db_query_result::o, db_query_result::oid_included, db_select_result::query_id, db_query_result::res, db_query_result::s, sm_domain_copy(), db_query_result::status, db_select_result::stmt_id, db_select_result::stmt_type, strlen, T_CALL, T_CLOSED, T_GET, T_OBJFETCH, T_OPEN, T_SELECT, db_get_result::tpl_idx, qfile_list_id::tuple_cnt, and db_query_result::type.
Referenced by db_execute_oid(), db_get_db_value_query_result(), db_object_fetch(), pt_make_cache_hit_result_descriptor(), and pt_new_query_result_descriptor().
bool db_is_client_cache_reusable | ( | DB_QUERY_RESULT * | result | ) |
Definition at line 3432 of file db_query.c.
int db_pack_prepare_info | ( | const DB_PREPARE_INFO * | info, |
char ** | buffer | ||
) |
Definition at line 433 of file db_query.c.
References ARG_FILE_LINE, assert, db_prepare_info::auto_param_count, db_prepare_info::columns, ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), db_prepare_info::host_var_expected_domains, db_prepare_info::host_variables, i, db_prepare_info::into_count, db_prepare_info::into_list, NULL, db_prepare_info::oids_included, OR_INT_SIZE, or_pack_db_value(), or_pack_domain(), or_pack_int(), or_pack_query_format(), or_pack_string(), or_pack_string_with_length(), or_packed_domain_size(), or_packed_query_format_size(), or_packed_string_length(), OR_VALUE_ALIGNED_SIZE, db_prepare_info::recompile, db_value_array::size, db_prepare_info::statement, db_prepare_info::stmt_type, and db_value_array::vals.
Referenced by do_process_prepare_statement().
int db_query_end | ( | DB_QUERY_RESULT * | result | ) |
Definition at line 3362 of file db_query.c.
int db_query_end_internal | ( | DB_QUERY_RESULT * | result, |
bool | notify_server | ||
) |
Definition at line 3473 of file db_query.c.
References ARG_FILE_LINE, assert, cursor_close(), db_select_result::cursor_id, db_Connect_status, DB_CONNECTION_STATUS_CONNECTED, db_free_query_result(), er_errid(), ER_ERROR_SEVERITY, ER_OBJ_NO_CONNECT, er_set(), error(), NO_ERROR, qmgr_end_query(), db_select_result::query_id, db_query_result::res, db_query_result::s, db_query_result::status, T_CLOSED, T_SELECT, and db_query_result::type.
Referenced by db_clear_client_query_result(), and db_query_end().
SM_DOMAIN* db_query_format_src_domain | ( | DB_QUERY_TYPE * | query_type | ) |
Definition at line 1675 of file db_query.c.
References CHECK_1ARG_NULL, and db_query_type::src_domain.
Referenced by db_query_format_class_name(), and db_query_format_is_non_null().
void db_query_free_tplpos | ( | DB_QUERY_TPLPOS * | tplpos | ) |
Definition at line 2858 of file db_query.c.
References free_and_init.
Referenced by db_query_seek_tuple().
int db_query_get_cache_time | ( | DB_QUERY_RESULT * | result, |
CACHE_TIME * | cache_time | ||
) |
Definition at line 3451 of file db_query.c.
DB_QUERY_TPLPOS* db_query_get_tplpos | ( | DB_QUERY_RESULT * | result | ) |
Definition at line 2737 of file db_query.c.
References ARG_FILE_LINE, db_query_result::c, CHECK_1ARG_NULL, CHECK_CONNECT_NULL, db_query_result::col_cnt, db_call_result::crs_pos, db_objfetch_result::crs_pos, db_get_result::crs_pos, db_query_tplpos::crs_pos, cursor_id::current_tuple_no, cursor_id::current_tuple_offset, cursor_id::current_vpid, db_select_result::cursor_id, DB_SIZEOF, ER_ERROR_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, ER_QPROC_INVALID_RESTYPE, ER_QPROC_OPR_ON_CLOSED_QRES, er_set(), free_and_init, db_query_result::g, db_get_result::n_tuple, NULL, db_query_result::o, vpid::pageid, cursor_id::position, db_query_result::res, db_query_result::s, db_query_result::status, T_CALL, T_CLOSED, T_GET, T_OBJFETCH, T_SELECT, db_get_result::tpl_idx, db_query_tplpos::tpl_no, db_query_tplpos::tpl_off, db_query_result::type, vpid::volid, and db_query_tplpos::vpid.
Referenced by db_query_seek_tuple().
int db_query_get_tuple_object | ( | DB_QUERY_RESULT * | result, |
int | index, | ||
DB_OBJECT ** | object | ||
) |
int db_query_get_tuple_object_by_name | ( | DB_QUERY_RESULT * | result, |
char * | column_name, | ||
DB_OBJECT ** | object | ||
) |
int db_query_get_value_to_pointer | ( | DB_QUERY_RESULT * | result, |
int | index, | ||
unsigned char ** | ptr, | ||
DB_TYPE | user_type, | ||
bool * | null_flag | ||
) |
int db_query_get_value_to_space | ( | DB_QUERY_RESULT * | result, |
int | index, | ||
unsigned char * | ptr, | ||
int | maxlength, | ||
bool * | truncated, | ||
DB_TYPE | user_type, | ||
bool * | null_flag | ||
) |
int db_query_seek_tuple | ( | DB_QUERY_RESULT * | result, |
int | offset, | ||
int | seek_mode | ||
) |
Definition at line 2455 of file db_query.c.
int db_query_set_tplpos | ( | DB_QUERY_RESULT * | result, |
DB_QUERY_TPLPOS * | tplpos | ||
) |
Definition at line 2800 of file db_query.c.
References ARG_FILE_LINE, db_query_result::c, CHECK_1ARG_ERROR, db_query_result::col_cnt, db_call_result::crs_pos, db_objfetch_result::crs_pos, db_get_result::crs_pos, db_query_tplpos::crs_pos, cursor_id::current_vpid, cursor_fetch_page_having_tuple(), db_select_result::cursor_id, ER_ERROR_SEVERITY, ER_FAILED, ER_QPROC_INVALID_RESTYPE, ER_QPROC_OPR_ON_CLOSED_QRES, er_set(), db_query_result::g, db_get_result::n_tuple, NO_ERROR, db_query_result::o, vpid::pageid, cursor_id::position, db_query_result::res, db_query_result::s, db_query_result::status, T_CALL, T_CLOSED, T_GET, T_OBJFETCH, T_SELECT, db_get_result::tpl_idx, db_query_tplpos::tpl_no, db_query_tplpos::tpl_off, db_query_result::type, vpid::volid, and db_query_tplpos::vpid.
Referenced by db_query_seek_tuple().
void db_set_execution_plan | ( | char * | plan, |
int | length | ||
) |
Definition at line 3567 of file db_query.c.
References ARG_FILE_LINE, db_Execution_plan, db_Execution_plan_length, ER_NOTIFICATION_SEVERITY, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), NULL, and PLAN_BUF_INITIAL_LENGTH.
Referenced by fn_execute_array(), fn_execute_internal(), and qmgr_execute_query().
int db_unpack_prepare_info | ( | DB_PREPARE_INFO * | info, |
char * | buffer | ||
) |
Definition at line 537 of file db_query.c.
References ARG_FILE_LINE, assert, db_query_type::attr_name, db_prepare_info::auto_param_count, db_prepare_info::columns, db_value_clear_array(), db_query_type::domain, ER_ERROR_SEVERITY, ER_FAILED, ER_OUT_OF_VIRTUAL_MEMORY, er_set(), error(), free_and_init, db_prepare_info::host_var_expected_domains, db_prepare_info::host_variables, i, db_prepare_info::into_count, db_prepare_info::into_list, db_query_type::name, db_query_type::next, NO_ERROR, NULL, db_prepare_info::oids_included, or_unpack_db_value(), or_unpack_domain(), or_unpack_int(), or_unpack_query_format(), or_unpack_string_alloc(), db_query_type::original_name, db_prepare_info::recompile, db_value_array::size, sm_domain_free(), db_query_type::spec_name, db_query_type::src_domain, db_prepare_info::statement, db_prepare_info::stmt_type, tp_domain_free(), and db_value_array::vals.
Referenced by do_get_prepared_statement_info().