| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to support dialect-level reflection options for all :class:`.Table`
objects reflected.
- Added a new dialect-level argument ``postgresql_ignore_search_path``;
this argument is accepted by both the :class:`.Table` constructor
as well as by the :meth:`.MetaData.reflect` method. When in use
against Postgresql, a foreign-key referenced table which specifies
a remote schema name will retain that schema name even if the name
is present in the ``search_path``; the default behavior since 0.7.3
has been that schemas present in ``search_path`` would not be copied
to reflected :class:`.ForeignKey` objects. The documentation has been
updated to describe in detail the behavior of the ``pg_get_constraintdef()``
function and how the ``postgresql_ignore_search_path`` feature essentially
determines if we will honor the schema qualification reported by
this function or not. [ticket:2922]
|
|
|
|
|
| |
arguments; [ticket:2866]
- add dialect specific kwarg functionality to ForeignKeyConstraint, ForeignKey
|
| |
|
|
|
|
|
| |
compatible with psycopg2's per-connection/cursor approach. add round trip tests for
both native and non-native.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Added import references to JSON class
sqlalchemy/dialects/postgresql/base.py:
- Added visitor method for JSON class
sqlalchemy/dialects/postgresql/pgjson (new):
- JSON class, supports automatic serialization and deserialization of json data, as well as basic json operators.
|
| |
| |
| |
| |
| | |
- changelog
- some doc rearrangement
|
| |
| |
| |
| | |
Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
|
| |
| |
| |
| | |
Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
|
|/
|
|
| |
Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
|
|
|
|
|
| |
quote signs. Note that this is backwards-incompatible for existing
workarounds that manually escape the single quotes. [ticket:2878]
|
|
|
|
|
| |
- get PG dialect to work around "no nonexistent binds" rule for now,
though we might want to reconsider this behavior
|
|
|
|
|
| |
- implement Query with_for_update()
- rework docs and tests
|
|
|
|
|
|
| |
- move out tests, dialect specific out of compiler, compiler tests use new API,
legacy API tests in test_selecatble
- add support for adaptation of ForUpdateArg, alias support in compilers
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
when using the pypostgresql adapter, which returns these values
as lists vs. psycopg2's return type of string.
[ticket:2855]
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
e.g. values that are normally bound parameters but due to context must
be rendered as strings, typically within DDL constructs such as
CHECK constraints and indexes (note that "literal bind" values
become used by DDL as of :ticket:`2742`). A new method
:meth:`.TypeEngine.literal_processor` serves as the base, and
:meth:`.TypeDecorator.process_literal_param` is added to allow wrapping
of a native literal rendering method. [ticket:2838]
- enhance _get_colparams so that we can send flags like literal_binds into
INSERT statements
- add support in PG for inspecting standard_conforming_strings
- add a new series of roundtrip tests based on INSERT of literal plus SELECT
for basic literal rendering in dialect suite
|
| |
| |
| |
| |
| |
| | |
server default for a column; this code was original from
PG system views which truncated the string for readability.
[ticket:2844]
|
| |
| |
| |
| |
| |
| | |
type is used on a primary key autoincrement column, based on server
version detection of Postgresql version 9.2 or greater.
[ticket:2840]
|
| |
| |
| |
| |
| | |
rendered in the column list of a CREATE INDEX statement.
[ticket:2742]
|
|/
|
|
|
|
|
|
| |
mssql to ensure that any literal SQL expression values are
rendered directly as literals, instead of as bound parameters,
within a CREATE INDEX statement. [ticket:2742]
- don't need expression_as_ddl(); literal_binds and include_table
take care of this functionality.
|
|
|
|
| |
- use match with a .* preceding instead of search
|
|
|
|
|
| |
Convert to re.search to eliminate the restriction on only matching the
beginning of the string
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead of relying upon various ``quote=True`` flags being passed around,
these flags are converted into rich string objects with quoting information
included at the point at which they are passed to common schema constructs
like :class:`.Table`, :class:`.Column`, etc. This solves the issue
of various methods that don't correctly honor the "quote" flag such
as :meth:`.Engine.has_table` and related methods. The :class:`.quoted_name`
object is a string subclass that can also be used explicitly if needed;
the object will hold onto the quoting preferences passed and will
also bypass the "name normalization" performed by dialects that
standardize on uppercase symbols, such as Oracle, Firebird and DB2.
The upshot is that the "uppercase" backends can now work with force-quoted
names, such as lowercase-quoted names and new reserved words.
[ticket:2812]
|
|
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
|
| |
Reflection of indexes must preserve the order of columns.
Fixes issue 2767.
|
|
|
|
| |
Reflection of unique constraints must preserve the order of columns.
|
|\
| |
| | |
Support for Postgres range types.
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
| |
- docs
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
- went through examples/ and cleaned out excess list() calls
|
|
|
|
| |
since Py3K strings have __iter__
|
| |
|
|
|
|
| |
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]
|