such as ``.. versionadded::``, ``.. versionchanged::`` and ``.. deprecated::``.
"""
information schema implementation.
-This module is deprecated and will not be present in this form in SQLAlchemy 0.6.
+.. deprecated::
+ This module is deprecated and will not be present in this form in SQLAlchemy 0.6.
"""
from sqlalchemy import util
LIMIT/OFFSET Support
--------------------
-Oracle has no support for the LIMIT or OFFSET keywords. Whereas previous versions of SQLAlchemy
-used the "ROW NUMBER OVER..." construct to simulate LIMIT/OFFSET, SQLAlchemy 0.5 now uses
-a wrapped subquery approach in conjunction with ROWNUM. The exact methodology is taken from
-http://www.oracle.com/technology/oramag/oracle/06-sep/o56asktom.html . Note that the
-"FIRST ROWS()" optimization keyword mentioned is not used by default, as the user community felt
-this was stepping into the bounds of optimization that is better left on the DBA side, but this
-prefix can be added by enabling the optimize_limits=True flag on create_engine().
+Oracle has no support for the LIMIT or OFFSET keywords.
+
+.. versionchanged:: 0.5
+ Whereas previous versions of SQLAlchemy used the "ROW NUMBER OVER..."
+ construct to simulate LIMIT/OFFSET, SQLAlchemy 0.5 now uses
+ a wrapped subquery approach in conjunction with ROWNUM.
+ The exact methodology is taken from
+ http://www.oracle.com/technology/oramag/oracle/06-sep/o56asktom.html .
+ Note that the
+ "FIRST ROWS()" optimization keyword mentioned is not used by default,
+ as the user community felt this was stepping into the bounds
+ of optimization that is better left on the DBA side, but this
+ prefix can be added by enabling the optimize_limits=True flag
+ on create_engine().
Two Phase Transaction Support
-----------------------------
parameters are instances of ``unicode``, otherwise raises an
error. Only takes effect when ``convert_unicode==True``. This
flag is also available on the ``String`` type and its
- descendants. New in 0.4.2.
+ descendants.
+
+ .. versionadded:: 0.4.2
:param connect_args: a dictionary of options which will be
passed directly to the DBAPI's ``connect()`` method as
The ``compiler`` argument is the :class:`~sqlalchemy.engine.base.Compiled` object
in use. This object can be inspected for any information about the in-progress
compilation, including ``compiler.dialect``, ``compiler.statement`` etc.
-The :class:`~sqlalchemy.sql.compiler.SQLCompiler` and :class:`~sqlalchemy.sql.compiler.DDLCompiler` (DDLCompiler is 0.6. only)
+The :class:`~sqlalchemy.sql.compiler.SQLCompiler` and :class:`~sqlalchemy.sql.compiler.DDLCompiler`
both include a ``process()`` method which can be used for compilation of embedded attributes::
class InsertFromSelect(ClauseElement):
"INSERT INTO mytable (SELECT mytable.x, mytable.y, mytable.z FROM mytable WHERE mytable.x > :x_1)"
+.. versionadded:: 0.6
+ :class:`~sqlalchemy.sql.compiler.DDLCompiler`\ .
+
Changing the default compilation of existing constructs
=======================================================
"""
+.. versionchanged:: 0.8
+ SQLSoup is now its own project. Documentation
+ and project status are available at:
+ http://pypi.python.org/pypi/sqlsoup and
+ http://readthedocs.org/docs/sqlsoup\ .
+ SQLSoup will no longer be included with SQLAlchemy.
+
Introduction
============
This is used for many-to-one or many-to-many relationships that
should be treated either as one-to-one or one-to-many. Its
usage is optional unless delete-orphan cascade is also
- set on this relation(), in which case its required (new in 0.5.2).
-
+ set on this relation(), in which case its required.
+
+ .. versionadded:: 0.5.2
+
:param uselist=(True|False):
a boolean that indicates if this property should be loaded as a
list or a scalar. In most cases, this value is determined
instance population will not proceed, giving this extension an
opportunity to populate the instance itself, if desired.
- As of 0.5, most usages of this hook are obsolete. For a
- generic "object has been newly created from a row" hook, use
- ``reconstruct_instance()``, or the ``@orm.reconstructor``
- decorator.
+ .. deprecated:: 0.5
+ As of 0.5, most usages of this hook are obsolete. For a
+ generic "object has been newly created from a row" hook, use
+ ``reconstruct_instance()``, or the ``@orm.reconstructor``
+ decorator.
"""
return EXT_CONTINUE
instances behind the scenes, with one ``Transaction`` per ``Engine`` in
use.
- Direct usage of ``SessionTransaction`` is not necessary as of SQLAlchemy
- 0.4; use the ``begin()`` and ``commit()`` methods on ``Session`` itself.
+ .. versionchanged:: 0.4
+ Direct usage of ``SessionTransaction`` is not
+ necessary; use the ``begin()`` and ``commit()``
+ methods on ``Session`` itself.
The ``SessionTransaction`` object is **not** thread-safe.
select, for columns that are calculated to be "equivalent"
based on the join criterion of this :class:`Join`. This will
recursively apply to any joins directly nested by this one
- as well. This flag is specific to a particular use case
- by the ORM and will be deprecated in 0.6.
+ as well.
+
+ .. deprecated:: 0.6
+ This flag is specific to a particular use case by the ORM.
:param \**kwargs: all other kwargs are sent to the
underlying :func:`select()` function.