def get_result_proxy(self): """ Get results from a SQL Query :returns: the result from the query """ if self._callproc_result and self._out_parameters: if SA_Version < [0, 8]: result = base.ResultProxy(self) else: result = _result.ResultProxy(self) result.out_parameters = {} for bindparam in self.compiled.binds.values(): if bindparam.isoutparam: name = self.compiled.bind_names[bindparam] result.out_parameters[name] = self._callproc_result[ self.compiled.positiontup.index(name)] return result else: if SA_Version < [0, 8]: result = base.ResultProxy(self) else: result = _result.ResultProxy(self) return result
def get_result_proxy(self): if hasattr(self, 'out_parameters'): if self.compiled_parameters is not None and len( self.compiled_parameters) == 1: for bind, name in self.compiled.bind_names.iteritems(): if name in self.out_parameters: type = bind.type result_processor = type.dialect_impl( self.dialect).result_processor(self.dialect) if result_processor is not None: self.out_parameters[name] = result_processor( self.out_parameters[name].getvalue()) else: self.out_parameters[name] = self.out_parameters[ name].getvalue() else: for k in self.out_parameters: self.out_parameters[k] = self.out_parameters[k].getvalue() if self.cursor.description is not None: for column in self.cursor.description: type_code = column[1] if type_code in self.dialect.ORACLE_BINARY_TYPES: return base.BufferedColumnResultProxy(self) return base.ResultProxy(self)
def get_result_proxy(self): if hasattr(self.compiled, 'returning_parameters'): rrs = None try: try: rrs = self.statement.__statement__.getReturnResultSet() next(rrs) except SQLException as sqle: msg = '%s [SQLCode: %d]' % (sqle.getMessage(), sqle.getErrorCode()) if sqle.getSQLState() is not None: msg += ' [SQLState: %s]' % sqle.getSQLState() raise zxJDBC.Error(msg) else: row = tuple( self.cursor.datahandler.getPyObject( rrs, index, dbtype) for index, dbtype in self.compiled.returning_parameters) return ReturningResultProxy(self, row) finally: if rrs is not None: try: rrs.close() except SQLException: pass self.statement.close() return base.ResultProxy(self)
def get_result_proxy(self): if logger.isEnabledFor(logging.INFO): self._log_notices(self.cursor) if self.__is_server_side: return base.BufferedRowResultProxy(self) else: return base.ResultProxy(self)
def get_result_proxy(self): rp = base.ResultProxy(self) if rp._metadata: # adjust for dotted column names. SQLite # in the case of UNION may store col names as # "tablename.colname" # in cursor.description for colname in rp._metadata.keys: if "." in colname: trunc_col = colname.split(".")[1] rp._metadata._set_keymap_synonym(trunc_col, colname) return rp
def get_result_proxy(self): if self._callproc_result and self._out_parameters: if SA_Version < [0, 8]: result = base.ResultProxy(self) else: result = _result.ResultProxy(self) result.out_parameters = {} for bindparam in list(self.compiled.binds.values()): if bindparam.isoutparam: name = self.compiled.bind_names[bindparam] result.out_parameters[name] = self._callproc_result[ self.compiled.positiontup.index(name) ] return result else: if SA_Version < [0, 8]: result = base.ResultProxy(self) else: result = _result.ResultProxy(self) return result
def get_result_proxy(self): if hasattr(self, 'out_parameters'): if self.compiled_parameters is not None and len(self.compiled_parameters) == 1: for k in self.out_parameters: type = self.compiled_parameters[0].get_type(k) self.out_parameters[k] = type.dialect_impl(self.dialect).result_processor(self.dialect)(self.out_parameters[k].getvalue()) else: for k in self.out_parameters: self.out_parameters[k] = self.out_parameters[k].getvalue() if self.cursor.description is not None: for column in self.cursor.description: type_code = column[1] if type_code in self.dialect.ORACLE_BINARY_TYPES: return base.BufferedColumnResultProxy(self) return base.ResultProxy(self)
def get_result_proxy(self): if hasattr(self, 'out_parameters') and self.compiled.returning: returning_params = dict( (k, v.getvalue()) for k, v in list(self.out_parameters.items())) return ReturningResultProxy(self, returning_params) result = None if self.cursor.description is not None: for column in self.cursor.description: type_code = column[1] if type_code in self.dialect._cx_oracle_binary_types: result = base.BufferedColumnResultProxy(self) if result is None: result = base.ResultProxy(self) if hasattr(self, 'out_parameters'): if self.compiled_parameters is not None and \ len(self.compiled_parameters) == 1: result.out_parameters = out_parameters = {} for bind, name in list(self.compiled.bind_names.items()): if name in self.out_parameters: type = bind.type impl_type = type.dialect_impl(self.dialect) dbapi_type = impl_type.get_dbapi_type( self.dialect.dbapi) result_processor = impl_type.\ result_processor(self.dialect, dbapi_type) if result_processor is not None: out_parameters[name] = \ result_processor(self.out_parameters[name].getvalue()) else: out_parameters[name] = self.out_parameters[ name].getvalue() else: result.out_parameters = dict( (k, v.getvalue()) for k, v in list(self.out_parameters.items())) return result
def get_result_proxy(self): return base.ResultProxy(self)
raise zxJDBC.Error(msg) else: row = tuple( self.cursor.datahandler.getPyObject( rrs, index, dbtype) for index, dbtype in self.compiled.returning_parameters) return ReturningResultProxy(self, row) finally: if rrs is not None: try: rrs.close() except SQLException: pass self.statement.close() return base.ResultProxy(self) def create_cursor(self): cursor = self._dbapi_connection.cursor() cursor.datahandler = self.dialect.DataHandler(cursor.datahandler) return cursor class ReturningResultProxy(base.FullyBufferedResultProxy): """ResultProxy backed by the RETURNING ResultSet results.""" def __init__(self, context, returning_row): self._returning_row = returning_row super(ReturningResultProxy, self).__init__(context) def _cursor_description(self): ret = []
def get_result_proxy(self): if self._result_proxy: return self._result_proxy else: return base.ResultProxy(self)
def get_result_proxy(self): if self.cursor.description is not None: for column in self.cursor.description: if column[1] in ('Long Binary', 'Long', 'Long Unicode'): return MaxDBResultProxy(self) return engine_base.ResultProxy(self)
def get_result_proxy(self): if self.__is_server_side: return base.BufferedRowResultProxy(self) else: return base.ResultProxy(self)