CUBRID Engine  latest
csql.h File Reference
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <sys/stat.h>
#include <locale.h>
#include "porting.h"
#include "language_support.h"
#include "message_catalog.h"
#include "util_func.h"
#include "misc_string.h"
#include "dbi.h"
#include "error_manager.h"
#include "memory_alloc.h"
Include dependency graph for csql.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CSQL_ARGUMENT
 
struct  CSQL_COLUMN_WIDTH_INFO
 

Macros

#define MSGCAT_CSQL_SET_CSQL   1
 
#define SCRATCH_TEXT_LEN   (4096)
 

Enumerations

enum  {
  CSQL_MSG_USAGE = 40, CSQL_MSG_BAD_MODE = 41, CSQL_MSG_BAD_ARGS = 42, CSQL_MSG_NO_ENV = 43,
  CSQL_MSG_EXEC_FAILURE = 44, CSQL_MSG_BOTH_MODES = 45, CSQL_EXECUTE_END_MSG_FORMAT = 46, CSQL_START_POSITION_ERR_FORMAT = 47,
  CSQL_EXACT_POSITION_ERR_FORMAT = 48, CSQL_INITIAL_HELP_MSG = 49, CSQL_ERROR_PREFIX = 50, CSQL_INITIAL_CSQL_TITLE = 51,
  CSQL_TRANS_TERMINATE_PROMPT_TEXT = 52, CSQL_TRANS_TERMINATE_PROMPT_RETRY_TEXT = 53, CSQL_STAT_COMMITTED_TEXT = 54, CSQL_STAT_ROLLBACKED_TEXT = 55,
  CSQL_STAT_EDITOR_SAVED_TEXT = 56, CSQL_STAT_READ_DONE_TEXT = 57, CSQL_STAT_EDITOR_PRINTED_TEXT = 58, CSQL_STAT_CD_TEXT = 59,
  CSQL_PASSWD_PROMPT_TEXT = 61, CSQL_RESULT_STMT_TITLE_FORMAT = 62, CSQL_STAT_NONSCR_EMPTY_RESULT_TEXT = 63, CSQL_STAT_CHECKPOINT_TEXT = 64,
  CSQL_STAT_RESTART_TEXT = 65, CSQL_KILLTRAN_TITLE_TEXT = 66, CSQL_KILLTRAN_FORMAT = 67, CSQL_STAT_KILLTRAN_TEXT = 68,
  CSQL_STAT_KILLTRAN_FAIL_TEXT = 69, CSQL_ROWS = 70, CSQL_ROW = 71, CSQL_ARG_AUTO = 75,
  CSQL_ARG_AUTO_HELP = 76, CSQL_PROMPT = 79, CSQL_NAME = 80, CSQL_SYSADM_PROMPT = 81,
  CSQL_TRANSACTIONS = 82, CSQL_TRANSACTION = 83, CSQL_HELP_SCHEMA_TITLE_TEXT = 145, CSQL_HELP_NONE_TEXT = 146,
  CSQL_HELP_TRIGGER_ALL_TITLE_TEXT = 147, CSQL_HELP_TRIGGER_NONE_TITLE_TEXT = 148, CSQL_HELP_TRIGGER_TITLE_TEXT = 150, CSQL_HELP_SQL_TITLE_TEXT = 151,
  CSQL_HELP_SESSION_CMD_TITLE_TEXT = 152, CSQL_E_FILENAMEMISSED_TEXT = 178, CSQL_E_CANTEXECPAGER_TEXT = 179, CSQL_E_NOMOREMEMORY_TEXT = 180,
  CSQL_E_TOOLONGLINE_TEXT = 184, CSQL_E_TOOMANYLINES_TEXT = 185, CSQL_E_TOOMANYFILENAMES_TEXT = 188, CSQL_E_SESSCMDNOTFOUND_TEXT = 190,
  CSQL_E_SESSCMDAMBIGUOUS_TEXT = 191, CSQL_E_CSQLCMDAMBIGUOUS_TEXT = 193, CSQL_E_INVALIDARGCOM_TEXT = 194, CSQL_E_UNKNOWN_TEXT = 196,
  CSQL_E_CANT_EDIT_TEXT = 197, CSQL_HELP_CLASS_HEAD_TEXT = 203, CSQL_HELP_SUPER_CLASS_HEAD_TEXT = 204, CSQL_HELP_SUB_CLASS_HEAD_TEXT = 205,
  CSQL_HELP_ATTRIBUTE_HEAD_TEXT = 206, CSQL_HELP_CLASS_ATTRIBUTE_HEAD_TEXT = 207, CSQL_HELP_METHOD_HEAD_TEXT = 208, CSQL_HELP_CLASS_METHOD_HEAD_TEXT = 209,
  CSQL_HELP_RESOLUTION_HEAD_TEXT = 210, CSQL_HELP_METHFILE_HEAD_TEXT = 211, CSQL_HELP_QUERY_SPEC_HEAD_TEXT = 212, CSQL_HELP_TRIGGER_HEAD_TEXT = 213,
  CSQL_HELP_TRIGGER_NAME_TEXT = 214, CSQL_HELP_TRIGGER_EVENT_TEXT = 215, CSQL_HELP_TRIGGER_CONDITION_TIME_TEXT = 216, CSQL_HELP_TRIGGER_CONDITION_TEXT = 217,
  CSQL_HELP_TRIGGER_ACTION_TIME_TEXT = 218, CSQL_HELP_TRIGGER_ACTION_TEXT = 219, CSQL_HELP_TRIGGER_STATUS_TEXT = 220, CSQL_HELP_TRIGGER_PRIORITY_TEXT = 221,
  CSQL_HELP_SQL_NAME_HEAD_TEXT = 222, CSQL_HELP_SQL_DESCRIPTION_HEAD_TEXT = 223, CSQL_HELP_SQL_SYNTAX_HEAD_TEXT = 224, CSQL_HELP_SQL_EXAMPLE_HEAD_TEXT = 225,
  CSQL_HELP_SESSION_CMD_TEXT = 231, CSQL_HELP_CONSTRAINT_HEAD_TEXT = 232, CSQL_HELP_INFOCMD_TEXT = 233, CSQL_HELP_PARTITION_HEAD_TEXT = 235,
  CSQL_E_CLASSNAMEMISSED_TEXT = 236, CSQL_HELP_TRIGGER_COMMENT_TEXT = 237
}
 
enum  {
  CSQL_ERR_OS_ERROR = 1, CSQL_ERR_NO_MORE_MEMORY, CSQL_ERR_TOO_LONG_LINE, CSQL_ERR_TOO_MANY_LINES,
  CSQL_ERR_TOO_MANY_FILE_NAMES, CSQL_ERR_SQL_ERROR, CSQL_ERR_SESS_CMD_NOT_FOUND, CSQL_ERR_SESS_CMD_AMBIGUOUS,
  CSQL_ERR_FILE_NAME_MISSED, CSQL_ERR_CUBRID_STMT_NOT_FOUND, CSQL_ERR_CUBRID_STMT_AMBIGUOUS, CSQL_ERR_CANT_EXEC_PAGER,
  CSQL_ERR_INVALID_ARG_COMBINATION, CSQL_ERR_CANT_EDIT, CSQL_ERR_INFO_CMD_HELP, CSQL_ERR_CLASS_NAME_MISSED
}
 
enum  SESSION_CMD {
  S_CMD_READ, S_CMD_WRITE, S_CMD_APPEND, S_CMD_PRINT,
  S_CMD_SHELL, S_CMD_CD, S_CMD_EXIT, S_CMD_CLEAR,
  S_CMD_EDIT, S_CMD_LIST, S_CMD_RUN, S_CMD_XRUN,
  S_CMD_COMMIT, S_CMD_ROLLBACK, S_CMD_AUTOCOMMIT, S_CMD_CHECKPOINT,
  S_CMD_KILLTRAN, S_CMD_RESTART, S_CMD_SHELL_CMD, S_CMD_EDIT_CMD,
  S_CMD_PRINT_CMD, S_CMD_PAGER_CMD, S_CMD_NOPAGER_CMD, S_CMD_COLUMN_WIDTH,
  S_CMD_STRING_WIDTH, S_CMD_HELP, S_CMD_SCHEMA, S_CMD_DATABASE,
  S_CMD_TRIGGER, S_CMD_INFO, S_CMD_SET_PARAM, S_CMD_GET_PARAM,
  S_CMD_PLAN_DUMP, S_CMD_ECHO, S_CMD_DATE, S_CMD_TIME,
  S_CMD_LINE_OUTPUT, S_CMD_HISTO, S_CMD_CLR_HISTO, S_CMD_DUMP_HISTO,
  S_CMD_DUMP_CLR_HISTO, S_CMD_HISTORY_READ, S_CMD_HISTORY_LIST, S_CMD_TRACE
}
 
enum  { CSQL_FAILURE = -1, CSQL_SUCCESS = 0 }
 
enum  CSQL_OUTPUT_TYPE { CSQL_UNKNOWN_OUTPUT = 1, CSQL_QUERY_OUTPUT, CSQL_LOADDB_OUTPUT }
 

Functions

void csql_display_msg (const char *string)
 
void csql_exit (int exit_status)
 
int csql (const char *argv0, CSQL_ARGUMENT *csql_arg)
 
const char * csql_get_message (int message_index)
 
char * csql_get_real_path (const char *pathname)
 
void csql_invoke_system (const char *command)
 
int csql_invoke_system_editor (void)
 
void csql_fputs (const char *str, FILE *fp)
 
void csql_fputs_console_conv (const char *str, FILE *fp)
 
FILE * csql_popen (const char *cmd, FILE *fd)
 
void csql_pclose (FILE *pf, FILE *fd)
 
void csql_display_csql_err (int line_no, int col_no)
 
void csql_display_session_err (DB_SESSION *session, int line_no)
 
int csql_append_more_line (int indent, const char *line)
 
void csql_display_more_lines (const char *title)
 
void csql_free_more_lines (void)
 
void csql_check_server_down (void)
 
char * csql_get_tmp_buf (size_t size)
 
void nonscr_display_error (char *buffer, int buf_length)
 
int csql_get_session_cmd_no (const char *input)
 
void csql_results (const CSQL_ARGUMENT *csql_arg, DB_QUERY_RESULT *result, DB_QUERY_TYPE *attr_spec, int line_no, CUBRID_STMT_TYPE stmt_type)
 
char * csql_edit_contents_get (void)
 
int csql_edit_contents_append (const char *str, bool flag_append_new_line)
 
void csql_walk_statement (const char *str)
 
bool csql_is_statement_complete (void)
 
bool csql_is_statement_in_block (void)
 
void csql_edit_contents_clear (void)
 
void csql_edit_contents_finalize (void)
 
int csql_edit_read_file (FILE *fp)
 
int csql_edit_write_file (FILE *fp)
 
const char * csql_errmsg (int code)
 
void csql_help_menu (void)
 
void csql_help_schema (const char *class_name)
 
void csql_help_trigger (const char *class_name)
 
void csql_help_info (const char *command, int aucommit_flag)
 
void csql_killtran (const char *argument)
 
char * csql_db_value_as_string (DB_VALUE *value, int *length, bool plain_string, CSQL_OUTPUT_TYPE output_type, char cloumn_enclosure)
 
char * csql_string_to_plain_string (const char *string_value, int length, int *result_length)
 
int csql_set_column_width_info (const char *column_name, int column_width)
 
int csql_get_column_width (const char *column_name)
 

Variables

FILE * csql_Input_fp
 
FILE * csql_Output_fp
 
FILE * csql_Error_fp
 
char csql_Editor_cmd []
 
char csql_Shell_cmd []
 
char csql_Print_cmd []
 
char csql_Pager_cmd []
 
char csql_Scratch_text []
 
int csql_Error_code
 
int csql_Line_lwm
 
int csql_Row_count
 
int csql_Num_failures
 
int(* csql_text_utf8_to_console )(const char *, const int, char **, int *)
 
int(* csql_text_console_to_utf8 )(const char *, const int, char **, int *)
 

Macro Definition Documentation

Enumeration Type Documentation

anonymous enum
Enumerator
CSQL_MSG_USAGE 
CSQL_MSG_BAD_MODE 
CSQL_MSG_BAD_ARGS 
CSQL_MSG_NO_ENV 
CSQL_MSG_EXEC_FAILURE 
CSQL_MSG_BOTH_MODES 
CSQL_EXECUTE_END_MSG_FORMAT 
CSQL_START_POSITION_ERR_FORMAT 
CSQL_EXACT_POSITION_ERR_FORMAT 
CSQL_INITIAL_HELP_MSG 
CSQL_ERROR_PREFIX 
CSQL_INITIAL_CSQL_TITLE 
CSQL_TRANS_TERMINATE_PROMPT_TEXT 
CSQL_TRANS_TERMINATE_PROMPT_RETRY_TEXT 
CSQL_STAT_COMMITTED_TEXT 
CSQL_STAT_ROLLBACKED_TEXT 
CSQL_STAT_EDITOR_SAVED_TEXT 
CSQL_STAT_READ_DONE_TEXT 
CSQL_STAT_EDITOR_PRINTED_TEXT 
CSQL_STAT_CD_TEXT 
CSQL_PASSWD_PROMPT_TEXT 
CSQL_RESULT_STMT_TITLE_FORMAT 
CSQL_STAT_NONSCR_EMPTY_RESULT_TEXT 
CSQL_STAT_CHECKPOINT_TEXT 
CSQL_STAT_RESTART_TEXT 
CSQL_KILLTRAN_TITLE_TEXT 
CSQL_KILLTRAN_FORMAT 
CSQL_STAT_KILLTRAN_TEXT 
CSQL_STAT_KILLTRAN_FAIL_TEXT 
CSQL_ROWS 
CSQL_ROW 
CSQL_ARG_AUTO 
CSQL_ARG_AUTO_HELP 
CSQL_PROMPT 
CSQL_NAME 
CSQL_SYSADM_PROMPT 
CSQL_TRANSACTIONS 
CSQL_TRANSACTION 
CSQL_HELP_SCHEMA_TITLE_TEXT 
CSQL_HELP_NONE_TEXT 
CSQL_HELP_TRIGGER_ALL_TITLE_TEXT 
CSQL_HELP_TRIGGER_NONE_TITLE_TEXT 
CSQL_HELP_TRIGGER_TITLE_TEXT 
CSQL_HELP_SQL_TITLE_TEXT 
CSQL_HELP_SESSION_CMD_TITLE_TEXT 
CSQL_E_FILENAMEMISSED_TEXT 
CSQL_E_CANTEXECPAGER_TEXT 
CSQL_E_NOMOREMEMORY_TEXT 
CSQL_E_TOOLONGLINE_TEXT 
CSQL_E_TOOMANYLINES_TEXT 
CSQL_E_TOOMANYFILENAMES_TEXT 
CSQL_E_SESSCMDNOTFOUND_TEXT 
CSQL_E_SESSCMDAMBIGUOUS_TEXT 
CSQL_E_CSQLCMDAMBIGUOUS_TEXT 
CSQL_E_INVALIDARGCOM_TEXT 
CSQL_E_UNKNOWN_TEXT 
CSQL_E_CANT_EDIT_TEXT 
CSQL_HELP_CLASS_HEAD_TEXT 
CSQL_HELP_SUPER_CLASS_HEAD_TEXT 
CSQL_HELP_SUB_CLASS_HEAD_TEXT 
CSQL_HELP_ATTRIBUTE_HEAD_TEXT 
CSQL_HELP_CLASS_ATTRIBUTE_HEAD_TEXT 
CSQL_HELP_METHOD_HEAD_TEXT 
CSQL_HELP_CLASS_METHOD_HEAD_TEXT 
CSQL_HELP_RESOLUTION_HEAD_TEXT 
CSQL_HELP_METHFILE_HEAD_TEXT 
CSQL_HELP_QUERY_SPEC_HEAD_TEXT 
CSQL_HELP_TRIGGER_HEAD_TEXT 
CSQL_HELP_TRIGGER_NAME_TEXT 
CSQL_HELP_TRIGGER_EVENT_TEXT 
CSQL_HELP_TRIGGER_CONDITION_TIME_TEXT 
CSQL_HELP_TRIGGER_CONDITION_TEXT 
CSQL_HELP_TRIGGER_ACTION_TIME_TEXT 
CSQL_HELP_TRIGGER_ACTION_TEXT 
CSQL_HELP_TRIGGER_STATUS_TEXT 
CSQL_HELP_TRIGGER_PRIORITY_TEXT 
CSQL_HELP_SQL_NAME_HEAD_TEXT 
CSQL_HELP_SQL_DESCRIPTION_HEAD_TEXT 
CSQL_HELP_SQL_SYNTAX_HEAD_TEXT 
CSQL_HELP_SQL_EXAMPLE_HEAD_TEXT 
CSQL_HELP_SESSION_CMD_TEXT 
CSQL_HELP_CONSTRAINT_HEAD_TEXT 
CSQL_HELP_INFOCMD_TEXT 
CSQL_HELP_PARTITION_HEAD_TEXT 
CSQL_E_CLASSNAMEMISSED_TEXT 
CSQL_HELP_TRIGGER_COMMENT_TEXT 

Definition at line 59 of file csql.h.

anonymous enum
Enumerator
CSQL_ERR_OS_ERROR 
CSQL_ERR_NO_MORE_MEMORY 
CSQL_ERR_TOO_LONG_LINE 
CSQL_ERR_TOO_MANY_LINES 
CSQL_ERR_TOO_MANY_FILE_NAMES 
CSQL_ERR_SQL_ERROR 
CSQL_ERR_SESS_CMD_NOT_FOUND 
CSQL_ERR_SESS_CMD_AMBIGUOUS 
CSQL_ERR_FILE_NAME_MISSED 
CSQL_ERR_CUBRID_STMT_NOT_FOUND 
CSQL_ERR_CUBRID_STMT_AMBIGUOUS 
CSQL_ERR_CANT_EXEC_PAGER 
CSQL_ERR_INVALID_ARG_COMBINATION 
CSQL_ERR_CANT_EDIT 
CSQL_ERR_INFO_CMD_HELP 
CSQL_ERR_CLASS_NAME_MISSED 

Definition at line 155 of file csql.h.

anonymous enum
Enumerator
CSQL_FAILURE 
CSQL_SUCCESS 

Definition at line 241 of file csql.h.

Enumerator
CSQL_UNKNOWN_OUTPUT 
CSQL_QUERY_OUTPUT 
CSQL_LOADDB_OUTPUT 

Definition at line 247 of file csql.h.

Enumerator
S_CMD_READ 
S_CMD_WRITE 
S_CMD_APPEND 
S_CMD_PRINT 
S_CMD_SHELL 
S_CMD_CD 
S_CMD_EXIT 
S_CMD_CLEAR 
S_CMD_EDIT 
S_CMD_LIST 
S_CMD_RUN 
S_CMD_XRUN 
S_CMD_COMMIT 
S_CMD_ROLLBACK 
S_CMD_AUTOCOMMIT 
S_CMD_CHECKPOINT 
S_CMD_KILLTRAN 
S_CMD_RESTART 
S_CMD_SHELL_CMD 
S_CMD_EDIT_CMD 
S_CMD_PRINT_CMD 
S_CMD_PAGER_CMD 
S_CMD_NOPAGER_CMD 
S_CMD_COLUMN_WIDTH 
S_CMD_STRING_WIDTH 
S_CMD_HELP 
S_CMD_SCHEMA 
S_CMD_DATABASE 
S_CMD_TRIGGER 
S_CMD_INFO 
S_CMD_SET_PARAM 
S_CMD_GET_PARAM 
S_CMD_PLAN_DUMP 
S_CMD_ECHO 
S_CMD_DATE 
S_CMD_TIME 
S_CMD_LINE_OUTPUT 
S_CMD_HISTO 
S_CMD_CLR_HISTO 
S_CMD_DUMP_HISTO 
S_CMD_DUMP_CLR_HISTO 
S_CMD_HISTORY_READ 
S_CMD_HISTORY_LIST 
S_CMD_TRACE 

Definition at line 176 of file csql.h.

Function Documentation

int csql ( const char *  argv0,
CSQL_ARGUMENT csql_arg 
)

Definition at line 2703 of file csql.c.

References APP_NAME_CSQL, au_disable(), au_is_dba_group_member(), Au_user, csql_Database_connected, csql_Editor_cmd, CSQL_ERR_OS_ERROR, CSQL_ERR_SQL_ERROR, csql_Error_code, csql_exit(), csql_exit_cleanup(), csql_Exit_env, csql_exit_init(), csql_Exit_status, csql_get_message(), csql_Input_fp, csql_Is_interactive, CSQL_NAME, csql_Name, csql_Pager_cmd, CSQL_PASSWD_PROMPT_TEXT, csql_Print_cmd, CSQL_PROMPT, csql_Prompt, csql_Scratch_text, csql_Shell_cmd, CSQL_SYSADM_PROMPT, DB_CLIENT_TYPE_ADMIN_CSQL, DB_CLIENT_TYPE_ADMIN_CSQL_WOS, DB_CLIENT_TYPE_CSQL, DB_CLIENT_TYPE_READ_ONLY_CSQL, DB_CLIENT_TYPE_SKIP_VACUUM_ADMIN_CSQL, DB_CLIENT_TYPE_SKIP_VACUUM_CSQL, db_disable_trigger(), db_error_code(), CSQL_ARGUMENT::db_name, db_restart_ex(), ER_ALL_FINAL, ER_AU_INVALID_PASSWORD, ER_DO_NOT_PRINT, er_final(), er_init(), ER_NEVER_EXIT, ER_PRINT_TO_CONSOLE, er_set_print_property(), error(), get_host_ip(), CSQL_ARGUMENT::in_file_name, lang_init_console_txt_conv(), locator_log_force_nologging(), logddl_destroy(), logddl_init(), logddl_set_app_name(), logddl_set_db_name(), logddl_set_ip(), logddl_set_logging_enabled(), logddl_set_pid(), logddl_set_user_name(), NO_ERROR, nonscr_display_error(), CSQL_ARGUMENT::nopager, NULL, os_set_signal_handler(), p, CSQL_ARGUMENT::passwd, prm_get_bool_value(), PRM_ID_CSQL_SINGLE_LINE_MODE, PRM_ID_DDL_AUDIT_LOG, CSQL_ARGUMENT::read_only, SCRATCH_TEXT_LEN, signal_intr(), CSQL_ARGUMENT::single_line_execution, CSQL_ARGUMENT::skip_vacuum, start_csql(), strdup(), strlen, strncpy_bufsize, CSQL_ARGUMENT::sysadm, CSQL_ARGUMENT::trigger_action_flag, TRUE, CSQL_ARGUMENT::user_name, utility_initialize(), and CSQL_ARGUMENT::write_on_standby.

Referenced by createdb(), and main().

Here is the caller graph for this function:

int csql_append_more_line ( int  indent,
const char *  line 
)
void csql_check_server_down ( void  )
char* csql_db_value_as_string ( DB_VALUE value,
int *  length,
bool  plain_string,
CSQL_OUTPUT_TYPE  output_type,
char  cloumn_enclosure 
)

Definition at line 1336 of file csql_result_format.c.

References db_monetary::amount, DB_TYPE_SET_PROFILE::begin_notation, bigint_to_string(), bit_to_string(), db_type_double_profile::commas, db_type_integer_profile::commas, DB_TYPE_MONETARY_PROFILE::commas, CSQL_LOADDB_OUTPUT, CSQL_QUERY_OUTPUT, CSQL_UNKNOWN_OUTPUT, DB_TYPE_MONETARY_PROFILE::currency_symbol, date_as_string(), db_datetimetz::datetime, DATETIME_BUF_SIZE, DATETIMETZ_BUF_SIZE, db_datetime_to_string(), db_datetimeltz_to_string(), db_datetimetz_to_string(), db_get_bigint(), db_get_char(), db_get_date(), db_get_datetime(), db_get_datetimetz(), db_get_double(), db_get_elo(), db_get_enum_codeset(), db_get_enum_short(), db_get_enum_string(), db_get_enum_string_size(), db_get_float(), db_get_int(), db_get_json_raw_body(), db_get_monetary(), db_get_object(), db_get_short(), db_get_string_codeset(), db_get_string_size(), db_get_time(), db_get_timestamp(), db_get_timestamptz(), db_get_type_name(), db_private_free, db_time_to_string(), db_timestampltz_to_string(), db_timestamptz_to_string(), DB_TYPE_BIGINT, DB_TYPE_BIT, DB_TYPE_BLOB, DB_TYPE_CHAR, DB_TYPE_CLOB, DB_TYPE_DATE, DB_TYPE_DATETIME, DB_TYPE_DATETIMELTZ, DB_TYPE_DATETIMETZ, DB_TYPE_DOUBLE, DB_TYPE_ENUMERATION, DB_TYPE_FLOAT, DB_TYPE_INTEGER, DB_TYPE_JSON, DB_TYPE_MONETARY, DB_TYPE_MULTISET, DB_TYPE_NCHAR, DB_TYPE_NULL, DB_TYPE_NUMERIC, DB_TYPE_OBJECT, DB_TYPE_SEQUENCE, DB_TYPE_SET, DB_TYPE_SHORT, DB_TYPE_TIME, DB_TYPE_TIMESTAMP, DB_TYPE_TIMESTAMPLTZ, DB_TYPE_TIMESTAMPTZ, DB_TYPE_VARBIT, DB_TYPE_VARCHAR, DB_TYPE_VARNCHAR, DB_TYPE_VOBJ, db_utime_to_string, DB_VALUE_TYPE, DB_TYPE_MONETARY_PROFILE::decimalplaces, DOUBLE_FORMAT_DECIMAL, double_to_string(), duplicate_string(), DB_TYPE_SET_PROFILE::end_notation, db_type_double_profile::fieldwidth, db_type_integer_profile::fieldwidth, DB_TYPE_MONETARY_PROFILE::fieldwidth, db_type_double_profile::format, db_type_integer_profile::format, DB_TYPE_DATE_PROFILE::format, free_and_init, get_object_print_format(), INTL_CODESET_UTF8, intl_get_currency_symbol_position(), intl_get_money_symbol_console(), lang_get_generic_unicode_norm(), db_type_double_profile::leadingsign, DB_TYPE_MONETARY_PROFILE::leadingsign, db_type_integer_profile::leadingsymbol, db_type_double_profile::leadingzeros, db_type_integer_profile::leadingzeros, DB_TYPE_MONETARY_PROFILE::leadingzeros, db_elo::locator, DB_TYPE_SET_PROFILE::max_entries, NULL, numeric_to_string(), object_to_string(), db_type_double_profile::precision, set_to_string(), SHORT_TO_INT, DB_TYPE_STRING_PROFILE::string_delimiter, string_to_string(), strlen, TIME_BUF_SIZE, db_timestamptz::timestamp, TIMESTAMP_BUF_SIZE, TIMESTAMPTZ_BUF_SIZE, db_type_double_profile::trailingzeros, DB_TYPE_MONETARY_PROFILE::trailingzeros, db_monetary::type, db_timestamptz::tz_id, db_datetimetz::tz_id, unicode_decompose_string(), and unicode_string_need_decompose().

Referenced by get_current_result(), and set_to_string().

Here is the caller graph for this function:

void csql_display_csql_err ( int  line_no,
int  col_no 
)
void csql_display_msg ( const char *  string)

Definition at line 376 of file csql.c.

References csql_fputs(), csql_fputs_console_conv(), and csql_Tty_fp.

Referenced by csql_do_session_cmd(), csql_execute_statements(), csql_help_info(), csql_killtran(), csql_print_buffer(), csql_read_file(), and csql_write_file().

Here is the caller graph for this function:

void csql_display_session_err ( DB_SESSION session,
int  line_no 
)
int csql_edit_contents_append ( const char *  str,
bool  flag_append_new_line 
)

Definition at line 938 of file csql_support.c.

References CSQL_EDIT_CONTENTS::contents, csql_edit_contents_expand(), CSQL_FAILURE, CSQL_SUCCESS, CSQL_EDIT_CONTENTS::data_size, NULL, and strlen.

Referenced by csql_do_session_cmd(), csql_edit_read_file(), and start_csql().

Here is the caller graph for this function:

void csql_edit_contents_clear ( void  )

Definition at line 1214 of file csql_support.c.

References CSQL_STATE_GENERAL, CSQL_EDIT_CONTENTS::data_size, and CSQL_EDIT_CONTENTS::state.

Referenced by csql_do_session_cmd(), csql_edit_contents_finalize(), csql_invoke_system_editor(), and start_csql().

Here is the caller graph for this function:

void csql_edit_contents_finalize ( void  )

Definition at line 1221 of file csql_support.c.

References CSQL_EDIT_CONTENTS::alloc_size, CSQL_EDIT_CONTENTS::contents, csql_edit_contents_clear(), and free_and_init.

Referenced by start_csql().

Here is the caller graph for this function:

char* csql_edit_contents_get ( void  )

Definition at line 896 of file csql_support.c.

References CSQL_EDIT_CONTENTS::contents, and CSQL_EDIT_CONTENTS::data_size.

Referenced by csql_execute_statements(), and display_buffer().

Here is the caller graph for this function:

int csql_edit_read_file ( FILE *  fp)

Definition at line 1235 of file csql_support.c.

References csql_edit_contents_append(), CSQL_FAILURE, CSQL_SUCCESS, intl_is_bom_magic(), NULL, and strlen.

Referenced by csql_invoke_system_editor(), and csql_read_file().

Here is the caller graph for this function:

int csql_edit_write_file ( FILE *  fp)
const char* csql_errmsg ( int  code)

Definition at line 1310 of file csql_support.c.

References CSQL_E_UNKNOWN_TEXT, CSQL_ERR_OS_ERROR, CSQL_ERR_SQL_ERROR, csql_get_message(), db_error_string(), DEFAULT_DB_ERROR_MSG_LEVEL, i, and NULL.

Referenced by nonscr_display_error().

Here is the caller graph for this function:

void csql_exit ( int  exit_status)

Definition at line 2691 of file csql.c.

References csql_Exit_env, and csql_Exit_status.

Referenced by csql(), csql_check_server_down(), csql_exit_session(), and start_csql().

Here is the caller graph for this function:

void csql_fputs ( const char *  str,
FILE *  fp 
)
void csql_fputs_console_conv ( const char *  str,
FILE *  fp 
)
void csql_free_more_lines ( void  )

Definition at line 714 of file csql_support.c.

References free_and_init, i, iq_More_lines, iq_Num_more_lines, and NULL.

Referenced by csql_get_sys_param(), csql_help_menu(), csql_help_schema(), csql_help_trigger(), csql_set_plan_dump(), csql_set_sys_param(), and csql_set_trace().

Here is the caller graph for this function:

int csql_get_column_width ( const char *  column_name)

Definition at line 3052 of file csql.c.

References csql_column_width_info_list_index, i, NULL, trim(), and CSQL_COLUMN_WIDTH_INFO::width.

Referenced by csql_do_session_cmd(), and write_results_to_stream().

Here is the caller graph for this function:

char* csql_get_real_path ( const char *  pathname)

Definition at line 160 of file csql_support.c.

References csql_get_user_home(), NO_ERROR, and NULL.

Referenced by csql_change_working_directory(), csql_read_file(), and csql_write_file().

Here is the caller graph for this function:

int csql_get_session_cmd_no ( const char *  input)
char* csql_get_tmp_buf ( size_t  size)

Definition at line 779 of file csql_support.c.

References CSQL_ERR_NO_MORE_MEMORY, csql_Error_code, free_and_init, and NULL.

Referenced by csql_invoke_system_editor(), and csql_print_buffer().

Here is the caller graph for this function:

void csql_help_schema ( const char *  class_name)

Definition at line 221 of file csql_session.c.

References APPEND_HEAD_LINE, APPEND_MORE_LINE, assert, class_description::attributes, class_description::class_attributes, class_description::class_methods, class_description::class_type, class_description::constraints, csql_display_csql_err(), csql_display_more_lines(), CSQL_ERR_CLASS_NAME_MISSED, CSQL_ERR_NO_MORE_MEMORY, CSQL_ERR_SQL_ERROR, CSQL_ERR_TOO_LONG_LINE, csql_Error_code, csql_free_more_lines(), CSQL_HELP_ATTRIBUTE_HEAD_TEXT, CSQL_HELP_CLASS_ATTRIBUTE_HEAD_TEXT, CSQL_HELP_CLASS_HEAD_TEXT, CSQL_HELP_CLASS_METHOD_HEAD_TEXT, CSQL_HELP_CONSTRAINT_HEAD_TEXT, CSQL_HELP_METHFILE_HEAD_TEXT, CSQL_HELP_METHOD_HEAD_TEXT, CSQL_HELP_NONE_TEXT, CSQL_HELP_PARTITION_HEAD_TEXT, CSQL_HELP_QUERY_SPEC_HEAD_TEXT, CSQL_HELP_RESOLUTION_HEAD_TEXT, CSQL_HELP_SCHEMA_TITLE_TEXT, CSQL_HELP_SUB_CLASS_HEAD_TEXT, CSQL_HELP_SUPER_CLASS_HEAD_TEXT, CSQL_HELP_TRIGGER_HEAD_TEXT, csql_Scratch_text, DB_MAX_IDENTIFIER_LENGTH, error(), free_and_init, class_description::init(), INTL_CODESET_UTF8, intl_identifier_fix(), lang_get_generic_unicode_norm(), LANG_SYS_CODESET, class_description::method_files, class_description::methods, MSGCAT_CATALOG_CSQL, MSGCAT_CSQL_SET_CSQL, msgcat_message(), class_description::name, NO_ERROR, nonscr_display_error(), NULL, class_description::object_id, class_description::partition, class_description::query_spec, class_description::resolutions, SCRATCH_TEXT_LEN, strlen, class_description::subs, class_description::supers, class_description::triggers, unicode_compose_string(), and unicode_string_need_compose().

Referenced by csql_do_session_cmd().

Here is the caller graph for this function:

void csql_help_trigger ( const char *  class_name)
void csql_invoke_system ( const char *  command)

Definition at line 226 of file csql_support.c.

References CSQL_ERR_OS_ERROR, csql_Error_code, csql_Scratch_text, nonscr_display_error(), and SCRATCH_TEXT_LEN.

Referenced by csql_do_session_cmd(), csql_invoke_system_editor(), and csql_print_buffer().

Here is the caller graph for this function:

bool csql_is_statement_complete ( void  )

Definition at line 1175 of file csql_support.c.

References CSQL_STATE_STATEMENT_END, and CSQL_EDIT_CONTENTS::state.

Referenced by start_csql().

Here is the caller graph for this function:

bool csql_is_statement_in_block ( void  )
void csql_pclose ( FILE *  pf,
FILE *  fd 
)

Definition at line 444 of file csql_support.c.

Referenced by csql_display_more_lines(), csql_display_trace(), csql_dump_alltran(), csql_help_info(), display_buffer(), display_empty_result(), and write_results_to_stream().

Here is the caller graph for this function:

void csql_results ( const CSQL_ARGUMENT csql_arg,
DB_QUERY_RESULT result,
DB_QUERY_TYPE attr_spec,
int  line_no,
CUBRID_STMT_TYPE  stmt_type 
)

Definition at line 185 of file csql_result.c.

References assert, CUR_RESULT_INFO::attr_lengths, CUR_RESULT_INFO::attr_names, CUR_RESULT_INFO::attr_types, csql_check_server_down(), csql_display_csql_err(), CSQL_ERR_NO_MORE_MEMORY, CSQL_ERR_SQL_ERROR, csql_Error_code, CSQL_FAILURE, csql_Num_failures, csql_Output_fp, csql_Scratch_text, csql_text_utf8_to_console, CUR_RESULT_INFO::curr_stmt_line_no, CUR_RESULT_INFO::curr_stmt_type, DB_CURSOR_END, db_query_first_tuple(), db_query_format_name(), db_query_format_next(), db_query_format_type(), DB_TYPE_BIGINT, DB_TYPE_DATE, DB_TYPE_DATETIME, DB_TYPE_DATETIMELTZ, DB_TYPE_DATETIMETZ, DB_TYPE_DOUBLE, DB_TYPE_FLOAT, DB_TYPE_INTEGER, DB_TYPE_MONETARY, DB_TYPE_SHORT, DB_TYPE_TIME, DB_TYPE_TIMESTAMP, DB_TYPE_TIMESTAMPLTZ, DB_TYPE_TIMESTAMPTZ, display_empty_result(), err, error(), free_and_init, i, LC_FETCH_CURRENT_VERSION, CSQL_ARGUMENT::loaddb_output, CUR_RESULT_INFO::max_attr_name_length, MAX_BIGINT_DISPLAY_LENGTH, MAX_DATE_DISPLAY_LENGTH, MAX_DATETIME_DISPLAY_LENGTH, MAX_DATETIMETZ_DISPLAY_LENGTH, MAX_DEFAULT_DISPLAY_LENGTH, MAX_DOUBLE_DISPLAY_LENGTH, MAX_FLOAT_DISPLAY_LENGTH, MAX_INTEGER_DISPLAY_LENGTH, MAX_MONETARY_DISPLAY_LENGTH, MAX_SHORT_DISPLAY_LENGTH, MAX_TIME_DISPLAY_LENGTH, MAX_TIMESTAMPTZ_DISPLAY_LENGTH, MAX_UTIME_DISPLAY_LENGTH, NO_ERROR, nonscr_display_error(), NULL, CUR_RESULT_INFO::num_attrs, CSQL_ARGUMENT::plain_output, CSQL_ARGUMENT::query_output, CUR_RESULT_INFO::query_result, SCRATCH_TEXT_LEN, strlen, TM_TRAN_READ_FETCH_VERSION, uncontrol_strdup(), and write_results_to_stream().

Referenced by csql_execute_statements().

Here is the caller graph for this function:

int csql_set_column_width_info ( const char *  column_name,
int  column_width 
)
char* csql_string_to_plain_string ( const char *  string_value,
int  length,
int *  result_length 
)

Definition at line 1141 of file csql_result_format.c.

References CAST_STRLEN, csql_text_utf8_to_console, duplicate_string(), i, NO_ERROR, NULL, return_string(), and strlen.

Referenced by string_to_string(), and write_results_to_stream().

Here is the caller graph for this function:

Variable Documentation

char csql_Editor_cmd[]

Definition at line 129 of file csql.c.

Referenced by csql(), csql_get_external_command(), and csql_invoke_system_editor().

FILE* csql_Input_fp
int csql_Line_lwm

Definition at line 121 of file csql.c.

int csql_Num_failures

Definition at line 118 of file csql.c.

Referenced by csql_execute_statements(), and csql_results().

char csql_Print_cmd[]

Definition at line 124 of file csql.c.

Referenced by csql(), csql_get_external_command(), and csql_print_buffer().

int csql_Row_count

Definition at line 117 of file csql.c.

Referenced by csql_execute_statements(), and write_results_to_stream().

char csql_Shell_cmd[]

Definition at line 135 of file csql.c.

Referenced by csql(), csql_do_session_cmd(), and csql_get_external_command().

int(* csql_text_console_to_utf8) (const char *, const int, char **, int *)

Definition at line 115 of file csql.c.

Referenced by start_csql().

int(* csql_text_utf8_to_console) (const char *, const int, char **, int *)