CUBRID Engine
latest
Main Page
Namespaces
Classes
Files
File List
File Members
cas_dbms_util.h
Go to the documentation of this file.
1
/*
2
* Copyright 2008 Search Solution Corporation
3
* Copyright 2016 CUBRID Corporation
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*
17
*/
18
19
20
/*
21
* cas_dbms_util.h -
22
*/
23
24
#ifndef _CAS_DBMS_UTIL_H_
25
#define _CAS_DBMS_UTIL_H_
26
27
#ident "$Id$"
28
29
#define free_and_init(ptr) \
30
do { \
31
if ((ptr)) { \
32
free ((ptr)); \
33
(ptr) = NULL; \
34
} \
35
} while (0)
36
#define MAX_DIAG_DATA_VALUE 0xfffffffffffffLL
37
38
#define DBINFO_MAX_LENGTH 8192
39
40
typedef
enum
41
{
42
CUBRID_STMT_NONE
= -1,
43
CUBRID_STMT_ALTER_CLASS
,
44
CUBRID_STMT_ALTER_SERIAL
,
45
CUBRID_STMT_COMMIT_WORK
,
46
CUBRID_STMT_REGISTER_DATABASE
,
47
CUBRID_STMT_CREATE_CLASS
,
48
CUBRID_STMT_CREATE_INDEX
,
49
CUBRID_STMT_CREATE_TRIGGER
,
50
CUBRID_STMT_CREATE_SERIAL
,
51
CUBRID_STMT_DROP_DATABASE
,
52
CUBRID_STMT_DROP_CLASS
,
53
CUBRID_STMT_DROP_INDEX
,
54
CUBRID_STMT_DROP_LABEL
,
55
CUBRID_STMT_DROP_TRIGGER
,
56
CUBRID_STMT_DROP_SERIAL
,
57
CUBRID_STMT_EVALUATE
,
58
CUBRID_STMT_RENAME_CLASS
,
59
CUBRID_STMT_ROLLBACK_WORK
,
60
CUBRID_STMT_GRANT
,
61
CUBRID_STMT_REVOKE
,
62
CUBRID_STMT_UPDATE_STATS
,
63
CUBRID_STMT_INSERT
,
64
CUBRID_STMT_SELECT
,
65
CUBRID_STMT_UPDATE
,
66
CUBRID_STMT_DELETE
,
67
CUBRID_STMT_CALL
,
68
CUBRID_STMT_GET_ISO_LVL
,
69
CUBRID_STMT_GET_TIMEOUT
,
70
CUBRID_STMT_GET_OPT_LVL
,
71
CUBRID_STMT_SET_OPT_LVL
,
72
CUBRID_STMT_SCOPE
,
73
CUBRID_STMT_GET_TRIGGER
,
74
CUBRID_STMT_SET_TRIGGER
,
75
CUBRID_STMT_SAVEPOINT
,
76
CUBRID_STMT_PREPARE
,
77
CUBRID_STMT_ATTACH
,
78
CUBRID_STMT_USE
,
79
CUBRID_STMT_REMOVE_TRIGGER
,
80
CUBRID_STMT_RENAME_TRIGGER
,
81
CUBRID_STMT_ON_LDB
,
82
CUBRID_STMT_GET_LDB
,
83
CUBRID_STMT_SET_LDB
,
84
CUBRID_STMT_GET_STATS
,
85
CUBRID_STMT_CREATE_USER
,
86
CUBRID_STMT_DROP_USER
,
87
CUBRID_STMT_ALTER_USER
,
88
CUBRID_STMT_SET_SYS_PARAMS
,
89
CUBRID_STMT_ALTER_INDEX
,
90
91
CUBRID_STMT_CREATE_STORED_PROCEDURE
,
92
CUBRID_STMT_DROP_STORED_PROCEDURE
,
93
CUBRID_STMT_SELECT_UPDATE
,
94
CUBRID_STMT_ALTER_STORED_PROCEDURE
,
95
CUBRID_STMT_ALTER_STORED_PROCEDURE_OWNER
=
CUBRID_STMT_ALTER_STORED_PROCEDURE
,
96
97
CUBRID_MAX_STMT_TYPE
98
}
CUBRID_STMT_TYPE
;
99
100
typedef
struct
database_info
DB_INFO
;
101
102
struct
database_info
103
{
104
char
*
alias
;
105
char
*
dbinfo
;
/* tnsname in Oracle, addr:port in MySQL */
106
DB_INFO
*
next
;
107
int
num_alias
;
108
};
109
110
typedef
struct
cache_time
CACHE_TIME
;
111
struct
cache_time
112
{
113
int
sec
;
114
int
usec
;
115
};
116
117
extern
int
cfg_get_dbinfo
(
char
*
alias
,
char
*
dbinfo
);
118
extern
void
cfg_free_dbinfo_all
(
DB_INFO
* databases);
119
extern
int
cfg_read_dbinfo
(
DB_INFO
** db_info_p);
120
extern
DB_INFO
*
cfg_find_db_list
(
DB_INFO
* db_info_list_p,
const
char
*
name
);
121
extern
int
char_is_delim
(
int
c,
int
delim);
122
extern
char
*
char_get_next
(
char
*str_p);
123
124
extern
UINT64
ntohi64
(UINT64 from);
125
126
extern
int
char_islower
(
int
c);
127
extern
int
char_isupper
(
int
c);
128
extern
int
char_isalpha
(
int
c);
129
extern
int
char_tolower
(
int
c);
130
131
#endif
/* _CAS_DBMS_UTIL_H_ */
cache_time::sec
int sec
Definition:
cas_dbms_util.h:113
CUBRID_STMT_GET_STATS
Definition:
cas_dbms_util.h:84
char_tolower
int char_tolower(int c)
Definition:
chartype.c:146
CUBRID_STMT_DROP_SERIAL
Definition:
cas_dbms_util.h:56
CUBRID_STMT_SET_OPT_LVL
Definition:
cas_dbms_util.h:71
cfg_get_dbinfo
int cfg_get_dbinfo(char *alias, char *dbinfo)
Definition:
cas_dbms_util.c:72
CUBRID_STMT_CREATE_TRIGGER
Definition:
cas_dbms_util.h:49
CUBRID_MAX_STMT_TYPE
Definition:
cas_dbms_util.h:97
char_isupper
int char_isupper(int c)
Definition:
chartype.c:49
CUBRID_STMT_ROLLBACK_WORK
Definition:
cas_dbms_util.h:59
CUBRID_STMT_CREATE_CLASS
Definition:
cas_dbms_util.h:47
CUBRID_STMT_GRANT
Definition:
cas_dbms_util.h:60
CUBRID_STMT_ALTER_USER
Definition:
cas_dbms_util.h:87
CUBRID_STMT_SET_SYS_PARAMS
Definition:
cas_dbms_util.h:88
CUBRID_STMT_RENAME_TRIGGER
Definition:
cas_dbms_util.h:80
CUBRID_STMT_GET_TIMEOUT
Definition:
cas_dbms_util.h:69
char_is_delim
int char_is_delim(int c, int delim)
Definition:
cas_dbms_util.c:255
CUBRID_STMT_PREPARE
Definition:
cas_dbms_util.h:76
CUBRID_STMT_CREATE_STORED_PROCEDURE
Definition:
cas_dbms_util.h:91
CUBRID_STMT_UPDATE
Definition:
cas_dbms_util.h:65
cfg_free_dbinfo_all
void cfg_free_dbinfo_all(DB_INFO *databases)
Definition:
cas_dbms_util.c:51
CUBRID_STMT_SAVEPOINT
Definition:
cas_dbms_util.h:75
char_isalpha
int char_isalpha(int c)
Definition:
chartype.c:61
CUBRID_STMT_INSERT
Definition:
cas_dbms_util.h:63
CUBRID_STMT_GET_LDB
Definition:
cas_dbms_util.h:82
CUBRID_STMT_DROP_INDEX
Definition:
cas_dbms_util.h:53
CUBRID_STMT_GET_OPT_LVL
Definition:
cas_dbms_util.h:70
CUBRID_STMT_ATTACH
Definition:
cas_dbms_util.h:77
CUBRID_STMT_SCOPE
Definition:
cas_dbms_util.h:72
CUBRID_STMT_REGISTER_DATABASE
Definition:
cas_dbms_util.h:46
database_info::name
char * name
Definition:
databases_file.h:56
CUBRID_STMT_CALL
Definition:
cas_dbms_util.h:67
CUBRID_STMT_ALTER_CLASS
Definition:
cas_dbms_util.h:43
CUBRID_STMT_ON_LDB
Definition:
cas_dbms_util.h:81
CUBRID_STMT_NONE
Definition:
cas_dbms_util.h:42
cache_time
Definition:
cas_dbms_util.h:111
ntohi64
UINT64 ntohi64(UINT64 from)
Definition:
cas_dbms_util.c:328
CUBRID_STMT_REMOVE_TRIGGER
Definition:
cas_dbms_util.h:79
CUBRID_STMT_SET_TRIGGER
Definition:
cas_dbms_util.h:74
CUBRID_STMT_EVALUATE
Definition:
cas_dbms_util.h:57
CUBRID_STMT_RENAME_CLASS
Definition:
cas_dbms_util.h:58
CUBRID_STMT_REVOKE
Definition:
cas_dbms_util.h:61
CUBRID_STMT_GET_ISO_LVL
Definition:
cas_dbms_util.h:68
cache_time::usec
int usec
Definition:
cas_dbms_util.h:114
CUBRID_STMT_DROP_STORED_PROCEDURE
Definition:
cas_dbms_util.h:92
char_islower
int char_islower(int c)
Definition:
chartype.c:37
CUBRID_STMT_ALTER_INDEX
Definition:
cas_dbms_util.h:89
database_info::dbinfo
char * dbinfo
Definition:
cas_dbms_util.h:105
CUBRID_STMT_CREATE_SERIAL
Definition:
cas_dbms_util.h:50
CUBRID_STMT_SELECT
Definition:
cas_dbms_util.h:64
CUBRID_STMT_COMMIT_WORK
Definition:
cas_dbms_util.h:45
CUBRID_STMT_SET_LDB
Definition:
cas_dbms_util.h:83
database_info::num_alias
int num_alias
Definition:
cas_dbms_util.h:107
CUBRID_STMT_TYPE
CUBRID_STMT_TYPE
Definition:
cas_dbms_util.h:40
CUBRID_STMT_CREATE_USER
Definition:
cas_dbms_util.h:85
database_info
Definition:
databases_file.h:54
CUBRID_STMT_SELECT_UPDATE
Definition:
cas_dbms_util.h:93
CUBRID_STMT_ALTER_SERIAL
Definition:
cas_dbms_util.h:44
cfg_read_dbinfo
int cfg_read_dbinfo(DB_INFO **db_info_p)
Definition:
cas_dbms_util.c:133
CUBRID_STMT_DROP_TRIGGER
Definition:
cas_dbms_util.h:55
CUBRID_STMT_UPDATE_STATS
Definition:
cas_dbms_util.h:62
CUBRID_STMT_DROP_USER
Definition:
cas_dbms_util.h:86
CUBRID_STMT_CREATE_INDEX
Definition:
cas_dbms_util.h:48
CUBRID_STMT_DROP_CLASS
Definition:
cas_dbms_util.h:52
database_info::next
DB_INFO * next
Definition:
databases_file.h:61
CUBRID_STMT_DELETE
Definition:
cas_dbms_util.h:66
cfg_find_db_list
DB_INFO * cfg_find_db_list(DB_INFO *db_info_list_p, const char *name)
Definition:
databases_file.c:1008
CUBRID_STMT_GET_TRIGGER
Definition:
cas_dbms_util.h:73
CUBRID_STMT_DROP_LABEL
Definition:
cas_dbms_util.h:54
char_get_next
char * char_get_next(char *str_p)
Definition:
cas_dbms_util.c:268
database_info::alias
char * alias
Definition:
cas_dbms_util.h:104
CUBRID_STMT_USE
Definition:
cas_dbms_util.h:78
CUBRID_STMT_ALTER_STORED_PROCEDURE_OWNER
Definition:
cas_dbms_util.h:95
CUBRID_STMT_ALTER_STORED_PROCEDURE
Definition:
cas_dbms_util.h:94
CUBRID_STMT_DROP_DATABASE
Definition:
cas_dbms_util.h:51
src
broker
cas_dbms_util.h
Generated by
1.8.11