亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? otl.hpp

?? 一個比較好的開源數據庫讀取庫
?? HPP
?? 第 1 頁 / 共 5 頁
字號:
const int otl_odbc_adapter=1;const int otl_ora7_adapter=2;const int otl_ora8_adapter=3;const int otl_inout_binding=1;const int otl_select_binding=2;const int otl_unsupported_type=-10000;#if defined(OTL_ANSI_CPP)#define OTL_SCAST(_t,_e) static_cast<_t >(_e)#define OTL_RCAST(_t,_e) reinterpret_cast<_t >(_e)#define OTL_DCAST(_t,_e) dynamic_cast<_t >(_e)#define OTL_CCAST(_t,_e) const_cast<_t >(_e)#define OTL_CONST_EXCEPTION const#if defined OTL_FUNC_THROW_SPEC_ON#define OTL_THROWS_OTL_EXCEPTION throw(otl_exception)#define OTL_NO_THROW throw()#else#define OTL_THROWS_OTL_EXCEPTION#define OTL_NO_THROW#endif#define OTL_TYPE_NAME typename#include <new>#else#define OTL_SCAST(_t,_e) ((_t)(_e))#define OTL_RCAST(_t,_e) ((_t)(_e))#define OTL_DCAST(_t,_e) ((_t)(_e))#define OTL_CCAST(_t,_e) ((_t)(_e))#define OTL_CONST_EXCEPTION#define OTL_THROWS_OTL_EXCEPTION#define OTL_NO_THROW#define OTL_TYPE_NAME class#endif#define OTL_PCONV(_to,_from,_val) \OTL_SCAST(_to,*OTL_RCAST(_from*,OTL_CCAST(void*,_val)))#if defined(OTL_ACE)#include <ace/SString.h>#include <ace/Array.h>#include <ace/Functor.h>#include <ace/RB_Tree.h>#define OTL_USER_DEFINED_STRING_CLASS_ON#define USER_DEFINED_STRING_CLASS ACE_TString#define OTL_VALUE_TEMPLATE_ONconst int otl_tmpl_vector_default_size=16;template<OTL_TYPE_NAME T>class otl_tmpl_vector: public ACE_Array<T>{public: otl_tmpl_vector(const int init_size=otl_tmpl_vector_default_size)  : ACE_Array<T>(init_size==0?otl_tmpl_vector_default_size:init_size) {  _length=0; } ~otl_tmpl_vector(){} int capacity(void) const {  return this->max_size(); } int size(void) const {  return _length; } void clear(void) {  _length=0; } void resize(const int new_size, const T& t=T()) {  ACE_Array<T>::size(new_size);  if(new_size>_length){   for(int i=_length;i<new_size;++i)    (*this)[i]=t;  }  _length=new_size; } void push_back(const T& elem) {  int curr_max_size=this->max_size();  if(_length==curr_max_size)   ACE_Array<T>::size(curr_max_size*2);  ++_length;  (*this)[_length-1]=elem; } void pop_back(void) {  if(_length>0)   --_length; }protected: int _length;};#endif#if defined(OTL_UNCAUGHT_EXCEPTION_ON)#include <exception>#if !defined(OTL_STLPORT)inline bool otl_uncaught_exception(){  return std::uncaught_exception();}#elseinline bool otl_uncaught_exception(){  return __std_alias::uncaught_exception();}#endif#elseinline bool otl_uncaught_exception(){  return false;}#endif#if defined(OTL_STLPORT)#if defined(__STLPORT_STD)#define OTL_STLPORT_NAMESPACE __STLPORT_STD#else#if defined(_STLP_USE_OWN_NAMESPACE)#define OTL_STLPORT_NAMESPACE _STL#else#define OTL_STLPORT_NAMESPACE std#endif#endif#define OTL_STL#endif#if defined(OTL_VALUE_TEMPLATE_ON) && !defined(OTL_STL) && !defined(OTL_ACE)#define STD_NAMESPACE_PREFIX#if (defined(_MSC_VER)&&(_MSC_VER>=1300))||defined(OTL_ANSI_CPP)#include <iostream>using namespace std;#else#include <iostream.h>#endif#endif#if defined(OTL_USER_DEFINED_STRING_CLASS_ON)#if defined(OTL_STL)#error OTL_STL cannot be used in combination with OTL_USER_DEFINED_STRING_CLASS_ON#endif#if defined(USER_DEFINED_STRING_CLASS)#define OTL_STRING_CONTAINER USER_DEFINED_STRING_CLASS#define STD_NAMESPACE_PREFIX#else#error USER_DEFINED_STRING_CLASS macro needs to be defined before including otlv4.h#endif#endif#if defined(OTL_STL)#if defined(_MSC_VER)#if (_MSC_VER >= 1200)#pragma warning (disable:4786)#pragma warning (disable:4290)#pragma warning (disable:4996)#endif#endif#if defined(OTL_STL_NOSTD_NAMESPACE)#ifndef OTL_STRING_CONTAINER#define OTL_STRING_CONTAINER string#endif#define STD_NAMESPACE_PREFIX#else#ifndef OTL_STRING_CONTAINER#if defined(OTL_STLPORT)#define OTL_STRING_CONTAINER OTL_STLPORT_NAMESPACE ::string#else#define OTL_STRING_CONTAINER std::string#endif#endif#if defined(OTL_STLPORT)#define STD_NAMESPACE_PREFIX OTL_STLPORT_NAMESPACE ::#else#define STD_NAMESPACE_PREFIX std::#endif#endif#include <string>#include <iterator>#include <vector>#ifndef OTL_STL_NOSTD_NAMESPACE#include <iostream>#else#if defined(_MSC_VER) && (_MSC_VER >= 1300)#include <iostream>using namespace std;#else#include <iostream.h>#endif#endif#endif//======================= END OF CONFIGURATION ==============================// ====== COMMON NON-TEMPLATE OBJECTS: CONSTANTS, CLASSES, ETC. ===========#if defined(OTL_ORA8)const int otl_var_list_size=1024;#elseconst int otl_var_list_size=512;#endifconst int otl_error_code_0=32000;#define otl_error_msg_0 "Incompatible data types in stream operation"const int otl_error_code_1=32004;#define otl_error_msg_1 "No input variables have been defined in SQL statement"const int otl_error_code_2=32003;#define otl_error_msg_2 "Not all input variables have been initialized"const int otl_error_code_3=32001;#define otl_error_msg_3 "Row must be full for flushing output stream"const int otl_error_code_4=32005;#define otl_error_msg_4 "Input string value is too large to fit into the buffer"const int otl_error_code_5=32006;#define otl_error_msg_5 "Input otl_long_string is too large to fit into the buffer"const int otl_error_code_6=32007;#define otl_error_msg_6 "PL/SQL table size is too large (>32767)"const int otl_error_code_7=32008;#define otl_error_msg_7 "Writing CLOB/BLOB in stream mode: actual size is greater than specified"const int otl_error_code_8=32009;#define otl_error_msg_8 "Closing CLOB/BLOB in stream mode: actual size is not equal to specified size"const int otl_error_code_9=32010;#define otl_error_msg_9 "CLOB/BLOB stream is not open for writing"const int otl_error_code_10=32011;#define otl_error_msg_10 "CLOB/BLOB stream is not open for reading"const int otl_error_code_11=32012;#define otl_error_msg_11 "First session must be started with session_begin()"const int otl_error_code_12=32013;#define otl_error_msg_12 "Invalid bind variable declaration"const int otl_error_code_13=32014;#define otl_error_msg_13 "No stored procedure was found"const int otl_error_code_14=32015;#define otl_error_msg_14 "Unsupported data type: "const int otl_error_code_15=32016;#define otl_error_msg_15 "Unsupported procedure type"const int otl_error_code_16=32017;#define otl_error_msg_16 "Stream buffer size can't be > 1 in this case"const int otl_error_code_17=32018;#define otl_error_msg_17                                        \"ODBC / DB2 CLI function name is not recognized. "              \"It should be one of the following: SQLTables, SQLColumns, "    \"SQLProcedures, SQLColumnPrivileges, SQLTablePrivileges, "      \"SQLPrimaryKeys, SQLProcedureColumns, SQLForeignKeys"const int otl_error_code_18=32019;#define otl_error_msg_18                                \"otl_stream::operator>>() should have been called "     \"before otl_stream::operator int()"const int otl_error_code_19=32020;#define otl_error_msg_19                                \"otl_stream_read_iterator: otl_stream is not open"const int otl_error_code_20=32021;#define otl_error_msg_20                                \"otl_stream_read_iterator: PL/SQL table and 'refcur' "  \"parameters are not supported"const int otl_error_code_21=32022;#define otl_error_msg_21                                        \"otl_stream_read_iterator: otl_stream cannot be described"const int otl_error_code_22=32023;#define otl_error_msg_22                                \"otl_stream_read_iterator: position is out of range"const int otl_error_code_23=32024;#define otl_error_msg_23                        \"otl_stream_read_iterator: incompatible types in get()"const int otl_error_code_24=32025;#define otl_error_msg_24 \"otl_stream::operator int() is not supported in the LOB stream mode"const int otl_error_code_25=32026;#define otl_error_msg_25                                                        \"otl_stream_read_iterator: get(otl_lob_stream*&) function "                     \"can only be used if otl_stream::set_lob_stream_mode(true) had been called "    \"before the iterator was attached to the stream"const int otl_error_code_26=32027;#define otl_error_msg_26                                \"otl_stream_read_iterator: variable name is not recognized "const int otl_error_code_27=32028;#define otl_error_msg_27 "Unsupported column data type"const int otl_error_code_28=32029;#define otl_error_msg_28 \"RAW value cannot be read with otl_lob_stream, use otl_long_string instead"const int otl_error_code_29=32030;#define otl_error_msg_29 \"otl_stream is already open"const int otl_error_code_30=32031;#define otl_error_msg_30 \"otl_connect is already connected"const int otl_error_code_31=32032;#define otl_error_msg_31 \"SELECT otl_stream buffer size for TimesTen should be in [0..128] range"const int otl_error_code_32=32033;#define otl_error_msg_32 \"otl_connect object needs to be connected to DB before using otl_subscriber"const int otl_error_code_33=32034;#define otl_error_msg_33 \"otl_stream buffer size should be 1 when refcur or plsql table is used"const int otl_oracle_date_size=7;const int otl_explicit_select=0;const int otl_implicit_select=1;const int otl_input_param=0;const int otl_output_param=1;const int otl_inout_param=2;const unsigned int otl_all_num2str=1;const unsigned int otl_all_date2str=2;const int otl_num_str_size=60;const int otl_date_str_size=60;class otl_select_struct_override{public:  short int* col_ndx;  short int* col_type;  int* col_size;  int len;  unsigned int all_mask;  bool lob_stream_mode;  otl_select_struct_override():    col_ndx(new short int[otl_var_list_size]),    col_type(new short int[otl_var_list_size]),    col_size(new int[otl_var_list_size]),    len(0),    all_mask(0),    lob_stream_mode(false),    container_size_(otl_var_list_size)  {  }  ~otl_select_struct_override()  {    delete[] col_ndx;    delete[] col_type;    delete[] col_size;  }  void reset(void)  {    len=0;    all_mask=0;    lob_stream_mode=false;  }  void add_override(const int andx, const int atype, const int asize=0)  {    if(len==otl_var_list_size){      int temp_container_size=container_size_;      container_size_*=2;      short int* temp_col_ndx=new short int[container_size_];      short int* temp_col_type=new short int[container_size_];      int* temp_col_size=new int[container_size_];      memcpy(temp_col_ndx,col_ndx,sizeof(short int)*temp_container_size);      memcpy(temp_col_type,col_type,sizeof(short int)*temp_container_size);      memcpy(temp_col_size,col_size,sizeof(int)*temp_container_size);      delete[] col_ndx;      delete[] col_type;      delete[] col_size;      col_ndx=temp_col_ndx;      col_type=temp_col_type;      col_size=temp_col_size;    }    ++len;    col_ndx[len-1]=OTL_SCAST(short,andx);    col_type[len-1]=OTL_SCAST(short,atype);    col_size[len-1]=asize;  }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月天视频一区| 久久人人超碰精品| 精品国产网站在线观看| 久久综合久久鬼色中文字| 国产精品久久久久久久久免费丝袜 | 久久婷婷色综合| 亚洲色图在线视频| 麻豆精品一区二区av白丝在线| 成人精品亚洲人成在线| 欧美三级电影网| 国产亚洲综合在线| 亚洲一区二区三区中文字幕| 韩国精品免费视频| 欧洲色大大久久| 欧美videossexotv100| 亚洲精品日日夜夜| 国产精品一区一区| 欧美精品第一页| 国产精品福利影院| 老司机一区二区| 欧美在线短视频| 久久久久国色av免费看影院| 亚洲成a人片在线观看中文| 丁香婷婷深情五月亚洲| 69堂国产成人免费视频| 亚洲手机成人高清视频| 国产真实乱子伦精品视频| 91精品福利视频| 国产精品丝袜久久久久久app| 日韩av成人高清| 在线这里只有精品| 国产欧美精品一区aⅴ影院| 琪琪久久久久日韩精品| av亚洲精华国产精华| 久久综合精品国产一区二区三区| 亚洲国产成人av| 99久久久久久99| 国产蜜臀97一区二区三区| 奇米888四色在线精品| 欧美亚洲免费在线一区| 国产精品电影一区二区三区| 国模冰冰炮一区二区| 日韩一区二区在线播放| 亚洲bdsm女犯bdsm网站| 在线视频一区二区三区| 日韩福利电影在线| 在线观看av一区| 亚洲人亚洲人成电影网站色| 丁香天五香天堂综合| 久久精品夜色噜噜亚洲aⅴ| 美脚の诱脚舐め脚责91| 在线播放国产精品二区一二区四区 | 九九国产精品视频| 在线不卡中文字幕| 亚洲午夜在线电影| 色哟哟一区二区| 国产精品久久久一本精品| 国产精品99久久久久久久vr| 26uuu亚洲婷婷狠狠天堂| 免费在线看一区| 欧美一级片在线| 日韩精品一二三| 欧美高清视频一二三区| 亚洲小说欧美激情另类| 欧美日韩一区二区三区免费看 | 色婷婷久久久亚洲一区二区三区 | 91色在线porny| 欧美国产日韩在线观看| 国产成人av一区二区三区在线观看| 久久久久久久综合| 国产99久久久国产精品潘金| 国产欧美视频在线观看| www.亚洲人| 亚洲三级视频在线观看| 色哟哟国产精品| 亚洲国产精品人人做人人爽| 欧美日韩一区二区三区免费看| 丝袜美腿亚洲一区| 欧美mv日韩mv亚洲| 国产91精品欧美| 亚洲日本在线观看| 欧美日韩另类国产亚洲欧美一级| 婷婷久久综合九色国产成人| 日韩片之四级片| 国产二区国产一区在线观看| 中文字幕av不卡| 91精品1区2区| 美腿丝袜亚洲一区| 国产欧美日韩久久| 91成人网在线| 日本不卡高清视频| 26uuu国产日韩综合| 岛国一区二区在线观看| 亚洲精品免费在线播放| 欧美日本视频在线| 精品中文av资源站在线观看| 中文无字幕一区二区三区| 色欧美片视频在线观看在线视频| 天堂成人国产精品一区| 久久久午夜精品理论片中文字幕| 北岛玲一区二区三区四区 | 制服丝袜激情欧洲亚洲| 激情六月婷婷久久| 亚洲色图20p| 91精品啪在线观看国产60岁| 国产东北露脸精品视频| 一区二区三区不卡视频| 日韩视频免费观看高清完整版在线观看| 精品亚洲国产成人av制服丝袜| 国产欧美精品一区二区三区四区 | 午夜国产不卡在线观看视频| 欧美v亚洲v综合ⅴ国产v| 99视频精品在线| 日本中文字幕不卡| 国产精品久久久久9999吃药| 9191国产精品| 成人深夜在线观看| 天天综合天天综合色| 久久精品人人爽人人爽| 欧美日韩日日夜夜| 国产成人三级在线观看| 亚洲午夜激情网页| 国产性色一区二区| 337p亚洲精品色噜噜噜| av在线不卡免费看| 久久se精品一区精品二区| 亚洲女同ⅹxx女同tv| 久久婷婷国产综合国色天香| 欧美日韩三级视频| 波多野结衣亚洲一区| 精彩视频一区二区三区| 亚洲欧美韩国综合色| 久久综合久久综合久久综合| 欧美日韩国产美女| 色综合欧美在线| 国产成人精品1024| 另类小说图片综合网| 亚洲一区二区三区四区的| 国产女人aaa级久久久级| 欧美精品123区| 色视频欧美一区二区三区| 成人综合婷婷国产精品久久免费| 日韩精品亚洲一区| 亚洲精品写真福利| 亚洲国产精品国自产拍av| 精品国产乱码久久久久久免费 | 天堂一区二区在线| 亚洲欧美激情一区二区| 国产精品无码永久免费888| 日韩三区在线观看| 欧美精选一区二区| 欧美性高清videossexo| 91最新地址在线播放| 成人在线一区二区三区| 黄一区二区三区| 久久精品国产久精国产爱| 午夜精品久久久久久久| 一区二区高清视频在线观看| 亚洲视频香蕉人妖| 久久久99久久精品欧美| 精品国产区一区| 日韩午夜激情电影| 91精品在线观看入口| 欧美久久久久久蜜桃| 欧美日韩你懂得| 欧美三级电影在线观看| 欧美亚州韩日在线看免费版国语版| 91视频免费看| av午夜一区麻豆| 97久久人人超碰| 99精品久久99久久久久| 91色九色蝌蚪| 色综合天天综合网天天狠天天| 成人性生交大合| 成人免费va视频| 国产成人免费视频网站| 粉嫩av亚洲一区二区图片| 国产成人免费在线观看| 丁香婷婷综合激情五月色| 国产高清久久久久| 丁香婷婷综合色啪| 91网站视频在线观看| 91啪亚洲精品| 91国模大尺度私拍在线视频| 欧美性猛交xxxx黑人交| 8x8x8国产精品| 日韩欧美中文字幕公布| 26uuu色噜噜精品一区二区| 久久视频一区二区| 国产精品免费看片| 一区二区三区毛片| 亚洲成人高清在线| 青椒成人免费视频| 精品一区二区在线看| 国产成人免费视频网站高清观看视频 | 日韩一区二区三区在线观看| 精品国产自在久精品国产| 欧美激情一区二区三区在线| 国产精品灌醉下药二区| 亚洲午夜精品一区二区三区他趣|