| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
format
- add an extra doc to MySQLdb
- changelog
|
| |\
| |
| |
| | |
https://bitbucket.org/rob_b/sqlalchemy into pr39
|
| | | |
|
| | | |
|
| |/
|
|
|
|
|
| |
a type that was also a :class:`.TypeDecorator` would fail with
Python's "Cannot create a consistent method resolution order (MRO)"
error, when any kind of SQL comparison expression were used against
an object using this type.
|
| |
|
|
|
|
| |
and extensions into an external library, and also reorganizes most large documentation
pages into many small areas to reduce scrolling and better present the context
into a more fine-grained hierarchy.
|
| |
|
|
|
| |
check for 'utf8_bin' collation, as this fails on MySQL server < 5.0.
fixes #3274
|
| |
|
|
|
|
| |
and regexp parsing of SQL in order to form a complete picture of
constraints + their names. fixes #3244 fixes #3261
- factor various PRAGMA work to be centralized into one call
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
to :meth:`.Session.close`, except also calls
:meth:`.Connection.invalidate`
on all connections, guaranteeing that they will not be returned to
the connection pool. This is useful in situations e.g. dealing
with gevent timeouts when it is not safe to use the connection further,
even for rollbacks.
references #3258
|
| |
|
|
| |
a lot clearer, partial fixes for #3252
|
| | |
|
| |
|
|
|
| |
differently for the case where it is called in an already-invalidated state;
don't call upon self.connection
|
| |
|
|
|
|
|
| |
_handle_dbapi_exception_noconnection() to only invoke in the case
of raw_connection() in the constructor of Connection. in all other
cases the Connection proceeds with _handle_dbapi_exception() including
revalidate.
|
| |
|
|
|
| |
profiling is more predictable
- restore the profiling from before this change
|
| |
|
|
|
|
|
|
|
|
| |
directly into the unit of work's facility for emitting INSERT
and UPDATE statements has been created. When used correctly,
this expert-oriented system can allow ORM-mappings to be used
to generate bulk insert and update statements batched into
executemany groups, allowing the statements to proceed at
speeds that rival direct use of the Core.
fixes #3100
|
| | |
|
| |
|
|
| |
- start writing docs
|
| | |
|
| |
|
|
| |
use events that are local to the engine and to the run and are removed afterwards.
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| | |
VARBINARY(max) for large text/binary types. The MSSQL dialect will
now respect this based on version detection, as well as the new
``deprecate_large_types`` flag.
fixes #3039
|
| | |
| |
| |
| | |
- fix "temporary_tables" requirement
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
to it, so that we say we will do the wrapping just once right here
in _execute_context() / _execute_default(). An adjustment is made
to _handle_dbapi_error() to not assume self.__connection in case
we are already in an invalidated state
further adjustment to
0639c199a547343d62134d2f233225fd2862ec45, 41e7253dee168b8c26c49, #3266
|
| | |
| |
| |
| |
| | |
_handle_dbapi_error(); these are now handled already and the reentrant
call is not needed / breaks things. Adjustment to 41e7253dee168b8c26c49 /
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
:class:`.sqlite.TIME`,
or :class:`.sqlite.DATETIME` types, and given a ``storage_format`` that
only renders numbers, will render the types in DDL as
``DATE_CHAR``, ``TIME_CHAR``, and ``DATETIME_CHAR``, so that despite the
lack of alpha characters in the values, the column will still
deliver the "text affinity". Normally this is not needed, as the
textual values within the default storage formats already
imply text.
fixes #3257
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
take effect in all engine connection use cases, including
when user-custom connect routines are used via the
:paramref:`.create_engine.creator` parameter, as well as when
the :class:`.Connection` encounters a connection error on
revalidation.
fixes #3266
|
| | |
| |
| |
| |
| | |
Patch courtesy Gabor Gombas.
fixes #3127
|
| | |
| |
| |
| |
| |
| |
| | |
to the aliasing syntax, as well as a new CTE feature
:meth:`.CTE.suffix_with`, which is useful for adding in special
Oracle-specific directives to the CTE.
fixes #3220
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
and Pymysql under Python 2. This refers to the SQL statements
themselves, not the parameters, and affects issues such as table
and column names using non-ASCII characters. These drivers both
appear to support Python 2 Unicode objects without issue in modern
versions.
fixes #3121
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
return type is not strictly assumed to be boolean; it now
returns a :class:`.Boolean` subclass called :class:`.MatchType`.
The type will still produce boolean behavior when used in Python
expressions, however the dialect can override its behavior at
result time. In the case of MySQL, while the MATCH operator
is typically used in a boolean context within an expression,
if one actually queries for the value of a match expression, a
floating point value is returned; this value is not compatible
with SQLAlchemy's C-based boolean processor, so MySQL's result-set
behavior now follows that of the :class:`.Float` type.
A new operator object ``notmatch_op`` is also added to better allow
dialects to define the negation of a match operation.
fixes #3263
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
``pg_catalog.pg_table_is_visible(c.oid)``, rather than testing
for an exact schema match, when the schema name is None; this
so that the method will also illustrate that temporary tables
are present. Note that this is a behavioral change, as Postgresql
allows a non-temporary table to silently overwrite an existing
temporary table of the same name, so this changes the behavior
of ``checkfirst`` in that unusual scenario.
fixes #3264
|
| | |\ |
|
| | | |
| | |
| | |
| | |
| | | |
master was updated to call util.raise_from_cause which is better
than what I had
|
| | | |\
| | | |
| | | |
| | | |
| | | | |
Conflicts:
lib/sqlalchemy/testing/exclusions.py
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
_expect_failure was rethrowing the exception without keeping the
traceback, so it was really hard to find out what was actually wrong
|
| | | | |
| | | |
| | | |
| | | |
| | | | |
fdbsql has an optional nested kwarg, which is supported in the
actual code, but not in the testing proxy
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
:class:`.CheckConstraint` associated with a :class:`.Boolean`
or :class:`.Enum` type object would be doubled in the target table.
The copy process now tracks the production of this constraint object
as local to a type object.
fixes #3260
|
| | | | | |
|
| | |\ \ \
| | | | |
| | | | |
| | | | | |
https://bitbucket.org/jvanasco/sqlalchemy-alt into pr32
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
(https://bitbucket.org/zzzeek/sqlalchemy/issue/3217/make-join-more-standard-or-improve-error)
$ python setup.py develop
$ pip install nose
$ pip install mock
$ ./sqla_nose.py test.orm.test_joins
.....................................................................................................
----------------------------------------------------------------------
Ran 101 tests in 1.222s
OK
$ ./sqla_nose.py test.orm
......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................S......................................................................................................................................................................................................................................................................................................................S.......................................................................................................................................................................................................................................................................................................................................................S.......S..S.SSS.SS...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................S................................S..S........................S...........................................................................................SSS.S.........SSSSSSSS......SSSSSSSSS........SS...SS...............S.............................S..............................................................SS..SS..............................................................................................................S.
----------------------------------------------------------------------
Ran 3103 tests in 82.607s
OK (SKIP=46)
|
| | |\ \ \ \
| | | | | |
| | | | | | |
added docs to clarify that sql statement is already in a dialect
|
| | | |/ / / |
|
| | | | | |
| | | | |
| | | | |
| | | | | |
trap for self.table that behaves differently in py3k
|