Current section

Files

Jump to
jamdb_oracle include jamdb_oracle.hrl
Raw

include/jamdb_oracle.hrl

-define(ENCODER, jamdb_oracle_tns_encoder).
-define(DECODER, jamdb_oracle_tns_decoder).
-record(oraclient, {
socket = undefined,
conn_state = disconnected :: disconnected | connected | auth_negotiate,
auto = 1 :: 1 | 0,
type = select :: select | block | change | return,
auth,
fetch,
server,
cursors = [],
params = [],
env = []
}).
-record(format, {
column_name = <<>>,
param = in :: in | out,
data_type,
data_length,
data_scale,
charset
}).
-define(IS_FIXED_TYPE(DataType),
?IS_NUMBER_TYPE(DataType);
?IS_BINARY_TYPE(DataType);
?IS_DATE_TYPE(DataType);
?IS_INTERVAL_TYPE(DataType)
).
-define(IS_NULL_TYPE(DataType),
DataType =/= ?TNS_TYPE_LONG,
DataType =/= ?TNS_TYPE_LONGRAW
).
-define(IS_CHAR_TYPE(DataType),
DataType =:= ?TNS_TYPE_CHAR;
DataType =:= ?TNS_TYPE_VARCHAR;
DataType =:= ?TNS_TYPE_VCS
).
-define(IS_RAW_TYPE(DataType),
DataType =:= ?TNS_TYPE_RAW;
DataType =:= ?TNS_TYPE_VBI
).
-define(IS_NUMBER_TYPE(DataType),
DataType =:= ?TNS_TYPE_NUMBER;
DataType =:= ?TNS_TYPE_FLOAT;
DataType =:= ?TNS_TYPE_VARNUM
).
-define(IS_BINARY_TYPE(DataType),
DataType =:= ?TNS_TYPE_BFLOAT;
DataType =:= ?TNS_TYPE_BDOUBLE
).
-define(IS_ROWID_TYPE(DataType),
DataType =:= ?TNS_TYPE_ROWID;
DataType =:= ?TNS_TYPE_RID
).
-define(IS_LOB_TYPE(DataType),
DataType =:= ?TNS_TYPE_CLOB;
DataType =:= ?TNS_TYPE_BLOB
).
-define(IS_LONG_TYPE(DataType),
DataType =:= ?TNS_TYPE_LONG;
DataType =:= ?TNS_TYPE_LONGRAW
).
-define(IS_INTERVAL_TYPE(DataType),
DataType =:= ?TNS_TYPE_INTERVALYM;
DataType =:= ?TNS_TYPE_INTERVALDS
).
-define(IS_DATE_TYPE(DataType),
DataType =:= ?TNS_TYPE_DATE;
DataType =:= ?TNS_TYPE_TIMESTAMP;
DataType =:= ?TNS_TYPE_TIMESTAMPTZ;
DataType =:= ?TNS_TYPE_TIMESTAMPLTZ
).
-define(ISO_LATIN_1_CHARSET, 31).
-define(RU8PC866_CHARSET, 152).
-define(CL8MSWIN1251_CHARSET, 171).
-define(ZHS16GBK_CHARSET, 852).
-define(ZHT16BIG5_CHARSET, 865).
-define(UTF8_CHARSET, 871).
-define(AL32UTF8_CHARSET, 873).
-define(AL16UTF16_CHARSET, 2000).
-define(ZONEIDMAP, [
{100, "America/New_York"},
{101, "America/Chicago"},
{103, "America/Los_Angeles"},
{250, "Asia/Shanghai"},
{254, "Asia/Hong_Kong"},
{267, "Asia/Tokyo"},
{402, "Europe/Moscow"},
{405, "Europe/Stockholm"},
{408, "Europe/Kiev"}
]).