8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-29 06:43:03 +01:00
firebird-mirror/src/isql/isql_proto.h
robocop c5c02ed2e9 1.- Replacing raw call to gds__msg_format by ISQL_msg_get; the routine was there for years and almost unused.
2.- UDFs are still created by sys_flag being NULL, so show_functions() should acknowledge that fact.
3.- Implement naive code to show an approximate script-related line number when a failure happens. (Unlike my private FB1's isql, it doesn't rely on strings subject to localization.)
4.- With SET PLANONLY ON, PLAN was activated, but with SET PLAN OFF, PLANONLY wasn't deactivated.
5.- Include isc_info_sql_stmt_get_segment among statements that are like SELECT.
6.- Solve a bad interaction between PLANONLY and SQLDA_DISPLAY, where the first being activated didn't allow to see the output XSQLDA.
7.- More error detection.
2005-03-31 07:50:32 +00:00

76 lines
3.0 KiB
C

/*
* PROGRAM: Interactive SQL utility
* MODULE: isql_proto.h
* DESCRIPTION: Prototype header file for isql.epp
*
* The contents of this file are subject to the Interbase Public
* License Version 1.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy
* of the License at http://www.Inprise.com/IPL.html
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
* or implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code was created by Inprise Corporation
* and its predecessors. Portions created by Inprise Corporation are
* Copyright (C) Inprise Corporation.
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
*/
#ifndef ISQL_ISQL_PROTO_H
#define ISQL_ISQL_PROTO_H
void ISQL_array_dimensions(const TEXT*);
TEXT* ISQL_blankterm2(const TEXT* input, TEXT* output);
void ISQL_build_table_list(void**, FILE*, FILE*, FILE*);
void ISQL_build_view_list(void**, FILE*, FILE*, FILE*);
int ISQL_commit_work(int, FILE*, FILE*, FILE*);
void ISQL_copy_SQL_id(const TEXT*, TEXT*, TEXT);
// CVC: Not found, probably in some lost GUI-related file.
//int ISQL_create_database(TEXT*,
// SCHAR**,
// SCHAR*,
// SCHAR*, FILE*, FILE*, FILE*);
bool ISQL_dbcheck();
void ISQL_disconnect_database(bool);
void ISQL_errmsg(const ISC_STATUS*);
void ISQL_warning(ISC_STATUS*);
void ISQL_exit_db();
// CVC: Not found.
//int ISQL_extract(TEXT*, int, FILE*, FILE*, FILE*);
int ISQL_frontend_command(TEXT*, FILE*, FILE*, FILE*);
bool ISQL_get_base_column_null_flag(const TEXT*, const SSHORT, const TEXT*);
void ISQL_get_character_sets(SSHORT, SSHORT, bool, TEXT*);
SSHORT ISQL_get_default_char_set_id();
void ISQL_get_default_source(const TEXT*, TEXT*, ISC_QUAD*);
SSHORT ISQL_get_field_length(const TEXT*);
SLONG ISQL_get_index_segments(TEXT*, const size_t, const TEXT*, bool);
bool ISQL_get_null_flag(const TEXT*, TEXT*);
void ISQL_get_version(bool);
SSHORT ISQL_init(FILE*, FILE*);
#ifdef NOT_USED_OR_REPLACED
bool ISQL_is_domain(const TEXT*);
#endif
int ISQL_main(int, char**);
void ISQL_make_upper(TEXT*);
void ISQL_msg_get(USHORT number, TEXT* msg, const TEXT* arg1, const TEXT* arg2 = 0,
const TEXT* arg3 = 0, const TEXT* arg4 = 0, const TEXT* arg5 = 0);
void ISQL_msg_get(USHORT number, USHORT size, TEXT* msg, const TEXT* arg1,
const TEXT* arg2 = 0, const TEXT* arg3 = 0, const TEXT* arg4 = 0, const TEXT* arg5 = 0);
void ISQL_print_validation(FILE*, ISC_QUAD*, bool, FB_API_HANDLE);
void ISQL_printf(FILE*, const char*);
void ISQL_query_database(SSHORT*, FILE*, FILE*, FILE*);
void ISQL_remove_and_unescape_quotes(TEXT* string, const char quote);
void ISQL_reset_settings();
void ISQL_ri_action_print(const TEXT*, const TEXT*, bool);
int ISQL_sql_statement(TEXT*, FILE*, FILE*, FILE*);
void ISQL_truncate_term(TEXT*, USHORT);
void ISQL_win_err(const char*);
#endif // ISQL_ISQL_PROTO_H