/*---------------------------------------------------------------- * sql_connect.h * * Change logs * 2000.03.23: Add "encoding","ver_no" to PSconnList struct. * * * This software is copyrighted by SAKAIDA Masaaki - Osaka,Japan. * The author hereby grants permission to use, copy, modify, * distribute, and license this software and its documentation * for any purpose, provided that existing copyright notices are * retained in all copies and that this notice is included * verbatim in any distributions. No written agreement, license, * or royalty fee is required for any of the authorized uses. * Modifications to this software may be copyrighted by their * author and need not follow the licensing terms described * here, provided that the new terms are clearly indicated on * the first page of each file where they apply. * IN NO EVENT SHALL THE AUTHOR OR DISTRIBUTORS BE LIABLE TO ANY * PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR * CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS * SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN * IF THE AUTHOR HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE. * THE AUTHOR AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR * PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON * AN "AS IS" BASIS, AND THE AUTHOR AND DISTRIBUTORS HAVE NO * OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, * ENHANCEMENTS, OR MODIFICATIONS. *----------------------------------------------------------------- */ #ifndef SQL_CONNECT_HEADER #define SQL_CONNECT_HEADER #include "exec_sql.h" /*----------------------------------------------------------------- * connct to TARGET_NAME as CONNCT_NAME user USER_NAME [PASSWD] * set connection CONNCT_NAME * disconnct CONNCT_NAME *---------------------------------------------------------------*/ #define TARGET_NAME_MAXLEN 129 #define CONNECT_NAME_MAXLEN 19 #define USER_NAME_MAXLEN 9 #define PASSWD_MAXLEN 17 /*------------------------------------------------------------------- The connected database information list. -------------------------------------------------------------------*/ typedef struct _PSconnList { char openflag; /* connect=1 disconnect=0 */ char *target_name; /* "dbname@host:port" */ char *connect_name; /* connect name and 'SHELL VAR' name */ char *user_name; PSconn *dbset; /* connect information */ struct _PSconnList *next; /* Next Pointer(NULL is last pointer) */ } PSconnList; typedef struct _PSconnInfo { int maxno; PSconnList *firstp; PSconnList *lastp; PSconnList *currentp; PSconnList *defaultp; } PSconnInfo; extern PSconnInfo psconninfo; /*----------------------------------------------------------------- * Function List *---------------------------------------------------------------*/ extern int exec_connect(PSconnSet * pset, char *target_name, char *connect_name, char *user_name, char *passwd); extern int exec_disconnect(PSconnSet * pset, char *connect_name); extern int exec_set_connection(PSconnSet * pset, char *connect_name); extern void list_AllconnectDB(FILE * fout, PSprintOpt * po, int encoding); extern int parse_connect(PSconnSet *pset, char *connect_stmt, char *target_name, char *connect_name, char *user_name, char *passwd); extern int parse_disconnect(PSconnSet *pset, char *disconnect_stmt, char *connect_name); extern int parse_set_connection(PSconnSet *pset, char *set_connect_stmt, char *connect_name); extern int separate_target_name(char *target_name, char *dbname, char *host, char *port); extern char *compose_target_name(char *dbname, char *host, char *port); extern void list_PSconnInfo(FILE * fout); #endif