summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects
Commit message (Collapse)AuthorAgeFilesLines
* Fix many typos throughout the codebasepr/85Alex Gaynor2014-04-267-13/+13
| | | | Found using: https://github.com/intgr/topy
* - Revised the query used to determine the current default schema nameMike Bayer2014-04-171-14/+8
| | | | | | | to use the ``database_principal_id()`` function in conjunction with the ``sys.database_principals`` view so that we can determine the default schema independently of the type of login in progress (e.g., SQL Server, Windows, etc). fixes #3025
* added an SSL related connection errorantti_haapala2014-04-111-1/+3
|
* - Fixed ORM bug where changing the primary key of an object, then markingMike Bayer2014-03-281-1/+4
| | | | | | | | | | | | | it for DELETE would fail to target the correct row for DELETE. Then to compound matters, basic "number of rows matched" checks were not being performed. Both issues are fixed, however note that the "rows matched" check requires so-called "sane multi-row count" functionality; the DBAPI's executemany() method must count up the rows matched by individual statements and SQLAlchemy's dialect must mark this feature as supported, currently applies to some mysql dialects, psycopg2, sqlite only. fixes #3006 - Enabled "sane multi-row count" checking for the psycopg2 DBAPI, as this seems to be supported as of psycopg2 2.0.9.
* - Tweaked the settings for mysql-connector-python; in Py2K, theMike Bayer2014-03-271-1/+4
| | | | | | | | | | | "supports unicode statements" flag is now False, so that SQLAlchemy will encode the *SQL string* (note: *not* the parameters) to bytes before sending to the database. This seems to allow all unicode-related tests to pass for mysql-connector, including those that use non-ascii table/column names, as well as some tests for the TEXT type using unicode under cursor.executemany(). - other mysql-connector fixes; latest version seems to do better on function call counts
* - Fixed regression caused by release 0.8.5 / 0.9.3's compatibilityMike Bayer2014-03-251-1/+4
| | | | | | | | | enhancements where index reflection on Postgresql versions specific to only the 8.1, 8.2 series again broke, surrounding the ever problematic int2vector type. While int2vector supports array operations as of 8.1, apparently it only supports CAST to a varchar as of 8.3. fix #3000
* - Added new datatype :class:`.oracle.DATE`, which is a subclass ofMike Bayer2014-03-223-4/+38
| | | | | | | | | | | | :class:`.DateTime`. As Oracle has no "datetime" type per se, it instead has only ``DATE``, it is appropriate here that the ``DATE`` type as present in the Oracle dialect be an instance of :class:`.DateTime`. This issue doesn't change anything as far as the behavior of the type, as data conversion is handled by the DBAPI in any case, however the improved subclass layout will help the use cases of inspecting types for cross-database compatibility. Also removed uppercase ``DATETIME`` from the Oracle dialect as this type isn't functional in that context. fixes #2987
* take out the support paragraph and just put a basic introMike Bayer2014-03-091-9/+3
|
* Merge pull request #75 from msabramo/pymssql_update_web_sitemike bayer2014-03-091-9/+7
|\ | | | | Update URL for pymssql
| * dialects/mssql/pymssql.py: Remove second two paragraphs, as requested by ↵pr/75Marc Abramowitz2014-03-031-9/+0
| | | | | | | | @zzzeek.
| * Update pymssql dialect description, remove "limitations" sectionMarc Abramowitz2014-02-271-9/+16
| |
| * Update URL for pymssqlMarc Abramowitz2014-02-271-1/+1
| |
* | - changelog for pullreq github:74Mike Bayer2014-03-052-41/+91
| | | | | | | | | | - various improvemnts to oracle docs, rewrite section on unicode, more linking, enhance section on resolve_synonyms
* | Merge branch 'master' of https://github.com/Cito/sqlalchemy into tMike Bayer2014-03-051-1/+19
|\ \
| * | Restore coercion to unicode with cx_Oracle.pr/74Christoph Zwerschke2014-02-271-1/+19
| |/ | | | | | | This feature is now turned off by default.
* | cut out the BS as far as MySQLdb urls, put the one url everyone should be usingMike Bayer2014-03-041-22/+14
|/
* fix typorel_0_9_3Mike Bayer2014-02-191-1/+1
|
* - Added an additional message to psycopg2 disconnect detection,Mike Bayer2014-02-191-0/+1
| | | | | | "could not send data to server", which complements the existing "could not receive data from server" and has been observed by users, fixes #2936
* - add a topological rule here to place PARTITIONS after PARTITION_BY,Mike Bayer2014-02-191-1/+2
| | | | for output consistency within the tests as well as in practice
* - Added new MySQL-specific :class:`.mysql.DATETIME` which includesMike Bayer2014-02-191-17/+73
| | | | | | | fractional seconds support; also added fractional seconds support to :class:`.mysql.TIMESTAMP`. DBAPI support is limited, though fractional seconds are known to be supported by MySQL Connector/Python. Patch courtesy Geert JM Vanderkelen. #2941
* Merge branch 'master' of https://bitbucket.org/50onred/sqlalchemy/overview ↵Mike Bayer2014-02-191-2/+2
|\ | | | | | | into t
| * Fixes MySQL dialect partitioningMarcus McCurdy2014-02-141-2/+2
| |
* | - update mysql connector python link, #2938Mike Bayer2014-02-181-1/+1
| |
* | - Support has been improved for Postgresql reflection behavior on very oldMike Bayer2014-02-181-22/+27
| | | | | | | | | | | | | | | | | | | | | | | | (pre 8.1) versions of Postgresql, and potentially other PG engines such as Redshift (assuming Redshift reports the version as < 8.1). The query for "indexes" as well as "primary keys" relies upon inspecting a so-called "int2vector" datatype, which refuses to coerce to an array prior to 8.1 causing failures regarding the "ANY()" operator used in the query. Extensive googling has located the very hacky, but recommended-by-PG-core-developer query to use when PG version < 8.1 is in use, so index and primary key constraint reflection now work on these versions.
* | update docs re: cx_oracle unicode as of 0.9.2, no more outputtypehandlersMike Bayer2014-02-182-22/+33
| |
* | - rewrite SQLite reflection tests into one consistent fixture, which testsMike Bayer2014-02-161-25/+31
| | | | | | | | both _resolve_type_affinity() directly as well as round trip tests fully.
* | - The SQLite dialect will now skip unsupported arguments when reflectingMike Bayer2014-02-161-1/+8
| | | | | | | | | | | | types; such as if it encounters a string like ``INTEGER(5)``, the :class:`.INTEGER` type will be instantiated without the "5" being included, based on detecting a ``TypeError`` on the first attempt.
* | - changelog + documentation for pullreq github:65Mike Bayer2014-02-161-6/+57
| |
* | Merge branch 'master' of https://github.com/eblume/sqlalchemy into tMike Bayer2014-02-162-154/+165
|\ \
| * | SQLite dialect - support relection from affinitypr/65Erich Blume2014-02-031-11/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SQLite allows column types that aren't technically understood in sqlite by using 'data affinity', which is an algorithm for converting column types in to some sort of useful type that can be stored and retrieved from the db. Unfortunatly, this breaks reflection since we (previously) expected a sqlite db to reflect column types that we permit in the `ischema_names` for that dialect. This patch changes the logic for 'unknown' column types during reflection to instead run through SQLite's data affinity algorithm, and assigns appropriate types from that. It also expands the matching for column type to include column types with spaces (strongly discouraged but allowed by sqlite) and also completely empty column types (in which case the NullType is assigned, which sqlite will treat as a Blob - or rather, Blob is treated as NullType). These changes mean that SQLite will never raise an error for an unknown type during reflection - there will always be some 'useful' type returned, which follows the spirit of SQLite (accomodation before sanity!).
| * | PEP-8 compliance for dialects/sqlite/base.pyErich Blume2014-01-302-143/+129
| | |
* | | Merge pull request #64 from LevonXXL/mastermike bayer2014-02-161-0/+4
|\ \ \ | | | | | | | | python_type for ARRAY (PGArray)
| * | | python_type for ARRAY (PGArray)pr/64Terentev2014-02-031-0/+4
| | | |
* | | | - add documentation regarding native hstore flag, psycopg2Mike Bayer2014-02-161-4/+31
| | | | | | | | | | | | | | | | hstore extension. #2959
* | | | - expand docs on MySQL table arguments beyond just storage enginesMike Bayer2014-02-151-30/+63
| | | | | | | | | | | | | | | | | | | | - clarify section on "foreign key reflection" and group this in a section that refers to foreign keys.
* | | | - Added server version detection to the newly added dialect startupMike Bayer2014-02-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | query for "show standard_conforming_strings"; as this variable was added as of PG 8.2, we skip the query for PG versions older than that as well as for backends like Redshift. #2946
* | | | - Revised this very old issue where the Postgresql "get primary key"Mike Bayer2014-02-141-1/+15
| |_|/ |/| | | | | | | | | | | | | | | | | reflection query were updated to take into account primary key constraints that were renamed; the newer query fails on very old versions of Postgresql such as version 7, so the old query is restored in those cases when server_version_info < (8, 0) is detected. #2291
* | | Parse server version info more robustlypr/69Matt (work)2014-02-111-1/+8
| | | | | | | | | | | | Closes #2934
* | | - Fixed bug which prevented MySQLdb-based dialects (e.g.Mike Bayer2014-02-031-0/+1
|/ / | | | | | | | | | | | | | | | | | | pymysql) from working in Py3K, where a check for "connection charset" would fail due to Py3K's more strict value comparison rules. The call in question wasn't taking the database version into account in any case as the server version was still None at that point, so the method overall has been simplified to rely upon connection.character_set_name(). [ticket:2933]
* | - add a few missing methods to the cymysql dialectMike Bayer2014-02-021-0/+8
| |
* | - Added :paramref:`.MetaData.reflect.**dialect_kwargs`Mike Bayer2014-02-021-38/+149
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]
* | - Fixed bug whereby SQLite compiler failed to propagate compiler argumentsMike Bayer2014-01-311-2/+2
|/ | | | | | | | | | such as "literal binds" into a CAST expression. - Fixed bug whereby binary type would fail in some cases if used with a "test" dialect, such as a DefaultDialect or other dialect with no DBAPI. - Fixed bug where "literal binds" wouldn't work with a bound parameter that's a binary type. A similar, but different, issue is fixed in 0.8.
* - Added new test coverage for so-called "down adaptions" of SQL types,Mike Bayer2014-01-222-8/+10
| | | | | | | | | | | where a more specific type is adapted to a more generic one - this use case is needed by some third party tools such as ``sqlacodegen``. The specific cases that needed repair within this test suite were that of :class:`.mysql.ENUM` being downcast into a :class:`.types.Enum`, and that of SQLite date types being cast into generic date types. The ``adapt()`` method needed to become more specific here to counteract the removal of a "catch all" ``**kwargs`` collection on the base :class:`.TypeEngine` class that was removed in 0.9. [ticket:2917]
* - some test fixesMike Bayer2014-01-191-2/+4
| | | | - clean up some shenanigans in reflection
* - implement kwarg validation and type system for dialect-specificMike Bayer2014-01-187-33/+77
| | | | | arguments; [ticket:2866] - add dialect specific kwarg functionality to ForeignKeyConstraint, ForeignKey
* - changelog for pullreq:11Mike Bayer2014-01-181-1/+1
| | | | - be specific about version 0.9.2
* Merge branch 'patch-msql-pkc-clustered' of bitbucket.org:dharland/sqlalchemy ↵Mike Bayer2014-01-181-8/+71
|\ | | | | | | into m
| * Bug Fix: Stop generating bad sql if an empty UniqueConstraint() is givendonkopotamus2014-01-171-0/+2
| |
| * Support mssql_clustered option on UniqueConstraint (plus docs and test)donkopotamus2014-01-171-4/+29
| |
| * Remove support for mssql_clustered on Tabledonkopotamus2014-01-171-15/+5
| |