summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/databases/mysql.py
Commit message (Collapse)AuthorAgeFilesLines
...
* happy new yearMike Bayer2008-01-011-1/+1
|
* - auto-reconnect support improved; a Connection can now automaticallyMike Bayer2007-12-191-2/+6
| | | | | | | | | | reconnect after its underlying connection is invalidated, without needing to connect() again from the engine. This allows an ORM session bound to a single Connection to not need a reconnect. Open transactions on the Connection must be rolled back after an invalidation of the underlying connection else an error is raised. Also fixed bug where disconnect detect was not being called for cursor(), rollback(), or commit().
* Some code-level docs for r3916Jason Kirtland2007-12-121-0/+5
|
* - on mysql, emit inner joins as 'INNER JOIN ... ON' (for version 3.23)Jason Kirtland2007-12-121-0/+8
|
* default value of assert_unicode is None on String, False on create_engine(), ↵Mike Bayer2007-11-281-2/+2
| | | | and True on Unicode type.
* - named_with_column becomes an attributeMike Bayer2007-11-251-10/+4
| | | | | | | | | - cleanup within compiler visit_select(), column labeling - is_select() removed from dialects, replaced with returns_rows_text(), returns_rows_compiled() - should_autocommit() removed from dialects, replaced with should_autocommit_text() and should_autocommit_compiled() - typemap and column_labels collections removed from Compiler, replaced with single "result_map" collection. - ResultProxy uses more succinct logic in combination with result_map to target columns
* Tests for mysql casts and a couple adjustments.Jason Kirtland2007-11-181-6/+6
|
* Migrated Connection.properties to Connection.info ('info' is the new ↵Jason Kirtland2007-11-181-8/+8
| | | | standard name for user-writable property collections that came out of [ticket:573]). 'properties' is now an alias, will be removed in 0.5.
* More column type __repr__ corrections.Jason Kirtland2007-11-131-1/+1
|
* - mysql float types now do an end run around the base class and respect ↵Jason Kirtland2007-11-091-14/+86
| | | | | | | precision=None and length=None - Added the mysteriously missing mysql cast support - Added mysql REAL synonym for schema generation
* Whitespace cleanupJason Kirtland2007-11-051-81/+80
|
* - SHOW CREATE TABLE output is slightly different if msyql is in ANSI modeJason Kirtland2007-11-051-7/+11
|
* - merged path_based_options branchMike Bayer2007-10-281-9/+0
| | | | | | | | - behavior of query.options() is now fully based on paths, i.e. an option such as eagerload_all('x.y.z.y.x') will apply eagerloading to only those paths, i.e. and not 'x.y.x'; eagerload('children.children') applies only to exactly two-levels deep, etc. [ticket:777] - removes old compiler()/schemagenerator()/schemadropper() methods from mysql dialect
* - added test coverage for unknown type reflection, fixedMike Bayer2007-10-181-1/+1
| | | | sqlite/mysql handling of type reflection for unknown types
* - Added support for UPDATE with LIMIT on mysql.Jason Kirtland2007-10-161-2/+40
| | | | - Added mysql dialect tests for SET columns and the in_ operator.
* removed unused _fold_identifier_case methodMike Bayer2007-10-021-10/+0
|
* Changed MySQL dialect to use the older LIMIT <offset>, <limit> syntax insteadJason Kirtland2007-09-261-10/+22
| | | | | of LIMIT <l> OFFSET <o> for folks using 3.23. ([ticket:794], thanks for the patch!)
* Fixed repr() of mysql floats [ticket:775]Jason Kirtland2007-09-071-4/+3
| | | | Added repr testing to mysql dialect
* mysql SETs and ENUMs now unescape embedded quotes before storage in .enums ↵Jason Kirtland2007-09-061-6/+13
| | | | and .values. An ancient bug.
* Fixed reflection of the empty string for mysql enums.Jason Kirtland2007-09-051-3/+3
|
* engine.url cleanups [ticket:742]Jason Kirtland2007-08-291-1/+2
| | | | | | - translate_connect_args can now take kw args or the classic list - in-tree dialects updated to supply their overrides as keywords - tweaked url parsing in the spirit of the #742 patch, more or less
* - Restored reflection for mysql VIEWs [ticket:748]Jason Kirtland2007-08-281-28/+114
| | | | | | | | | - Fixed anonymous pk reflection for mysql 5.1 - Tested table and view reflection against the 'sakila' database from MySQL AB on 3.23 - 6.0. (with some schema adjustments, obviously) Maybe this will go into the SA test suite someday. - Tweaked mysql server version tuplification, now also splitting on hyphens - Light janitorial
* Fix for reflecting mysql keys that have USINGJason Kirtland2007-08-221-1/+1
|
* Housekeeping.Jason Kirtland2007-08-221-16/+14
|
* - method call removalMike Bayer2007-08-201-10/+8
|
* 1. Module layout. sql.py and related move into a package called "sql".Mike Bayer2007-08-181-17/+19
| | | | | | | | | | | | 2. compiler names changed to be less verbose, unused classes removed. 3. Methods on Dialect which return compilers, schema generators, identifier preparers have changed to direct class references, typically on the Dialect class itself or optionally as attributes on an individual Dialect instance if conditional behavior is needed. This takes away the need for Dialect subclasses to know how to instantiate these objects, and also reduces method overhead by one call for each one. 4. as a result of 3., some internal signatures have changed for things like compiler() (now statement_compiler()), preparer(), etc., mostly in that the dialect needs to be passed explicitly as the first argument (since they are just class references now). The compiler() method on Engine and Connection is now also named statement_compiler(), but as before does not take the dialect as an argument. 5. changed _process_row function on RowProxy to be a class reference, cuts out 50K method calls from insertspeed.py
* - fixed prefixes= argument to select()Jason Kirtland2007-08-181-0/+8
| | | | | | | - mysql can now generate DISTINCT or ALL for queries, select(..., distinct='ALL') - documented 'prefixes' arg to select() - rearranged doc order for select args to mirror that of a generated statement - went nutty and fixed wrapping and line length on most docstrings in sql.py
* - modified SQL operator functions to be module-level operators, allowingMike Bayer2007-08-181-3/+5
| | | | | | | SQL expressions to be pickleable [ticket:735] - small adjustment to mapper class.__init__ to allow for Py2.6 object.__init__() behavior
* stopgap, need a general strategy for raising readable exceptions for unicode ↵Jason Kirtland2007-08-151-1/+2
| | | | content
* - merged "fasttypes" branch. this branch changes the signatureMike Bayer2007-08-141-94/+123
| | | | | | | | | | | | | of convert_bind_param() and convert_result_value() to callable-returning bind_processor() and result_processor() methods. if no callable is returned, no pre/post processing function is called. - hooks added throughout base/sql/defaults to optimize the calling of bind param/result processors so that method call overhead is minimized. special cases added for executemany() scenarios such that unneeded "last row id" logic doesn't kick in, parameters aren't excessively traversed. - new performance tests show a combined mass-insert/mass-select test as having 68% fewer function calls than the same test run against 0.3. - general performance improvement of result set iteration is around 10-20%.
* adjusted mysql autoload from a named schema, esp. for windowsJason Kirtland2007-08-131-8/+7
|
* auto-commit after LOAD DATA INFILE for mysqlJason Kirtland2007-08-121-2/+11
| | | | caught a couple more uncompiled regexps
* Docs.Jason Kirtland2007-08-121-0/+19
|
* Allow auto_increment on any pk column, not just the first.Jason Kirtland2007-08-121-7/+12
|
* by popular demand, mysql reflection is now a single round-trip and uses a ↵Jason Kirtland2007-08-111-171/+718
| | | | | | | | parse of SHOW CREATE TABLE ddl [ticket:612] the ANSI_QUOTES mode is now supported halfway there for auto_increment on secondary columns [ticket:649] indexes are now reflected [ticket:663]
* Added 'unformat_identifiers', produces a list of unquoted identifiers from ↵Jason Kirtland2007-08-091-0/+3
| | | | an identifier or a fully qualified identifier string.
* restore clipping value for YEAR DDLJason Kirtland2007-08-091-2/+7
|
* Added `set_types` to util, a tuple of available set implementations.Jason Kirtland2007-08-081-15/+139
| | | | | | Added BIT and SET ([ticket:674])- all mysql data types are now covered! Fix for YEAR DDL generation, also no longer a concatenable type. Expanded docs for some mysql column esoterica.
* 'condition' misspelledMike Bayer2007-08-071-1/+1
|
* Pedantic tweak to coltype swappage...Jason Kirtland2007-08-041-0/+1
|
* Further tweaks for lc strategiesJason Kirtland2007-08-041-7/+16
| | | | Ensure that the recently added first-class tinyint plays nicely with boolean reflection
* switch (simple) occurences of 'if len(x)' to 'if x': find . -name '*.py' ↵Jonathan Ellis2007-08-031-1/+1
| | | | |xargs perl -pi.bak -e 's/if len\((\S+)\):/if $1:/' && find . -name '*.bak' |xargs rm
* - Dialects can be queried for the server version (sqlite and mysql only with ↵Jason Kirtland2007-08-031-59/+150
| | | | | | | | | | | | | | this commit) - Mark everything in a test suite as failed when setUpAll fails. - Added test coverage for Unicode table names in metadata.reflect() - @testing.exclude() filters out tests by server version - Applied exclude to the test suite, MySQL 4.1 passes again (no XA or SAVEPOINT) - Removed MySQL charset-setting pool hook- charset=utf8&use_unicode=0 works just as well. (Am I nuts? I'd swear this didn't work before.) - Finally migrated some old MySQL-tests into the dialect test module - Corrected 'commit' and 'rollback' logic (and comment) for ancient MySQL versions lacking transactions entirely - Deprecated the MySQL get_version_info in favor of server_version_info - Added a big hunk-o-doc for MySQL.
* Stopgap for post- #646 and r3030, wedge in 0.3 Decimals-are-floats behavior ↵Jason Kirtland2007-08-011-2/+1
| | | | for vanilla 2.3 Python.
* Promoted format_table_seq from mysql to ansisql. Formats a fully qualified ↵Jason Kirtland2007-08-011-10/+0
| | | | table reference as a quoted sequence, suitable for '.'.joining or whatever. [ticket:666]
* MetaData can now reflect() all tables in the database en-masse thanks to ↵Jason Kirtland2007-07-311-1/+4
| | | | | | | | | | | table_names(). table_names changed to accept an explicit connection ThreadLocalMetaData constructor now takes no arguments. If case_sensitive is needed in a multi-bind context, move it to Table or subclass TLMD to force it. Banished **kwargs from MetaData Lots of class doc and docstring improvements around MetaData and TLMD. Some engine->bind internal naming updates + reorg in schema. MySQL table_names now return Unicode. (Also, a unicode reflect() unit test is needed.)
* Big MySQL dialect update, mostly efficiency and style.Jason Kirtland2007-07-291-117/+309
| | | | | | Added TINYINT [ticket:691]- whoa, how did that one go missing for so long? Added a charset-fixing pool listener. The driver-level option doesn't help everyone with this one. New reflector code not quite done and omiited from this commit.
* Finish table_names.Jason Kirtland2007-07-291-2/+4
|
* add table_names() for mysql. maybe it works.Jonathan Ellis2007-07-291-0/+4
|
* merging 0.4 branch to trunk. see CHANGES for details. 0.3 moves to ↵Mike Bayer2007-07-271-32/+75
| | | | maintenance branch in branches/rel_0_3.