// comunicar con Oracle, para indicar la longitud de una variable, o su estado de nulo o
// no nulo.
void InputBind::prepare(dbms::Statement* dbmsStatement, dbms::Connection* connection, const int pos)
-throw(RuntimeException, dbms::DatabaseException) {
+noexcept(false) {
if(a_ociBind != NULL)
return;
// cada base de datos se ocupen toda la complejidad de convertir los datos.
//-------------------------------------------------------------------------------
void InputBind::code() const
-throw(RuntimeException) {
+noexcept(false) {
InputBind* _this = const_cast <InputBind*>(this);
Data& data = _this->getData();
return;
switch(data.getType()) {
+ case Data::Type::String:
+ throw RuntimeException("anna::dbms::oracle::InputBind::code not implemented for Data::Type::String", ANNA_FILE_LOCATION);
+ break;
+ case Data::Type::Integer:
+ throw RuntimeException("anna::dbms::oracle::InputBind::code not implemented for Data::Type::Integer", ANNA_FILE_LOCATION);
+ break;
case Data::Type::Float:
codeFloat(data);
break;
case Data::Type::ShortBlock:
codeShortBlock(data);
break;
+ case Data::Type::LongBlock:
+ throw RuntimeException("anna::dbms::oracle::InputBind::code not implemented for Data::Type::LongBlock", ANNA_FILE_LOCATION);
+ break;
case Data::Type::Date:
case Data::Type::TimeStamp:
* Oracle (tm).
*/
void InputBind::codeFloat(dbms::Data& data) const
-throw() {
+{
dbms::Float& _float = static_cast <dbms::Float&>(data);
InputBind* _this = const_cast <InputBind*>(this);
char* buffer = (char*) _this->a_ofb->getData();
}
void InputBind::codeShortBlock(dbms::Data& data) const
-throw() {
+{
const int length = static_cast <dbms::ShortBlock&>(data).getSize();
InputBind* _this = const_cast <InputBind*>(this);
}
void InputBind::codeDate(dbms::Data& data) const
-throw(RuntimeException, dbms::DatabaseException) {
+noexcept(false) {
dbms::Date& date = static_cast <dbms::Date&>(data);
ub4 fsec(0);