summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects/mysql
Commit message (Collapse)AuthorAgeFilesLines
* Add basic support of unique constraints reflectionpr/4Roman Podolyaka2013-06-091-0/+15
| | | | | | | | | | | | 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.
* Merge pull request #3 from bslatkin/mastermike bayer2013-06-081-7/+16
|\ | | | | Makes gaerdbms for App Engine use local MySQL server when running in dev_appserver2
| * Fixing the error regex to match numbers with the long suffix, like 1146Lpr/3Brett Slatkin2013-06-081-1/+1
| |
| * PEP8Brett Slatkin2013-06-081-3/+3
| |
| * Makes gaerdbms for App Engine use local MySQL server when running under ↵Brett Slatkin2013-06-081-6/+15
| | | | | | | | dev_appserver2.
* | - changelog for [ticket:2704]Mike Bayer2013-06-081-9/+13
| | | | | | | | - use an isinstance() check, concerned a TypeError might be indiscriminate
* | Fix using of 'mysql_length' for composite indexesRoman Podolyaka2013-06-081-7/+25
|/ | | | | | | | | | | | | | | | | Currently, one can specify the prefix length for an index column using 'mysql_length' keyword argument when creating an Index instance. But in case of composite indexes the prefix length value is applied only to the last column. Extend the existing API in way so that 'mysql_length' argument value can be either: - an integer specifying the same prefix length value for each column of an index - a (column_name --> integer value) mapping specifying the prefix length value for each column of an index separately Fixes issue #2704.
* The ``deferrable`` keyword argument on :class:`.ForeignKey` andMike Bayer2013-06-031-0/+2
| | | | | | | | :class:`.ForeignKeyConstraint` will not render the ``DEFERRABLE`` keyword on the MySQL dialect. For a long time we left this in place because a non-deferrable foreign key would act very differently than a deferrable one, but some environments just disable FKs on MySQL, so we'll be less opinionated here. [ticket:2721]
* mysql testsMike Bayer2013-05-261-5/+1
|
* merge defaultMike Bayer2013-04-291-1/+2
|\
| * Updated mysqlconnector dialect to check for disconnect basedMike Bayer2013-04-291-1/+2
| | | | | | | | | | on the apparent string message sent in the exception; tested against mysqlconnector 1.0.9.
* | merge defaultMike Bayer2013-04-291-26/+15
|\ \ | |/
| * - fix long-outdated documentation for sql_mode/ansiquotes,Mike Bayer2013-04-291-26/+15
| | | | | | | | closes [ticket:1552]
* | plugging awayMike Bayer2013-04-273-37/+19
| |
* | - the raw 2to3 runMike Bayer2013-04-274-38/+42
|/ | | | - went through examples/ and cleaned out excess list() calls
* - changelogMike Bayer2013-04-211-1/+1
| | | | - just do a fetchone() here, no need for len() etc.
* merge cymysql branchMike Bayer2013-04-212-1/+2
|\
| * merge from defaultHajime Nakagami2013-04-201-2/+2
| |\
| * | mysql+cymysql dialect supports_sane_rowcount = FalseHajime Nakagami2013-04-131-0/+1
| | |
| * | a bit revertHajime Nakagami2013-04-131-8/+0
| | |
| * | select not return rowcount at mysql+cymysqlHajime Nakagami2013-04-061-1/+1
| | |
| * | merge from defaultHajime Nakagami2013-04-061-1/+0
| |\ \
| * | | do_execute() hook in cymysql dialectHajime Nakagami2013-03-071-0/+8
| | | |
* | | | - Improvements to the operation of the pymysql dialect onMike Bayer2013-04-212-17/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Python 3, including some important decode/bytes steps. Issues remain with BLOB types due to driver issues. Courtesy Ben Trofatter. - start using util.py3k, we will eventually remove the sa2to3 fixer entirely
* | | | Merged in bentrofatter/sqlalchemy-2663 (pull request #49)Mike Bayer2013-04-212-0/+17
|\ \ \ \ | |_|_|/ |/| | | | | | | Fixed PyMySQL problems for Python 2.x and mitigated some issues with Python 3.x
| * | | Added workaround for pymysql3 double wrapping ProgrammingErrors to pymysql ↵Ben Trofatter2013-03-182-0/+17
| |/ / | | | | | | | | | | | | | | | dialect. Added workaround for pymysql3 return a bytes object when queried for isolation level.
* | | Fix mysql+gaerdbms dialect for changed exception formatDan Ring2013-04-191-2/+2
| |/ |/| | | | | | | | | | | | | | | | | | | | | googleappengine v1.7.5 changed the exception format to be incompatible with MySQLDialect_gaerdbms#_extract_error_code This fix works for both old- and new-style exceptions. Changes causing the breakage: /trunk/python/google/storage/speckle/python/api/rdbms.py at https://code.google.com/p/googleappengine/source/detail?r=318
* | - add a nose runner that erases out argv, otherwiseMike Bayer2013-03-251-1/+0
|/ | | | | you get "import test" as what it tries to run with setup.py test
* is_disconnect() in cymysql dialectHajime Nakagami2013-03-021-0/+11
|
* modify _extract_error_code() at cymysql dialectHajime Nakagami2013-03-021-5/+1
|
* fix easy missHajime Nakagami2013-03-011-0/+1
|
* fix easy missHajime Nakagami2013-03-011-4/+4
|
* cython's result_processor()Hajime Nakagami2013-03-011-0/+29
|
* return erro_code cymysql dialectsHajime Nakagami2013-02-261-4/+5
|
* fix cymysql's _extact_error_code() for py3Hajime Nakagami2013-02-261-1/+4
|
* cython's _extract_error_code()Hajime Nakagami2013-02-251-1/+3
|
* add cymysql dialectHajime Nakagami2013-02-172-1/+30
|
* more egregious long linesMike Bayer2013-02-021-37/+68
|
* Added a conditional import to the ``gaerdbms`` dialect which attemptsMike Bayer2013-02-021-6/+22
| | | | | | | to import rdbms_apiproxy vs. rdbms_googleapi to work on both dev and production platforms. Also now honors the ``instance`` attribute. Courtesy Sean Lynch. [ticket:2649]
* Added a new argument to :class:`.Enum` and its baseMike Bayer2013-02-011-0/+1
| | | | | | | | | | | | :class:`.SchemaType` ``inherit_schema``. When set to ``True``, the type will set its ``schema`` attribute of that of the :class:`.Table` to which it is associated. This also occurs during a :meth:`.Table.tometadata` operation; the :class:`.SchemaType` is now copied in all cases when :meth:`.Table.tometadata` happens, and if ``inherit_schema=True``, the type will take on the new schema name passed to the method. The ``schema`` is important when used with the Postgresql backend, as the type results in a ``CREATE TYPE`` statement. [ticket:2657]
* fix incorrect quoting in mysql indexesMike Bayer2013-01-171-3/+1
|
* :class:`.Index` now supports arbitrary SQL expressions and/orMike Bayer2013-01-161-6/+8
| | | | | | | | 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]
* remove all specifics from the "supported features" section as thisMike Bayer2013-01-121-21/+3
| | | | is not maintainable
* happy new year (see #2645)Diana Clarke2013-01-019-9/+9
|
* Fixes issue where GAE error handling can cause AttributeError: 'NoneType' ↵Owen Nelson2012-12-281-1/+3
| | | | object has no attribute 'group'
* GAE dialect now supports the use of credentialsOwen Nelson2012-12-281-1/+3
|
* internally at least refer to multirow as "multivalues", to distinguish betweenMike Bayer2012-12-081-1/+1
| | | | | an INSERT that's used in executemany() as opposed to one which has a VALUES clause with multiple entries.
* compiler: add support for multirow insertsIdan Kamara2012-12-061-0/+1
| | | | | | | | | | | | | | | | | | | | | 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.
* - recognize that do_rollback() and do_commit() work with a DBAPI connection,Mike Bayer2012-11-221-4/+4
| | | | | | | | | | | | | | | | | | whereas the other do_rollback_twophase(), savepoint etc. work with :class:`.Connection`. the context on these are different as twophase/savepoint are available at the :class:`.Connection` level, whereas commit/rollback are needed at a lower level as well. Rename the argument to "dbapi_connection" when the conneciton is in fact the DBAPI interface. - start thinking about being able to track "autocommit" vs. "commit", but not sure we have a need for this yet. - have Pool call out to a Dialect for all rollback/commit/close operations now. Pool no longer calls DBAPI methods directly. May use this for a workaround for [ticket:2611] - add a new Pool event reset() to allow the pool's reset of the connection to be intercepted. - remove methods in Informix dialect which appear to be hardcoding some isolation settings on new Transaction only; the isolation API should be implemented for Informix. also removed "flag" for transaction commit/rollback being not available; this should be based on server/DBAPI version and we will need someone with test access in order to help determine how this should work
* kill me now, pep8 pass, so closeDiana Clarke2012-11-204-55/+60
|