| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Postgresql dialect to no longer inject a hardcoded ``::timestamp``
or similar cast into the given expression, as this interfered
with types such as timezone-aware datetimes, but also
does not appear to be at all necessary with modern versions
of psycopg2. Also in 0.8.2.
[ticket:2740]
|
| |
|
|
|
|
|
| |
backslashed quotes would not be escaped correctly when
using the "non native" (i.e. non-psycopg2) means
of translating HSTORE data. Patch courtesy Ryan Kelly.
[ticket:2766]
|
| |
|
|
|
|
| |
Reflection of indexes must preserve the order of columns.
Fixes issue 2767.
|
| |
|
|
| |
Reflection of unique constraints must preserve the order of columns.
|
| | |
|
| |
|
|
| |
- some whitespace
|
| |\
| |
| | |
Support for Postgres range types.
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
http://www.postgresql.org/docs/9.2/interactive/functions-range.html
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
- docs
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
| |
One can use this to emit statements, which can not be
executed within a transaction (e. g. CREATE DATABASE):
from sqlalchemy import create_engine
eng = create_engine('postgresql://test:test@localhost/test')
conn = eng.connect().execution_options(isolation_level='AUTOCOMMIT')
conn.execute('CREATE DATABASE test2;')
Fixes issue #2072.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Inspection API already supports reflection of table
indexes information and those also include unique
constraints (at least for PostgreSQL and MySQL).
But it could be actually useful to distinguish between
indexes and plain unique constraints (though both are
implemented in the same way internally in RDBMS).
This change adds a new method to Inspection API - get_unique_constraints()
and implements it for SQLite, PostgreSQL and MySQL dialects.
|
| |\
| |
| |
| |
| |
| |
| | |
Conflicts:
lib/sqlalchemy/dialects/postgresql/hstore.py
lib/sqlalchemy/util/__init__.py
lib/sqlalchemy/util/compat.py
|
| | |
| |
| |
| | |
- fix test
|
| | | |
|
| | |
| |
| |
| |
| | |
add unicode encoding for py2k for the non-native hstore, pullreq for
native psycopg2 support coming....
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
- went through examples/ and cleaned out excess list() calls
|
| | | |
|
| | |
| |
| |
| | |
- fix test
|
| | | |
|
| |/
|
|
|
| |
add unicode encoding for py2k for the non-native hstore, pullreq for
native psycopg2 support coming....
|
| |
|
|
| |
since Py3K strings have __iter__
|
| |
|
|
| |
false positives for SQL statements containing certain text
|
| |
|
|
|
|
|
|
| |
to check for all the various "disconnect" messages within
the full exception hierarchy. Specifically the
"closed the connection unexpectedly" message has now been
seen in at least three different exception types.
[ticket:2712]
|
| | |
|
| |
|
|
| |
unconditonally instead so that it works in all cases.
|
| |
|
|
|
|
|
|
|
|
| |
input types of sets, generators, etc. but only when a dimension
is specified for the ARRAY; otherwise, the dialect
needs to peek inside of "arr[0]" to guess how many
dimensions are in use. If this occurs with a non
list/tuple type, the error message is now informative
and directs to specify a dimension for the ARRAY.
[ticket:2681]
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
function syntax, renders as "SUBSTRING(x FROM y FOR z)"
when regular ``func.substring()`` is used.
Also in 0.7.11. Courtesy Gunnlaugur Por Briem.
[ticket:2676]
|
| |
|
|
|
|
| |
- other cleanup
- don't need compat.decimal, that approach never panned out. hopefully
outside libs aren't pulling it in, they shouldn't be
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
functions, in addition to straight columns. Common modifiers
include using ``somecolumn.desc()`` for a descending index and
``func.lower(somecolumn)`` for a case-insensitive index, depending on the
capabilities of the target backend.
[ticket:695]
|
| |
|
|
|
| |
inside of an :func:`.expression.insert` construct would produce an
error regarding a parameter issue in the ``self_group()`` method.
|
| | |
|
| |
|
|
|
| |
an INSERT that's used in executemany() as opposed to one which has a VALUES
clause with multiple entries.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some databases support this syntax for inserts:
INSERT INTO table (id, name) VALUES
('v1', 'v2'),
('v3', 'v4');
which greatly increases INSERT speed.
It is now possible to pass a list of lists/tuples/dictionaries as
the values param to the Insert construct. We convert it to a flat
dictionary so we can continue using bind params. The above query
will be converted to:
INSERT INTO table (id, name) VALUES
(:id, :name),
(:id0, :name0);
Currently only supported on postgresql, mysql and sqlite.
|
| | |
|
| | |
|
| | |
|
| | |
|