summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects/sybase/base.py
Commit message (Collapse)AuthorAgeFilesLines
* - implement kwarg validation and type system for dialect-specificMike Bayer2014-01-181-0/+2
| | | | | arguments; [ticket:2866] - add dialect specific kwarg functionality to ForeignKeyConstraint, ForeignKey
* - happy new yearMike Bayer2014-01-051-1/+1
|
* remove all remaining start/end py2k/py3k blocksMike Bayer2013-06-071-18/+16
|
* - the raw 2to3 runMike Bayer2013-04-271-18/+18
| | | | - went through examples/ and cleaned out excess list() calls
* :class:`.Index` now supports arbitrary SQL expressions and/orMike Bayer2013-01-161-2/+2
| | | | | | | | 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]
* happy new year (see #2645)Diana Clarke2013-01-011-1/+1
|
* just a pep8 pass of lib/sqlalchemy/dialects/sybaseDiana Clarke2012-11-191-48/+59
|
* Removed caching from SybaseDialect.get_table_idBenjamin Trofatter2012-11-031-1/+0
|
* Updated sybase testing requirementsBenjamin Trofatter2012-10-311-2/+4
|
* Added sybase requirements to testing and improved view reflection.Benjamin Trofatter2012-10-301-33/+17
|
* Added reflection to sqlalchemy.dialects.sybaseBenjamin Trofatter2012-10-301-45/+424
| | | | | | | | | | | | | | | | | | | | | | | | Added missing types supported by Sybase to ischema_names mapping Created a SybaseInspector similar to the PGInspector, with a cached table_id lookup, and added it to the SybaseDialect as the default inspector. Added the following methods to SybaseDialect: get_table_id get_columns _get_column_info : support method for get_columns get_foreign_keys get_indexes get_pk_constraint get_schema_names get_view_definition get_view_names Rewrote the following methods to conform to the style of the rest: get_table_names has_table Reordered colspec builder to put default clause after "NULL/NOT NULL", instead of before. This fixed a syntax error.
* - rework the sphinx customizations into distinct modulesMike Bayer2012-10-191-1/+4
| | | | | | | - build a new Sphinx extension that allows dialect info to be entered as directives which is then rendered consistently throughout all dialect/dbapi sections - break out the "empty_strings" requirement for oracle test
* devMike Bayer2012-09-291-2/+2
|
* trailing whitespace bonanzaMike Bayer2012-07-281-8/+8
|
* - upgrade DBAPI index to have links to all dialect toplevel pagesMike Bayer2012-05-261-2/+6
| | | | - add line for google DBAPI
* - [feature] Dialect-specific compilers now raiseMike Bayer2012-01-281-1/+1
| | | | | | | | CompileException for all type/statement compilation issues, instead of InvalidRequestError or ArgumentError. The DDL for CREATE TABLE will re-raise CompileExceptions to include table/column information for the problematic column. [ticket:2361]
* - whitespace removal bonanzaMike Bayer2011-01-021-20/+20
|
* - clean up copyright, update for 2011, stamp every file withMike Bayer2011-01-021-1/+1
| | | | | a consistent tag - AUTHORS file
* - move LIMIT/OFFSET rendering to be as bind parameters, for all backendsMike Bayer2010-08-291-0/+2
| | | | | | | | | | which support it. This includes SQLite, MySQL, Postgresql, Firebird, Oracle (already used binds with ROW NUMBER OVER), MSSQL (when ROW NUMBER is used, not TOP). Not included are Informix, Sybase, MaxDB, Access [ticket:805] - LIMIT/OFFSET parameters need to stay as literals within SQL constructs. This because they may not be renderable as binds on some backends.
* - Changed the scheme used to generate truncatedMike Bayer2010-07-211-1/+1
| | | | | | | | | | | | "auto" index names when using the "index=True" flag on Column. The truncation only takes place with the auto-generated name, not one that is user-defined (an error would be raised instead), and the truncation scheme itself is now based on a fragment of an md5 hash of the identifier name, so that multiple indexes on columns with similar names still have unique names. [ticket:1855]
* 78 chars for sybaseMike Bayer2010-07-061-16/+28
|
* this is a rewrite from the old sybase module with almost nothingMike Bayer2010-03-271-5/+6
| | | | remaining from the original, setting primary copyright
* - Added with_hint() method to Query() construct. This callsMike Bayer2010-03-271-0/+3
| | | | | | | | | | directly down to select().with_hint() and also accepts entities as well as tables and aliases. See with_hint() in the SQL section below. [ticket:921] - Added with_hint() method to select() construct. Specify a table/alias, hint text, and optional dialect name, and "hints" will be rendered in the appropriate place in the statement. Works for Oracle, Sybase, MySQL. [ticket:921]
* removed all dialect table_names() methods and standardizedMike Bayer2010-03-191-3/+0
| | | | on get_table_names(). [ticket:1739]
* - normalize sybase version numbersMike Bayer2010-03-181-0/+8
| | | | - sybase has 255 identifier length on 15, 30 earlier
* turning the decimals to floats allows the E notation to work with ↵Mike Bayer2010-03-181-4/+2
| | | | sybase+pyodbc for small E notations
* working through syb capabilitiesMike Bayer2010-03-171-3/+0
|
* - pyodbc can do *some* unicode with sybase, python-sybase not at all.Mike Bayer2010-03-171-5/+22
| | | | | Since python-sybase source code seems to be all from 2001 with no updates, making pyodbc the default driver.
* - added pyodbc for sybase driver.Mike Bayer2010-03-171-23/+9
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - generalized the "freetds" / "unicode statements" behavior of MS-SQL/pyodbc into the base Pyodbc connector, as this seems to apply to Sybase as well. - generalized the python-sybase "use autocommit for DDL" into the pyodbc connector. With pyodbc, the "autocommit" flag on connection is used, as Pyodbc seems to have more database conversation than python-sybase that can't otherwise be suppressed. - Some platforms will now interpret certain literal values as non-bind parameters, rendered literally into the SQL statement. This to support strict SQL-92 rules that are enforced by some platforms including MS-SQL and Sybase. In this model, bind parameters aren't allowed in the columns clause of a SELECT, nor are certain ambiguous expressions like "?=?". When this mode is enabled, the base compiler will render the binds as inline literals, but only across strings and numeric values. Other types such as dates will raise an error, unless the dialect subclass defines a literal rendering function for those. The bind parameter must have an embedded literal value already or an error is raised (i.e. won't work with straight bindparam('x')). Dialects can also expand upon the areas where binds are not accepted, such as within argument lists of functions (which don't work on MS-SQL when native SQL binding is used).
| * - mxodbc can use default execute() callMike Bayer2010-03-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | - modified SQLCompiler to support rendering of bind parameters as literal inline strings for specific sections, if specified by the compiler subclass, using either literal_binds=True passed to process() or any visit method, or by setting to False the "binds_in_columns_clause" flag for SQL-92 compatible columns clauses.. The compiler subclass is responsible for implementing the literal quoting function which should make use of the DBAPI's native capabilities. - SQLCompiler now passes **kw to most process() methods (should be all, ideally) so that literal_binds is propagated. - added some rudimentary tests for mxodbc.
* | - basic sybase+pyodbc support. in particular this will impact freetds ↵Mike Bayer2010-03-171-1/+28
|/ | | | detection for MS-SQL as well.
* - many incantations to get the tests to run reasonablyMike Bayer2010-03-141-7/+38
| | | | | - executemany() for some reason uses some tiny buffer, overriding it - we need to use the IDENTITY_INSERT thing
* - initial working version of sybase, with modifications to the transactionalMike Bayer2010-03-141-221/+133
| | | | | | | | | | model to accomodate Sybase's default mode of "no ddl in transactions". - identity insert not working yet. it seems the default here might be the opposite of that of MSSQL. - reflection will be a full rewrite - default DBAPI is python-sybase, well documented and nicely DBAPI compliant except for the bind parameter situation, where we have a straightforward workaround - full Sybase docs at: http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.help.ase_15.0/title.htm
* - Added an optional C extension to speed up the sql layer byGaëtan de Menten2010-02-131-18/+1
| | | | | | | | | | | | | | | reimplementing the highest impact functions. The actual speedups will depend heavily on your DBAPI and the mix of datatypes used in your tables, and can vary from a 50% improvement to more than 200%. It also provides a modest (~20%) indirect improvement to ORM speed for large queries. Note that it is *not* built/installed by default. See README for installation instructions. - The most common result processors conversion function were moved to the new "processors" module. Dialect authors are encouraged to use those functions whenever they correspond to their needs instead of implementing custom ones.
* - types.Binary is renamed to types.LargeBinary, it onlyMike Bayer2010-01-231-6/+6
| | | | | | | produces BLOB, BYTEA, or a similar "long binary" type. New base BINARY and VARBINARY types have been added to access these MySQL/MS-SQL specific types in an agnostic way [ticket:1664].
* seriously, this is not 0.6 code !Mike Bayer2009-12-061-1/+3
|
* add a warning for unported dialects. considered a full blown ↵Mike Bayer2009-12-061-0/+2
| | | | NotImplementedError but will see if this gets the message across
* - pg8000 + postgresql dialects now check for float/numeric returnMike Bayer2009-11-151-1/+1
| | | | | | | | | | types to more intelligently determine float() vs. Decimal(), [ticket:1567] - since result processing is a hot issue of late, the DBAPI type returned from cursor.description is certainly useful in cases like these to determine an efficient result processor. There's likely other result processors that can make use of it. But, backwards incompat change to result_processor(). Happy major version number..
* - dialect.get_default_schema_name(connection) is nowMike Bayer2009-11-031-2/+3
| | | | | public via dialect.default_schema_name. [ticket:1571]
* close cursors: mostly fetchone -> firstPhilip Jenvey2009-09-111-4/+1
|
* merge 0.6 series to trunk.Mike Bayer2009-08-061-0/+458