Commit Graph

83 Commits

Author SHA1 Message Date
Mike Bayer fadebedff0 Add SQL Server TIMESTAMP / ROWVERSION datatypes
SQL Server has an entirely different use for the TIMESTAMP
datatype that is unrelated to the SQL standard's version of this
type.   It is a read-only type that returns an incrementing
binary value.  The ROWVERSION name will supersede the TIMESTAMP
name.  Implement datatype objects for both, separate from the
base DateTime/TIMESTAMP class hierarchy, and also implement
an optional integer coercion feature.

Change-Id: Ie2bd43b7aac57760b8ec6ff6e26460e2086a95eb
Fixes: #4086
2017-10-04 09:27:31 -04:00
Mike Bayer a66979fe1e - remove intersphinx usage, the overhead of re-fetching
inventory on every build not worth it

Change-Id: I3c4506b246d0f327c4b56afa723975daee984476
2017-07-09 13:02:59 -04:00
Michael Doronin 7d3da6f850 Implement MySQL's ON DUPLICATE KEY UPDATE
Added support for MySQL's ON DUPLICATE KEY UPDATE
MySQL-specific :class:`.mysql.dml.Insert` object.
Pull request courtesy Michael Doronin.

Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com>
Resolves: #4009
Change-Id: Ic71424f3c88af6082b48a910a2efb7fbfc0a7eb4
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/365
2017-07-03 14:38:09 -04:00
Jodok Batlogg 9f1a375f10 added link for CrateDB support 2017-06-23 21:16:18 +02:00
Mike Bayer b1369b4721 Add placeholder XML support
Added a placeholder type :class:`.mssql.XML` to the SQL Server
dialect, so that a reflected table which includes this type can
be re-rendered as a CREATE TABLE.  The type has no special round-trip
behavior nor does it currently support additional qualifying
arguments.

Change-Id: I651fa729bd8e9b31a0b5effe0839aff077d77c46
Fixes: #3973
2017-05-26 11:24:25 -04:00
Kataev Denis 42b6ef8ccd Repair formatting throughout documentation
1. Section decorators to [one style](http://docutils.sourceforge.net/docs/ref/rst/restructuredtext.html#sections):
without inset at both side and with same length as text.
2. Fix broken [reference](http://docs.sqlalchemy.org/en/latest/core/type_basics.html#generic-types).
3. Convert tabs to space in some small files.
4. Some python code snippets have python+sql syntax hint.

Change-Id: I39a7a41ef0b0591c6bf1e610748e2b5c19fc5379
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/361
2017-05-22 17:53:09 -04:00
Grzegorz Makarewicz aa3b59af54 pytds based connector for MS-SQL 2017-02-12 20:10:43 +01:00
Ville Skyttä 8c2c464cb8 spelling: Postgresql -> PostgreSQL 2016-10-08 20:42:50 +03:00
Shige Takeda 2045689ff2 Update index.rst 2016-07-11 15:58:43 -07:00
Shige Takeda b5bf863217 Update index.rst 2016-07-11 15:56:12 -07:00
Lele Gaifax 9ec1312bd5 Consistently use the official PostgreSQL casing 2016-07-02 13:05:27 +02:00
Robin Thomas 4e9ab7a72f Add ON CONFLICT support for Postgresql
Fixes: #3529
Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com>
Change-Id: Ie3bf6ad70d9be9f0e44938830e922db03573991a
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/258
2016-06-14 15:03:14 -04:00
Christoph Zwerschke b59cbb5fd7 - Add support for PostgreSQL with PyGreSQL
Change-Id: I040b75ff3b4110e7e8b26442a4eb226ba8c26715
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/234
2016-04-15 12:00:27 -04:00
Mike Bayer 47d8858c54 - generalize the verbiage on LargeBinary so that it doesn't
create confusion for inherited classes such as BYTEA, fixes
2016-01-20 16:20:08 -05:00
Mike Bayer a80bb4e5aa - Added :class:.mysql.JSON for MySQL 5.7. The JSON type provides
persistence of JSON values in MySQL as well as basic operator support
of "getitem" and "getpath", making use of the ``JSON_EXTRACT``
function in order to refer to individual paths in a JSON structure.
fixes #3547
- Added a new type to core :class:`.types.JSON`.  This is the
base of the PostgreSQL :class:`.postgresql.JSON` type as well as that
of the new :class:`.mysql.JSON` type, so that a PG/MySQL-agnostic
JSON column may be used.  The type features basic index and path
searching support.
fixes #3619
- reorganization of migration docs etc. to try to refer both to
the fixes to JSON that helps Postgresql while at the same time
indicating these are new features of the new base JSON type.
- a rework of the Array/Indexable system some more, moving things
that are specific to Array out of Indexable.
- new operators for JSON indexing added to core so that these can
be compiled by the PG and MySQL dialects individually
- rename sqltypes.Array to sqltypes.ARRAY - as there is no generic
Array implementation, this is an uppercase type for now, consistent
with the new sqltypes.JSON type that is also not a generic implementation.
There may need to be some convention change to handle the case of
datatypes that aren't generic, rely upon DB-native implementations,
but aren't necessarily all named the same thing.
2016-01-06 12:47:48 -05:00
Mike Bayer c2c4fc14d5 Merge remote-tracking branch 'origin/pr/196' into pr196 2015-10-22 17:27:44 -04:00
Mike Bayer 410be197ef - add a postgresql-specific form of array_agg() that injects the
ARRAY type, references #3132
2015-08-27 11:22:05 -04:00
Mike Bayer 5295a683f9 - add PG-specific aggregate_order_by(), references #3132 2015-08-27 10:32:21 -04:00
Mike Bayer 7024745a14 - build out a new base type for Array, as well as new any/all operators
- any/all work for Array as well as subqueries, accepted by MySQL
- Postgresql ARRAY now subclasses Array
- fixes #3516
2015-08-25 18:24:46 -04:00
Thomas Grainger e4bfe2aa4b Link to maintained redshift dialect 2015-08-19 19:15:40 +01:00
Mike Bayer 422fca43f8 fdb drivers seem to be no longer available 2015-03-24 19:30:09 -04:00
Mike Bayer 3971690731 - reorganize MySQL docs re: unicode, other cleanup and updates 2015-03-20 15:08:35 -04:00
Mike Bayer a826ff366b - additional test adjustments for pypy / psycopg2cffi. This
consists mainly of adjusting fixtures to ensure connections are closed
explicitly.  psycopg2cffi also handles unicode bind parameter
names differently than psycopg2, and seems to possibly have a little less
control over floating point values at least in one test which is
marked as a "fail", though will see if it runs differently on linux
than osx..
- changelog for psycopg2cffi, fixes #3052
2015-01-26 18:43:19 -05:00
Shaun Stanworth 226bd8d707 Include psycopg2cffi in dialect docs 2015-01-26 18:43:19 -05:00
Mike Bayer 544e72bcb6 - corrections
- attempt to add a script to semi-automate the fixing of links
2014-12-27 16:22:41 -05:00
Mike Bayer d2c1edfb15 - added new backend for pysqlcipher, as we will probably get
requests for it soon.
2014-10-29 14:55:42 -04:00
mike bayer 7094193c61 Merge pull request #138 from BY-jk/master
Added EXASolution dialect to documentation
2014-09-16 15:10:36 -04:00
Jan 4f39e3839f Added EXASolution dialect to documentation 2014-09-16 20:54:27 +02:00
Mike Bayer 5eefdae113 document JSONB 2014-07-07 17:59:47 -04:00
Priit Laes 8c33709985 typo: s/founds/found 2014-06-28 12:45:50 +03:00
Mike Bayer 42bbb7163a - Added a new type :class:.postgresql.OID to the Postgresql dialect.
While "oid" is generally a private type within PG that is not exposed
in modern versions, there are some PG use cases such as large object
support where these types might be exposed, as well as within some
user-reported schema reflection use cases.
fixes #3002
2014-06-20 17:58:06 -04:00
Mike Bayer 809a7890a1 - remove drizzle dialect
- restore mysqldb fully within dialects/mysql/, it's no longer a connector.
fixes #2984
2014-05-30 18:06:09 -04:00
Mike Bayer 2da30fde12 fix typo 2014-05-30 13:21:12 -04:00
Chris Withers 551c730f3f more docs for using psycopg2 range types, specifically instantiating models with them 2014-05-25 15:46:31 +01:00
Mike Bayer be3c185fd4 - Added new datatype :class:.oracle.DATE, which is a subclass of
: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
2014-03-22 18:22:17 -04:00
Mike Bayer 37d1f8983c typo 2014-02-02 19:28:41 -05:00
Mike Bayer 0234387188 typo 2014-01-23 17:45:13 -05:00
Mike Bayer ee1f4d2103 - add redshift-sqlalchemy, essentially fixes [ticket:2727] 2014-01-21 19:33:25 -05:00
Mike Bayer 0087ec7286 akiban-> foundationdb 2014-01-18 20:56:56 -05:00
Mike Bayer 2104d0ba2d - rework the JSON expression system so that "astext" is called *after*
the indexing.  this is for more natural operation.
- also add cast() to the JSON expression to complement astext. This integrates
the CAST call which will be needed frequently.  Part of [ticket:2687].
- it's a little unclear how more advanced unicode attribute-access is going to go,
some quick attempts at testing yielded strange error messages from psycopg2.
- do other cross linking as mentioned in [ticket:2687].
2013-12-27 18:25:57 -05:00
Mike Bayer c95e3c6512 add JSON 2013-12-17 16:30:22 -05:00
Mike Bayer d5a86d8f86 Merge branch 'tsvector' of https://bitbucket.org/nibrahim/sqlalchemy/branch/tsvector into tsvector 2013-12-09 21:01:26 -05:00
Mike Bayer 111c61546c sqlany dialect moves to github 2013-12-09 20:56:10 -05:00
Noufal Ibrahim 4eb8437f61 Updates documentation for tsvector type.
Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
2013-12-10 01:07:36 +05:30
Mike Bayer c368034ca0 remove this 2013-11-29 18:53:37 -05:00
Mike Bayer 756f22182a name it with a dash 2013-11-17 13:50:42 -05:00
Mike Bayer 59ca4633ac - remove informix dialect, moved out to https://bitbucket.org/zzzeek/sqlalchemy_informixdb
- remove informix, maxdb, access symbols from tests etc.
2013-11-17 13:45:23 -05:00
Mike Bayer f429032ac2 add sap sqlanywhere 2013-11-12 13:00:49 -05:00
Mike Bayer 78c5249bf7 - add monetdb
- break out into "production" and "experimental"
2013-10-01 13:44:53 -04:00
Mike Bayer 0c19c1c66f - reorganize docs so expression, schema are broken out into subfiles, they're too big
- fix the targeting of module names moved around by using custom handlers for "Bases", etc.
2013-08-18 18:01:27 -04:00