summaryrefslogtreecommitdiff
path: root/test/dialect/test_oracle.py
Commit message (Collapse)AuthorAgeFilesLines
* Adapt "FOR UPDATE OF" with Oracle limit/offsetMike Bayer2016-07-051-0/+73
| | | | | | | | | | This modifies the Oracle ROWNUM limit/offset approach to accommodate for the "OF" clause in a "FOR UPDATE" phrase. The column expressions must be added to the selected subquery if necessary and adapted on the outside. Change-Id: Ia71b5fc4df6d326e73863f8ae9f96e8f1a5acfc1 Fixes: #3741
* Add 'FOR NO KEY UPDATE' / 'FOR KEY SHARE' support for PostgresqlSergey Skopin2016-06-081-1/+15
| | | | | | | | Adds ``key_share=True`` for with_for_update(). Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com> Change-Id: I74e0c3fcbc023e1dc98a1fa0c7db67b4c3693a31 Pull-request: https://github.com/zzzeek/sqlalchemy/pull/279
* Add SKIP LOCKED support for Postgresql, OracleJack Zhou2016-06-021-0/+7
| | | | | | | | This adds `SELECT ... FOR UPDATE SKIP LOCKED`/ `SELECT ... FOR SHARE SKIP LOCKED` rendering. Change-Id: Id1dc4f1cafc1de23f397a6f73d54ab2c58d5910d Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/86
* - add missing __backend__ directives so that oracle tests actually run with ↵Mike Bayer2016-02-081-0/+17
| | | | --backend-only
* - detect "Enterprise" and assume compression stuff isn't availableMike Bayer2016-02-081-0/+6
| | | | if not
* - adjust the MultiSchemaTest to handle multiple test_schemas / processes at theMike Bayer2016-02-081-5/+6
| | | | same time
* - adjust to allow dblink tests to work with multiprocess users.Mike Bayer2016-02-081-9/+3
| | | | | | unfortunately the synonym doesn't work for SQL statements here when the dblink is on a different user, testing this is not really critical so just removed it.
* - Fixed bug in Oracle dialect where reflection of tables and otherMike Bayer2015-10-051-0/+26
| | | | | | | | symbols with names quoted to force all-lower-case would not be identified properly in reflection queries. The :class:`.quoted_name` construct is now applied to incoming symbol names that detect as forced into all-lower-case within the "name normalize" process. fixes #3548
* - fix some more result_map callsMike Bayer2015-03-081-6/+6
|
* - the change for #918 was of course not nearly that simple.Mike Bayer2015-03-071-3/+11
| | | | | | | | | | | | | | | | | | The "wrapping" employed by the mssql and oracle dialects using the "iswrapper" argument was not being used intelligently by the compiler, and the result map was being written incorrectly, using *more* columns in the result map than were actually returned by the statement, due to "row number" columns that are inside the subquery. The compiler now writes out result map on the "top level" select in all cases fully, and for the mssql/oracle wrapping case extracts out the "proxied" columns in a second step, which only includes those columns that are proxied outwards to the top level. This change might have implications for 3rd party dialects that might be imitating oracle's approach. They can safely continue to use the "iswrapper" kw which is now ignored, but they may need to also add the _select_wraps argument as well.
* - cx_Oracle.makedsn can now be passed service_name; squashSławek Ehlert2014-04-021-0/+20
| | | | commit of pr152
* - New Oracle DDL features for tables, indexes: COMPRESS, BITMAP.Mike Bayer2014-12-041-1/+92
| | | | | Patch courtesy Gabor Gombas. fixes #3127
* - Added support for CTEs under Oracle. This includes some tweaksMike Bayer2014-12-041-0/+45
| | | | | | | to the aliasing syntax, as well as a new CTE feature :meth:`.CTE.suffix_with`, which is useful for adding in special Oracle-specific directives to the CTE. fixes #3220
* - Fixed long-standing bug in Oracle dialect where bound parameterMike Bayer2014-10-111-0/+22
| | | | | | names that started with numbers would not be quoted, as Oracle doesn't like numerics in bound parameter names. fixes #2138
* - Added support for the Oracle table option ON COMMIT. This is beingMike Bayer2014-09-171-0/+17
| | | | | | | | | kept separate from Postgresql's ON COMMIT for now even though ON COMMIT is in the SQL standard; the option is still very specific to temp tables and we eventually would provide a more first class temporary table feature. - oracle can apparently do get_temp_table_names() too, so implement that, fix its get_table_names(), and add it to #3204. fixes #3204 again.
* - The :func:`~.expression.column` and :func:`~.expression.table`Mike Bayer2014-09-011-1/+1
| | | | | | | | | | | | | | | | | | | | | constructs are now importable from the "from sqlalchemy" namespace, just like every other Core construct. - The implicit conversion of strings to :func:`.text` constructs when passed to most builder methods of :func:`.select` as well as :class:`.Query` now emits a warning with just the plain string sent. The textual conversion still proceeds normally, however. The only method that accepts a string without a warning are the "label reference" methods like order_by(), group_by(); these functions will now at compile time attempt to resolve a single string argument to a column or label expression present in the selectable; if none is located, the expression still renders, but you get the warning again. The rationale here is that the implicit conversion from string to text is more unexpected than not these days, and it is better that the user send more direction to the Core / ORM when passing a raw string as to what direction should be taken. Core/ORM tutorials have been updated to go more in depth as to how text is handled. fixes #2992
* - scale up for mysql, sqliteMike Bayer2014-07-261-59/+84
|
* - Fixed bug in oracle dialect test suite where in one test,Mike Bayer2014-07-181-4/+5
| | | | | 'username' was assumed to be in the database URL, even though this might not be the case. Fixes #3128
* - repair oracle compilation for new limit/offset system.Mike Bayer2014-05-241-15/+22
|
* - Added new datatype :class:`.oracle.DATE`, which is a subclass ofMike Bayer2014-03-221-10/+15
| | | | | | | | | | | | :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
* - cx_oracle test for "unicode returns" needs to be cx_oracle only,Mike Bayer2014-03-061-0/+4
| | | | | | | and also will fail on py3k. - enhance exclusions so that a requirement attribute can be passed to fails_if/skip_if. - fix coverage docs to mention pytest.
* Restore coercion to unicode with cx_Oracle.pr/74Christoph Zwerschke2014-02-271-2/+8
| | | | This feature is now turned off by default.
* - add support for specifying tables or entities for "of"Mike Bayer2013-11-281-1/+1
| | | | | - implement Query with_for_update() - rework docs and tests
* - fix up rendering of "of"Mike Bayer2013-11-281-0/+43
| | | | | | - move out tests, dialect specific out of compiler, compiler tests use new API, legacy API tests in test_selecatble - add support for adaptation of ForUpdateArg, alias support in compilers
* Fixed bug where Oracle ``VARCHAR`` types given with no lengthMike Bayer2013-11-221-0/+6
| | | | | (e.g. for a ``CAST`` or similar) would incorrectly render ``None CHAR`` or similar. [ticket:2870]
* - cleanupMike Bayer2013-11-221-267/+281
|
* - Fixed bug where Oracle table reflection using synonyms would failMike Bayer2013-10-251-0/+29
| | | | | if the synonym and the table were in different remote schemas. Patch to fix courtesy Kyle Derr. [ticket:2853]
* - Fixed bug in default compiler plus those of postgresql, mysql, andMike Bayer2013-10-121-0/+11
| | | | | | | | mssql to ensure that any literal SQL expression values are rendered directly as literals, instead of as bound parameters, within a CREATE INDEX statement. [ticket:2742] - don't need expression_as_ddl(); literal_binds and include_table take care of this functionality.
* can remove this, issue is fixedMike Bayer2013-06-171-10/+1
|
* - clean up this test (really we don't even need this, it's not testing much)Mike Bayer2013-06-161-13/+20
| | | | | - for the moment, put a catch in it to see if we can trap that issue on jenkins
* get nested joins to render on oracle 8Mike Bayer2013-06-081-0/+33
|
* - oracle tests passing in py3k!!Mike Bayer2013-05-261-6/+7
|
* a few more oracle fixesMike Bayer2013-05-261-1/+2
|
* cleanup for oracleMike Bayer2013-05-261-10/+11
|
* merge defaultMike Bayer2013-05-151-0/+10
|\
| * Regression from this ticket caused the unsupported keywordMike Bayer2013-05-151-0/+10
| | | | | | | | | | | | "true" to render, added logic to convert this to 1/0 for SQL server. [ticket:2682]
* | - the raw 2to3 runMike Bayer2013-04-271-16/+16
|/ | | | - went through examples/ and cleaned out excess list() calls
* - remove all compat items that are pre-2.5 (hooray)Mike Bayer2013-03-091-3/+2
| | | | | | - other cleanup - don't need compat.decimal, that approach never panned out. hopefully outside libs aren't pulling it in, they shouldn't be
* add futureMike Bayer2012-12-111-0/+1
|
* Fixed table reflection for Oracle when accessing a synonym that refersMike Bayer2012-12-091-0/+39
| | | | | | | | | | to a DBLINK remote database; while the syntax has been present in the Oracle dialect for some time, up until now it has never been tested. The syntax has been tested against a sample database linking to itself, however there's still some uncertainty as to what should be used for the "owner" when querying the remote database for table information. Currently, the value of "username" from user_db_links is used to match the "owner". [ticket:2619]
* The Oracle LONG type, while an unbounded text type, does not appearMike Bayer2012-12-061-0/+15
| | | | | | | to use the cx_Oracle.LOB type when result rows are returned, so the dialect has been repaired to exclude LONG from having cx_Oracle.LOB filtering applied. Also in 0.7.10. [ticket:2620]
* Repaired the usage of ``.prepare()`` in conjunction withMike Bayer2012-12-061-0/+70
| | | | | | | | | | | cx_Oracle so that a return value of ``False`` will result in no call to ``connection.commit()``, hence avoiding "no transaction" errors. Two-phase transactions have now been shown to work in a rudimental fashion with SQLAlchemy and cx_oracle, however are subject to caveats observed with the driver; check the documentation for details. Also in 0.7.10. [ticket:2611]
* Fixed bug in type_coerce() whereby typing informationMike Bayer2012-11-121-1/+10
| | | | | | | | could be lost if the statement were used as a subquery inside of another statement, as well as other similar situations. Among other things, would cause typing information to be lost when the Oracle/mssql dialects would apply limit/offset wrappings. [ticket:2603]
* - [bug] The CreateIndex construct in OracleMike Bayer2012-09-301-1/+11
| | | | | | | | will now schema-qualify the name of the index to be that of the parent table. Previously this name was omitted which apparently creates the index in the default schema, rather than that of the table.
* pg and oracle fixesMike Bayer2012-09-301-0/+1
|
* getting everything to pass againMike Bayer2012-09-271-1/+2
|
* trying different approaches to test layout. in this one, the testing modulesMike Bayer2012-09-271-4/+4
| | | | | | | become an externally usable package but still remains within the main sqlalchemy parent package. in this system, we use kind of an ugly hack to get the noseplugin imported outside of the "sqlalchemy" package, while still making it available within sqlalchemy for usage by third party libraries.
* - [feature] The types of columns excluded from theMike Bayer2012-09-051-0/+20
| | | | | | | | setinputsizes() set can be customized by sending a list of string DBAPI type names to exclude. This list was previously fixed. The list also now defaults to STRING, UNICODE, removing CLOB, NCLOB from the list. [ticket:2469]
* - refine oracle returning some more to use purely positional approachMike Bayer2012-08-251-2/+2
|
* - mergeMike Bayer2012-08-251-3/+5
|\