summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects
Commit message (Collapse)AuthorAgeFilesLines
* spelling: Postgresql -> PostgreSQLVille Skyttä2016-10-089-77/+77
|
* Catch DBAPIError instead of ProgrammingError for pyodbc failMike Bayer2016-10-071-2/+3
| | | | | Change-Id: Ide9e916d02fbbef549aa2838d1402c2b091e701d Fixes: #3820
* Use schema_name() for SQL Server default schemaMike Bayer2016-10-041-10/+6
| | | | | | | | | | | | Changed the query used to get "default schema name", from one that queries the database principals table to using the "schema_name()" function, as issues have been reported that the former system was unavailable on the Azure Data Warehouse edition. It is hoped that this will finally work across all SQL Server versions and authentication styles. Change-Id: Ic11bd4162c0d6a60432ae44876e86512703c1f81 Fixes: #3810
* Use SQL Server SERVERPROPERTY for version info w/ pyodbcMike Bayer2016-10-042-12/+24
| | | | | | | | | Updated the server version info scheme for pyodbc to use SQL Server SERVERPROPERTY(), rather than relying upon pyodbc.SQL_DBMS_VER, which continues to be unreliable particularly with FreeTDS. Change-Id: I4ff49ae13c8ff51bd764980131d41c18d73d87ce Fixes: #3814
* Add "eager_parenthesis" late-compilation rule, use w/ PG JSON/HSTOREMike Bayer2016-10-013-13/+31
| | | | | | | | | | | | Added compiler-level flags used by Postgresql to place additional parenthesis than would normally be generated by precedence rules around operations involving JSON, HSTORE indexing operators as well as within their operands since it has been observed that Postgresql's precedence rules for at least the HSTORE indexing operator is not consistent between 9.4 and 9.5. Fixes: #3806 Change-Id: I5899677b330595264543b055abd54f3c76bfabf2
* Enable include_table for ON CONFLICT whereclausesMike Bayer2016-09-281-2/+1
| | | | | | | | | Fixed issue in new PG "on conflict" construct where columns including those of the "excluded" namespace would not be table-qualified in the WHERE clauses in the statement. Change-Id: Idfefc93e7e7b0d84805e23d5436d822d606f6a0a Fixes: #3807
* Add exclude_tablespaces argument to OracleDavid Fraser2016-09-201-12/+47
| | | | | | | | | Allows the SYSTEM and SYSAUX tablespaces to be only conditionally omitted when doing get_table_names() and get_temp_table_names(). Change-Id: Ie6995873f05163f2ce473a6a9c2d958a30681b44 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/292
* Add "message 20017" (unexpected EOF from the server) to mssql.Ken Robbins2016-09-191-0/+1
| | | | | | Fixes: #3791 Change-Id: I0dade4fe0ecbb53b4a66881594f362986ba73ae8 Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/89
* Fix typo in commentkeeyip chan2016-09-111-2/+2
|
* Support all MySQL/Connector int/bool argumentsMike Bayer2016-09-011-0/+14
| | | | | | | | | | | Added support for parsing MySQL/Connector boolean and integer arguments within the URL query string: connection_timeout, connect_timeout, pool_size, get_warnings, raise_on_warnings, raw, consume_results, ssl_verify_cert, force_ipv6, pool_reset_session, compress, allow_local_infile, use_pure. Change-Id: I2a1a17d13d47d56871bff32e94fdbed8bc003ad7 Fixes: #3787
* Fix table reference in PostgreSQL documentationpr/303Michael Williamson2016-08-281-1/+1
|
* Spelling fixespr/299Ville Skyttä2016-08-084-5/+5
|
* Build string/int processors for JSONIndexType, JSONPathTypeMike Bayer2016-08-043-19/+61
| | | | | | | | | | | | Fixed regression in JSON datatypes where the "literal processor" for a JSON index value, that needs to take effect for example within DDL, would not be invoked for the value. The native String and Integer datatypes are now called upon from within the JSONIndexType and JSONPathType. This is applied to the generic, Postgresql, and MySQL JSON types. Change-Id: Ifa5f2acfeee57a79d01d7fc85d265a37bd27c716 Fixes: #3765
* Propagate kwargs to all MySQL CAST pathsMike Bayer2016-08-041-4/+4
| | | | | Change-Id: I23a6abb26bbbe3d118887d043ce761fc4572d8d2 Fixes: #3766
* - Document how SQL Server does MAX with VARCHAR, NVARCHARMike Bayer2016-07-271-0/+20
| | | | | | Fixes #3760 Change-Id: I0613eb66bfdc9d7118688c74e29c8da322c3b4db
* - MySQL's JSON shared implementation completely w/ sqltypes.JSON;Mike Bayer2016-07-241-36/+1
| | | | | | | | | | this must have been an oversight. Leave mysql.JSON in place still as we might need to add things to it. - CAST(json, String) still confusing MySQL drivers even mysqlclient. Since here we're checking for the raw form of the JSON and not a typical round trip, add a force for unicode Change-Id: I727f4526a01a0875037cf0dede45cd074da5205a
* Adapt "FOR UPDATE OF" with Oracle limit/offsetMike Bayer2016-07-051-3/+22
| | | | | | | | | | This modifies the Oracle ROWNUM limit/offset approach to accommodate for the "OF" clause in a "FOR UPDATE" phrase. The column expressions must be added to the selected subquery if necessary and adapted on the outside. Change-Id: Ia71b5fc4df6d326e73863f8ae9f96e8f1a5acfc1 Fixes: #3741
* Repair PG BIGSERIAL w/ TypeDecorator, VariantMike Bayer2016-07-041-0/+3
| | | | | | | | | | | | | Some of the dialect impl memoization for TypeDecorator necessarily keeps the top-level TypeDecorator type around, since a user-defined type will have bind and result set processing behavior. For both TypeDecorator and Variant, PG dialect needs to ensure it's looking at the SQLAlchemy type to check for SmallInteger / BigInteger. Fixes: 3739 Change-Id: I2d45fb997f17c6272d6bb826a77d2dba665adae7 (cherry picked from commit 421fa6b8bf9f0c3c5041579c89ec405ce0f5e0b0)
* Disable Enum string validation by defaultMike Bayer2016-06-201-1/+3
| | | | | | | | | | | | | | Rolled back the validation rules a bit in :class:`.Enum` to allow unknown string values to pass through, unless the flag ``validate_string=True`` is passed to the Enum; any other kind of object is still of course rejected. While the immediate use is to allow comparisons to enums with LIKE, the fact that this use exists indicates there may be more unknown-string-comparsion use cases than we expected, which hints that perhaps there are some unknown string-INSERT cases too. Change-Id: I7d1d79b374a7d47966d410998f77cd19294ab7b0 Fixes: #3725
* Add ON CONFLICT support for PostgresqlRobin Thomas2016-06-143-10/+476
| | | | | | | Fixes: #3529 Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com> Change-Id: Ie3bf6ad70d9be9f0e44938830e922db03573991a Pull-request: https://github.com/zzzeek/sqlalchemy/pull/258
* Support `postgresql_concurrently` on index dropping.Iuri de Silvio2016-06-081-5/+36
| | | | | | | | | | | | Also adds version detection so that DROP INDEX CONCURRENTLY only renders if the Postgresql version is 9.2 or higher; for CREATE INDEX CONCURRENTLY, version detection is added to allow the phrase to omit if the Postgresql version is less than 8.2. Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com> Change-Id: I597287e0ebbbe256c957a3579b58ace6848ab4f4 Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/84
* Merge "Support normal /materialized views in PG separately"mike bayer2016-06-081-2/+36
|\
| * Support normal /materialized views in PG separatelySebastian Bank2016-06-061-2/+36
| | | | | | | | | | | | Fixes: #3588 Change-Id: Ifbfcab67375f289ddb5c4522f4b803cb8b7c34de Pull-request: https://github.com/zzzeek/sqlalchemy/pull/250
* | Add 'FOR NO KEY UPDATE' / 'FOR KEY SHARE' support for PostgresqlSergey Skopin2016-06-081-1/+6
|/ | | | | | | | Adds ``key_share=True`` for with_for_update(). Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com> Change-Id: I74e0c3fcbc023e1dc98a1fa0c7db67b4c3693a31 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/279
* Merge "Refine PG inspection methods"mike bayer2016-06-061-94/+34
|\
| * Refine PG inspection methodsSebastian Bank2016-06-061-94/+34
| | | | | | | | | | | | | | | | | | | | This refines get_schema_names(), get_table_names(), get_view_defintion(), _get_foreign_table_names(), and get_view_names() to use better queries and remove unnecessary explicit encoding logic. Pull-request: https://github.com/zzzeek/sqlalchemy/pull/250 Change-Id: I7e87b29c34b97b37f21bbc83392b2274af4db0ab
* | Merge "Add IS (NOT) DISTINCT FROM operators"mike bayer2016-06-061-0/+8
|\ \
| * | Add IS (NOT) DISTINCT FROM operatorsSebastian Bank2016-06-061-0/+8
| |/ | | | | | | | | | | | | | | | | | | | | None / True / False render as literals. For SQLite, "IS" is used as SQLite lacks "IS DISTINCT FROM" but its "IS" operator acts this way for NULL. Doctext-author: Mike Bayer <mike_mp@zzzcomputing.com> Change-Id: I9227b81f7207b42627a0349d14d40b46aa756cce Pull-request: https://github.com/zzzeek/sqlalchemy/pull/248
* | Merge "Replace some uses of re.sub with str.lstrip/replace"mike bayer2016-06-063-3/+3
|\ \ | |/ |/|
| * Replace some uses of re.sub with str.lstrip/replaceVille Skyttä2016-06-063-3/+3
| | | | | | | | | | Change-Id: I98cd60b6830ee94e39ba9307523a9e8fb93bf4e8 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/280
* | Allow creating explicit non-clustered keys and indexes MS SQL.Saulius Žemaitaitis2016-06-061-12/+39
|/ | | | | | | | | | mssql_clustered=False on Index, UniqueConstraint, PrimaryKeyConstraint now renders NONCLUSTERED. The default of mssql_clustered is now None. Co-Authored-By: mike bayer <mike_mp@zzzcomputing.com> Change-Id: Id6b8d840e355be8f8fa72360cb4b6d2617ba72cf Pull-request: https://github.com/zzzeek/sqlalchemy/pull/252
* - further adjustment to accomodate for the "ON" in "NO ACTION"Mike Bayer2016-06-031-1/+2
| | | | Change-Id: I734e4aec3701d7cf17813b561a1418cfeff1d473
* Ensure "options" present for unnamed / unlocatable FKMike Bayer2016-06-031-2/+2
| | | | | | | Also ensure the regular expression and subsequent matching is case insensitive, add more tests Change-Id: Ie4aa971dcbffca94e78965e22982478eccbf8597
* Ensure 'options' is always present in foreign key infoMike Bayer2016-06-031-2/+1
| | | | | | | | | Regarding 0e88bcc30ed49193b91f248123f526fa30007f22, "options" needs to be present as a key in the dictionary because Alembic uses this as a guide to know if the backend is even capable of reporting on foreign key options. Change-Id: I271090f75088cfeec24315a878060f9b8a265335
* Merge "Add SKIP LOCKED support for Postgresql, Oracle"mike bayer2016-06-032-0/+4
|\
| * Add SKIP LOCKED support for Postgresql, OracleJack Zhou2016-06-022-0/+4
| | | | | | | | | | | | | | | | This adds `SELECT ... FOR UPDATE SKIP LOCKED`/ `SELECT ... FOR SHARE SKIP LOCKED` rendering. Change-Id: Id1dc4f1cafc1de23f397a6f73d54ab2c58d5910d Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/86
* | Reflect ON DELETE and ON UPDATE for SQLite foreign keysMichal Petrucha2016-06-021-4/+15
|/ | | | | | Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com> Change-Id: Icd77ddbf851b1950f767022d67c8142b1b3c50f3 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/244
* Add postgresql_tablespace option on Indexbeenje2016-06-011-1/+19
| | | | | | | | | This complements the same-named parameter available on Table. Fixes: #3720 Change-Id: I56e081e2a551f37c3f392ca4b301c9ef82b94e59 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/233
* Implemented CHECK constraint reflection for SQLite and PostgreSQLAlex Grönholm2016-06-012-0/+51
| | | | | | Co-Authored-By: Mike Bayer <mike_mp@zzzcomputing.com> Change-Id: Ie6cf2d2958d1c567324db9e08fef2d3186e97350 Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/80
* Use new mxODBC 3.3.4 varbinary null symbolSheila Allen2016-05-311-0/+27
| | | | | | | | | Use new mxODBC 3.3.4 varbinary null symbol with VARBINARY data types when value is None(based on similar change to pyodbc). Fix a test to pass on mxODBC starting w 3.3.3 version Change-Id: Id703ecb51ebc5db149c81fef124f673433606c7f Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/58
* Fix TypeError during cx_Oracle connectionJohn Vandenberg2016-05-161-3/+7
| | | | | | | | | | | cx_Oracle connection parameters user, password and dsn must be either a string or NULL. When they are passed a Python None object, "TypeError: expecting string, unicode or buffer object" is raised. Fixes: #3705 Change-Id: I8da5d8a227ca12c9bf17a6127460e413841951fb Pull-request: https://github.com/zzzeek/sqlalchemy/pull/271
* Handle `SSL error: decryption failed or bad record mac`Iuri de Silvio2016-05-131-0/+1
| | | | | | | | | This is another psycopg2 error message representing an unusable connection. Fixes #3715 Change-Id: Ida6e212963e9c7336bf2944e7ef928619ac3a0e7 Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/85
* Fix label referencing in SQL Server OFFSET logicMike Bayer2016-05-101-1/+5
| | | | | | | | | | Fixed bug where by ROW_NUMBER OVER clause applied for OFFSET selects in SQL Server would inappropriately substitute a plain column from the local statement that overlaps with a label name used by the ORDER BY criteria of the statement. Change-Id: Ic2500c886cbfc83a1ad5a2681783f008b9f23838 Fixes: #3711
* Fix pymssql sample URLMike Bayer2016-04-271-1/+1
| | | | | | | | A slash is required before building out the query string portion. Change-Id: Ie97fd3d07047d78e17cbaffed4ff54960a2b956e Fixes: #3696 (cherry picked from commit 83a9e6e1fac276090e60136aa4e9234ae23bc25a)
* - Add support for PostgreSQL with PyGreSQLChristoph Zwerschke2016-04-153-2/+248
| | | | | Change-Id: I040b75ff3b4110e7e8b26442a4eb226ba8c26715 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/234
* Merge remote-tracking branch 'origin/pr/230'Mike Bayer2016-03-301-1/+9
|\
| * same logic, but without the inner functionpr/230Diana Clarke2016-01-281-4/+3
| |
| * sqlite: reflect primary key constraint names, fixes #3629Diana Clarke2016-01-271-1/+10
| |
* | - Added :meth:`.Select.lateral` and related constructs to allowMike Bayer2016-03-291-0/+1
| | | | | | | | | | for the SQL standard LATERAL keyword, currently only supported by Postgresql. fixes #2857
* | - Added support for rendering "FULL OUTER JOIN" to both Core and ORM.Mike Bayer2016-03-281-1/+8
| | | | | | | | Pull request courtesy Stefan Urbanek. fixes #1957