8 #ifndef SOCI_ORACLE_H_INCLUDED 9 #define SOCI_ORACLE_H_INCLUDED 13 # ifdef SOCI_ORACLE_SOURCE 14 # define SOCI_ORACLE_DECL __declspec(dllexport) 16 # define SOCI_ORACLE_DECL __declspec(dllimport) 17 # endif // SOCI_ORACLE_SOURCE 22 #ifndef SOCI_ORACLE_DECL 23 # define SOCI_ORACLE_DECL 31 #pragma warning(disable:4512 4511) 51 : statement_(st), defnp_(NULL), indOCIHolder_(0),
52 data_(NULL), buf_(NULL) {}
54 virtual void define_by_pos(
int &position,
57 virtual void pre_fetch();
58 virtual void post_fetch(
bool gotData,
bool calledFromFetch,
61 virtual void clean_up();
77 : statement_(st), defnp_(NULL), indOCIHolders_(NULL),
78 data_(NULL), buf_(NULL) {}
80 virtual void define_by_pos(
int &position,
83 virtual void pre_fetch();
84 virtual void post_fetch(
bool gotData,
indicator *ind);
86 virtual void resize(std::size_t sz);
87 virtual std::size_t size();
89 virtual void clean_up();
93 void prepare_indicators(std::size_t size);
112 : statement_(st), bindp_(NULL), indOCIHolder_(0),
113 data_(NULL), buf_(NULL) {}
115 virtual void bind_by_pos(
int &position,
117 virtual void bind_by_name(std::string
const &name,
121 void prepare_for_bind(
void *&data, sb4 &size, ub2 &oracleType,
bool readOnly);
123 virtual void pre_use(
indicator const *ind);
124 virtual void post_use(
bool gotData,
indicator *ind);
126 virtual void clean_up();
141 : statement_(st), bindp_(NULL), indOCIHolders_(NULL),
142 data_(NULL), buf_(NULL) {}
144 virtual void bind_by_pos(
int &position,
146 virtual void bind_by_name(std::string
const &name,
150 void prepare_for_bind(
void *&data, sb4 &size, ub2 &oracleType);
154 void prepare_indicators(std::size_t size);
156 virtual void pre_use(
indicator const *ind);
158 virtual std::size_t size();
160 virtual void clean_up();
181 virtual void alloc();
182 virtual void clean_up();
183 virtual void prepare(std::string
const &query,
189 virtual long long get_affected_rows();
190 virtual int get_number_of_rows();
192 virtual std::string rewrite_for_procedure_call(std::string
const &query);
194 virtual int prepare_for_describe();
195 virtual void describe_column(
int colNum,
data_type &dtype,
196 std::string &columnName);
199 std::size_t column_size(
int position);
230 virtual std::size_t get_len();
231 virtual std::size_t read(std::size_t offset,
char *buf,
233 virtual std::size_t write(std::size_t offset,
char const *buf,
234 std::size_t toWrite);
235 virtual std::size_t append(
char const *buf, std::size_t toWrite);
236 virtual void trim(std::size_t newLen);
246 std::string
const & userName,
247 std::string
const & password,
249 bool decimals_as_strings =
false);
253 virtual void begin();
254 virtual void commit();
255 virtual void rollback();
details::exchange_type type_
SOCI_ORACLE_DECL oracle_backend_factory const oracle
std::vector< sb2 > indOCIHolderVec_
details::exchange_type type_
details::exchange_type type_
SOCI_ORACLE_DECL backend_factory const * factory_oracle()
oracle_statement_backend & statement_
virtual std::string get_backend_name() const
details::exchange_type type_
oracle_vector_into_type_backend(oracle_statement_backend &st)
std::vector< sb2 > indOCIHolderVec_
bool decimals_as_strings_
oracle_standard_use_type_backend(oracle_statement_backend &st)
oracle_session_backend & session_
std::vector< ub2 > sizes_
oracle_statement_backend & statement_
oracle_vector_use_type_backend(oracle_statement_backend &st)
bool get_option_decimals_as_strings()
oracle_session_backend & session_
std::vector< ub2 > rCodes_
SOCI_ORACLE_DECL void register_factory_oracle()
std::vector< ISM::CombinatorialTrainerParameters > parameters
std::vector< ub2 > sizes_
oracle_standard_into_type_backend(oracle_statement_backend &st)
oracle_statement_backend & statement_
oracle_statement_backend & statement_