class MSExecutionContext(default.DefaultExecutionContext):
Known subclasses: sqlalchemy.dialects.mssql.pyodbc.MSExecutionContext_pyodbc
Undocumented
Method | _opt_encode |
Undocumented |
Method | fire_sequence |
Undocumented |
Method | get_insert_default |
Undocumented |
Method | get_lastrowid |
return self.cursor.lastrowid, or equivalent, after an INSERT. |
Method | get_result_cursor_strategy |
Return a result cursor strategy for a given result object. |
Method | handle_dbapi_exception |
Receive a DBAPI exception which occurred upon execute, result fetch, etc. |
Method | post_exec |
Disable IDENTITY_INSERT if enabled. |
Method | pre_exec |
Activate IDENTITY_INSERT if needed. |
Class Variable | _result_strategy |
Undocumented |
Instance Variable | _enable_identity_insert |
Undocumented |
Instance Variable | _lastrowid |
Undocumented |
Instance Variable | _rowcount |
Undocumented |
Instance Variable | _select_lastrowid |
Undocumented |
Property | rowcount |
Undocumented |
Inherited from DefaultExecutionContext
:
Method | create_cursor |
Return a new cursor generated from this ExecutionContext's connection. |
Method | get_current_parameters |
Return a dictionary of parameters applied to the current row. |
Method | get_out_parameter_values |
Return a sequence of OUT parameter values from a cursor. |
Method | get_result_processor |
Return a 'result processor' for a given type as present in cursor.description. |
Method | lastrow_has_defaults |
Return True if the last INSERT or UPDATE row contained inlined or database-side defaults. |
Method | should_autocommit_text |
Parse the given textual statement and return True if it refers to a "committable" statement |
Instance Variable | current_parameters |
A dictionary of parameters applied to the current row. |
Class Method | _init_compiled |
Initialize execution context for a Compiled construct. |
Class Method | _init_ddl |
Initialize execution context for a DDLElement construct. |
Class Method | _init_default |
Initialize execution context for a ColumnDefault construct. |
Class Method | _init_statement |
Initialize execution context for a string SQL statement. |
Method | _exec_default |
Undocumented |
Method | _exec_default_clause_element |
Undocumented |
Method | _execute_scalar |
Execute a string statement on the current cursor, returning a scalar result. |
Method | _get_cache_stats |
Undocumented |
Method | _process_executemany_defaults |
Undocumented |
Method | _process_executesingle_defaults |
Undocumented |
Method | _set_input_sizes |
Given a cursor and ClauseParameters, call the appropriate style of setinputsizes() on the cursor, using DB-API types from the bind parameter's TypeEngine objects. |
Method | _setup_dml_or_text_result |
Undocumented |
Method | _setup_ins_pk_from_empty |
Undocumented |
Method | _setup_ins_pk_from_implicit_returning |
Undocumented |
Method | _setup_ins_pk_from_lastrowid |
Undocumented |
Method | _setup_out_parameters |
Undocumented |
Method | _setup_result_proxy |
Undocumented |
Method | _use_server_side_cursor |
Undocumented |
Method | create_default_cursor |
Undocumented |
Method | create_server_side_cursor |
Undocumented |
Method | get_update_default |
Undocumented |
Method | supports_sane_multi_rowcount |
Undocumented |
Method | supports_sane_rowcount |
Undocumented |
Class Variable | _translate_colname |
Undocumented |
Class Variable | cache_stats |
Undocumented |
Class Variable | exclude_set_input_sizes |
Undocumented |
Class Variable | include_set_input_sizes |
Undocumented |
Instance Variable | _dbapi_connection |
Undocumented |
Instance Variable | _expanded_parameters |
Undocumented |
Instance Variable | _is_explicit_returning |
Undocumented |
Instance Variable | _is_future_result |
Undocumented |
Instance Variable | _is_implicit_returning |
Undocumented |
Instance Variable | _is_server_side |
Undocumented |
Instance Variable | _soft_closed |
Undocumented |
Instance Variable | cache_hit |
Undocumented |
Instance Variable | compiled |
Undocumented |
Instance Variable | compiled_parameters |
Undocumented |
Instance Variable | cursor |
Undocumented |
Instance Variable | dialect |
Undocumented |
Instance Variable | executemany |
Undocumented |
Instance Variable | execution_options |
Undocumented |
Instance Variable | extracted_parameters |
Undocumented |
Instance Variable | invoked_statement |
Undocumented |
Instance Variable | is_crud |
Undocumented |
Instance Variable | is_text |
Undocumented |
Instance Variable | isddl |
Undocumented |
Instance Variable | isdelete |
Undocumented |
Instance Variable | isinsert |
Undocumented |
Instance Variable | isupdate |
Undocumented |
Instance Variable | parameters |
Undocumented |
Instance Variable | result_column_struct |
Undocumented |
Instance Variable | returned_default_rows |
Undocumented |
Instance Variable | root_connection |
Undocumented |
Instance Variable | statement |
Undocumented |
Instance Variable | unicode_statement |
Undocumented |
Property | connection |
Undocumented |
Property | engine |
Undocumented |
Property | identifier_preparer |
Undocumented |
Property | inserted_primary_key_rows |
Undocumented |
Property | no_parameters |
Undocumented |
Property | postfetch_cols |
Undocumented |
Property | prefetch_cols |
Undocumented |
Property | returning_cols |
Undocumented |
Property | should_autocommit |
Undocumented |
Inherited from ExecutionContext
(via DefaultExecutionContext
):
Method | get_rowcount |
Return the DBAPI cursor.rowcount value, or in some cases an interpreted value. |
return self.cursor.lastrowid, or equivalent, after an INSERT.
This may involve calling special cursor functions, issuing a new SELECT on the cursor (or a new one), or returning a stored value that was calculated within post_exec().
This function will only be called for dialects which support "implicit" primary key generation, keep preexecute_autoincrement_sequences set to False, and when no explicit id value was bound to the statement.
The function is called once for an INSERT statement that would need to
return the last inserted primary key for those dialects that make use
of the lastrowid concept. In these cases, it is called directly after
.ExecutionContext.post_exec
.
Return a result cursor strategy for a given result object.
This method is implemented by the .DefaultDialect
and is
only needed by implementing dialects in the case where some special
steps regarding the cursor must be taken, such as manufacturing
fake results from some other element of the cursor, or pre-buffering
the cursor's results.
A simplified version of the default implementation is:
from sqlalchemy.engine.result import DefaultCursorFetchStrategy class MyExecutionContext(DefaultExecutionContext): def get_result_cursor_strategy(self, result): return DefaultCursorFetchStrategy.create(result)
Above, the .DefaultCursorFetchStrategy
will be applied
to the result object. For results that are pre-buffered from a
cursor that might be closed, an implementation might be:
from sqlalchemy.engine.result import ( FullyBufferedCursorFetchStrategy ) class MyExecutionContext(DefaultExecutionContext): _pre_buffered_result = None def pre_exec(self): if self.special_condition_prebuffer_cursor(): self._pre_buffered_result = ( self.cursor.description, self.cursor.fetchall() ) def get_result_cursor_strategy(self, result): if self._pre_buffered_result: description, cursor_buffer = self._pre_buffered_result return ( FullyBufferedCursorFetchStrategy. create_from_buffer( result, description, cursor_buffer ) ) else: return DefaultCursorFetchStrategy.create(result)
This method replaces the previous not-quite-documented get_result_proxy() method.
.ExecutionContext
via the
.ExecutionContext.get_result_cursor_strategy
method.See Also
.ExecutionContext.get_out_parameter_values