File: //usr/share/doc/python-sqlalchemy-0.9.8/doc/core/index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
SQLAlchemy Core
—
SQLAlchemy 0.9 Documentation
</title>
<!-- begin iterate through SQLA + sphinx environment css_files -->
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../_static/docs.css" type="text/css" />
<link rel="stylesheet" href="../_static/sphinx_paramlinks.css" type="text/css" />
<link rel="stylesheet" href="../_static/changelog.css" type="text/css" />
<!-- end iterate through SQLA + sphinx environment css_files -->
<!-- begin layout.mako headers -->
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
VERSION: '0.9.8',
COLLAPSE_MODINDEX: false,
FILE_SUFFIX: '.html'
};
</script>
<!-- begin iterate through sphinx environment script_files -->
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<!-- end iterate through sphinx environment script_files -->
<script type="text/javascript" src="../_static/detectmobile.js"></script>
<script type="text/javascript" src="../_static/init.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="copyright" title="Copyright" href="../copyright.html" />
<link rel="top" title="SQLAlchemy 0.9 Documentation" href="../index.html" />
<link rel="next" title="SQL Expression Language Tutorial" href="tutorial.html" />
<link rel="prev" title="ORM Internals" href="../orm/internals.html" />
<!-- end layout.mako headers -->
</head>
<body>
<div id="docs-container">
<div id="docs-top-navigation-container" class="body-background">
<div id="docs-header">
<div id="docs-version-header">
Release: <span class="version-num">0.9.8</span> | Release Date: October 13, 2014
</div>
<h1>SQLAlchemy 0.9 Documentation</h1>
</div>
</div>
<div id="docs-body-container">
<div id="fixed-sidebar" class="withsidebar">
<div id="docs-sidebar-popout">
<h3><a href="../index.html">SQLAlchemy 0.9 Documentation</a></h3>
<p id="sidebar-paginate">
<a href="../index.html" title="SQLAlchemy 0.9 Documentation">Up</a> |
<a href="../orm/internals.html" title="ORM Internals">Prev</a> |
<a href="tutorial.html" title="SQL Expression Language Tutorial">Next</a>
</p>
<p id="sidebar-topnav">
<a href="../index.html">Contents</a> |
<a href="../genindex.html">Index</a>
</p>
<div id="sidebar-search">
<form class="search" action="../search.html" method="get">
<input type="text" name="q" size="12" /> <input type="submit" value="Search" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div id="docs-sidebar">
<h3><a href="#">
SQLAlchemy Core
</a></h3>
<ul>
<li><a class="reference internal" href="#">SQLAlchemy Core</a><ul>
</ul>
</li>
</ul>
</div>
</div>
<div id="docs-body" class="withsidebar" >
<div class="section" id="sqlalchemy-core">
<span id="core-toplevel"></span><h1>SQLAlchemy Core<a class="headerlink" href="#sqlalchemy-core" title="Permalink to this headline">¶</a></h1>
<p>The breadth of SQLAlchemy’s SQL rendering engine, DBAPI integration,
transaction integration, and schema description services are documented here.
In contrast to the ORM’s domain-centric mode of usage, the SQL Expression
Language provides a schema-centric usage paradigm.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="tutorial.html">SQL Expression Language Tutorial</a><ul>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#version-check">Version Check</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#connecting">Connecting</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#define-and-create-tables">Define and Create Tables</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#insert-expressions">Insert Expressions</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#executing">Executing</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#executing-multiple-statements">Executing Multiple Statements</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#selecting">Selecting</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#operators">Operators</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#operator-customization">Operator Customization</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#conjunctions">Conjunctions</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#using-text">Using Text</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#using-more-specific-text-with-table-literal-column-and-column">Using More Specific Text with <tt class="docutils literal"><span class="pre">table()</span></tt>, <tt class="docutils literal"><span class="pre">literal_column()</span></tt>, and <tt class="docutils literal"><span class="pre">column()</span></tt></a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#ordering-or-grouping-by-a-label">Ordering or Grouping by a Label</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#using-aliases">Using Aliases</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#using-joins">Using Joins</a></li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#everything-else">Everything Else</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#bind-parameter-objects">Bind Parameter Objects</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#functions">Functions</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#window-functions">Window Functions</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#unions-and-other-set-operations">Unions and Other Set Operations</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#scalar-selects">Scalar Selects</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#correlated-subqueries">Correlated Subqueries</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#ordering-grouping-limiting-offset-ing">Ordering, Grouping, Limiting, Offset...ing...</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#inserts-updates-and-deletes">Inserts, Updates and Deletes</a><ul>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#correlated-updates">Correlated Updates</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#multiple-table-updates">Multiple Table Updates</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#deletes">Deletes</a></li>
<li class="toctree-l3"><a class="reference internal" href="tutorial.html#matched-row-counts">Matched Row Counts</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="tutorial.html#further-reference">Further Reference</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="expression_api.html">SQL Statements and Expressions API</a><ul>
<li class="toctree-l2"><a class="reference internal" href="sqlelement.html">Column Elements and Expressions</a></li>
<li class="toctree-l2"><a class="reference internal" href="selectable.html">Selectables, Tables, FROM objects</a></li>
<li class="toctree-l2"><a class="reference internal" href="dml.html">Insert, Updates, Deletes</a></li>
<li class="toctree-l2"><a class="reference internal" href="functions.html">SQL and Generic Functions</a></li>
<li class="toctree-l2"><a class="reference internal" href="types.html">Column and Data Types</a><ul>
<li class="toctree-l3"><a class="reference internal" href="types.html#generic-types">Generic Types</a></li>
<li class="toctree-l3"><a class="reference internal" href="types.html#sql-standard-types">SQL Standard Types</a></li>
<li class="toctree-l3"><a class="reference internal" href="types.html#vendor-specific-types">Vendor-Specific Types</a></li>
<li class="toctree-l3"><a class="reference internal" href="types.html#custom-types">Custom Types</a></li>
<li class="toctree-l3"><a class="reference internal" href="types.html#base-type-api">Base Type API</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="schema.html">Schema Definition Language</a><ul>
<li class="toctree-l2"><a class="reference internal" href="metadata.html">Describing Databases with MetaData</a><ul>
<li class="toctree-l3"><a class="reference internal" href="metadata.html#accessing-tables-and-columns">Accessing Tables and Columns</a></li>
<li class="toctree-l3"><a class="reference internal" href="metadata.html#creating-and-dropping-database-tables">Creating and Dropping Database Tables</a></li>
<li class="toctree-l3"><a class="reference internal" href="metadata.html#altering-schemas-through-migrations">Altering Schemas through Migrations</a></li>
<li class="toctree-l3"><a class="reference internal" href="metadata.html#specifying-the-schema-name">Specifying the Schema Name</a></li>
<li class="toctree-l3"><a class="reference internal" href="metadata.html#backend-specific-options">Backend-Specific Options</a></li>
<li class="toctree-l3"><a class="reference internal" href="metadata.html#column-table-metadata-api">Column, Table, MetaData API</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="reflection.html">Reflecting Database Objects</a><ul>
<li class="toctree-l3"><a class="reference internal" href="reflection.html#overriding-reflected-columns">Overriding Reflected Columns</a></li>
<li class="toctree-l3"><a class="reference internal" href="reflection.html#reflecting-views">Reflecting Views</a></li>
<li class="toctree-l3"><a class="reference internal" href="reflection.html#reflecting-all-tables-at-once">Reflecting All Tables at Once</a></li>
<li class="toctree-l3"><a class="reference internal" href="reflection.html#fine-grained-reflection-with-inspector">Fine Grained Reflection with Inspector</a></li>
<li class="toctree-l3"><a class="reference internal" href="reflection.html#limitations-of-reflection">Limitations of Reflection</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="defaults.html">Column Insert/Update Defaults</a><ul>
<li class="toctree-l3"><a class="reference internal" href="defaults.html#scalar-defaults">Scalar Defaults</a></li>
<li class="toctree-l3"><a class="reference internal" href="defaults.html#python-executed-functions">Python-Executed Functions</a></li>
<li class="toctree-l3"><a class="reference internal" href="defaults.html#sql-expressions">SQL Expressions</a></li>
<li class="toctree-l3"><a class="reference internal" href="defaults.html#server-side-defaults">Server Side Defaults</a></li>
<li class="toctree-l3"><a class="reference internal" href="defaults.html#triggered-columns">Triggered Columns</a></li>
<li class="toctree-l3"><a class="reference internal" href="defaults.html#defining-sequences">Defining Sequences</a></li>
<li class="toctree-l3"><a class="reference internal" href="defaults.html#default-objects-api">Default Objects API</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="constraints.html">Defining Constraints and Indexes</a><ul>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#defining-foreign-keys">Defining Foreign Keys</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#unique-constraint">UNIQUE Constraint</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#check-constraint">CHECK Constraint</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#primary-key-constraint">PRIMARY KEY Constraint</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#setting-up-constraints-when-using-the-declarative-orm-extension">Setting up Constraints when using the Declarative ORM Extension</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#configuring-constraint-naming-conventions">Configuring Constraint Naming Conventions</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#constraints-api">Constraints API</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#indexes">Indexes</a></li>
<li class="toctree-l3"><a class="reference internal" href="constraints.html#index-api">Index API</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="ddl.html">Customizing DDL</a><ul>
<li class="toctree-l3"><a class="reference internal" href="ddl.html#controlling-ddl-sequences">Controlling DDL Sequences</a></li>
<li class="toctree-l3"><a class="reference internal" href="ddl.html#custom-ddl">Custom DDL</a></li>
<li class="toctree-l3"><a class="reference internal" href="ddl.html#ddl-expression-constructs-api">DDL Expression Constructs API</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="engines.html">Engine Configuration</a><ul>
<li class="toctree-l2"><a class="reference internal" href="engines.html#supported-databases">Supported Databases</a></li>
<li class="toctree-l2"><a class="reference internal" href="engines.html#database-urls">Database Urls</a><ul>
<li class="toctree-l3"><a class="reference internal" href="engines.html#postgresql">Postgresql</a></li>
<li class="toctree-l3"><a class="reference internal" href="engines.html#mysql">MySQL</a></li>
<li class="toctree-l3"><a class="reference internal" href="engines.html#oracle">Oracle</a></li>
<li class="toctree-l3"><a class="reference internal" href="engines.html#microsoft-sql-server">Microsoft SQL Server</a></li>
<li class="toctree-l3"><a class="reference internal" href="engines.html#sqlite">SQLite</a></li>
<li class="toctree-l3"><a class="reference internal" href="engines.html#others">Others</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="engines.html#engine-creation-api">Engine Creation API</a></li>
<li class="toctree-l2"><a class="reference internal" href="engines.html#pooling">Pooling</a></li>
<li class="toctree-l2"><a class="reference internal" href="engines.html#custom-dbapi-connect-arguments">Custom DBAPI connect() arguments</a></li>
<li class="toctree-l2"><a class="reference internal" href="engines.html#configuring-logging">Configuring Logging</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="connections.html">Working with Engines and Connections</a><ul>
<li class="toctree-l2"><a class="reference internal" href="connections.html#basic-usage">Basic Usage</a></li>
<li class="toctree-l2"><a class="reference internal" href="connections.html#using-transactions">Using Transactions</a><ul>
<li class="toctree-l3"><a class="reference internal" href="connections.html#nesting-of-transaction-blocks">Nesting of Transaction Blocks</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="connections.html#understanding-autocommit">Understanding Autocommit</a></li>
<li class="toctree-l2"><a class="reference internal" href="connections.html#connectionless-execution-implicit-execution">Connectionless Execution, Implicit Execution</a></li>
<li class="toctree-l2"><a class="reference internal" href="connections.html#using-the-threadlocal-execution-strategy">Using the Threadlocal Execution Strategy</a></li>
<li class="toctree-l2"><a class="reference internal" href="connections.html#working-with-raw-dbapi-connections">Working with Raw DBAPI Connections</a><ul>
<li class="toctree-l3"><a class="reference internal" href="connections.html#calling-stored-procedures">Calling Stored Procedures</a></li>
<li class="toctree-l3"><a class="reference internal" href="connections.html#multiple-result-sets">Multiple Result Sets</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="connections.html#registering-new-dialects">Registering New Dialects</a><ul>
<li class="toctree-l3"><a class="reference internal" href="connections.html#registering-dialects-in-process">Registering Dialects In-Process</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="connections.html#connection-engine-api">Connection / Engine API</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="pooling.html">Connection Pooling</a><ul>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#connection-pool-configuration">Connection Pool Configuration</a></li>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#switching-pool-implementations">Switching Pool Implementations</a></li>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#using-a-custom-connection-function">Using a Custom Connection Function</a></li>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#constructing-a-pool">Constructing a Pool</a></li>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#pool-events">Pool Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#dealing-with-disconnects">Dealing with Disconnects</a><ul>
<li class="toctree-l3"><a class="reference internal" href="pooling.html#disconnect-handling-optimistic">Disconnect Handling - Optimistic</a></li>
<li class="toctree-l3"><a class="reference internal" href="pooling.html#disconnect-handling-pessimistic">Disconnect Handling - Pessimistic</a></li>
<li class="toctree-l3"><a class="reference internal" href="pooling.html#more-on-invalidation">More on Invalidation</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#api-documentation-available-pool-implementations">API Documentation - Available Pool Implementations</a></li>
<li class="toctree-l2"><a class="reference internal" href="pooling.html#pooling-plain-db-api-connections">Pooling Plain DB-API Connections</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="event.html">Events</a><ul>
<li class="toctree-l2"><a class="reference internal" href="event.html#event-registration">Event Registration</a></li>
<li class="toctree-l2"><a class="reference internal" href="event.html#named-argument-styles">Named Argument Styles</a></li>
<li class="toctree-l2"><a class="reference internal" href="event.html#targets">Targets</a></li>
<li class="toctree-l2"><a class="reference internal" href="event.html#modifiers">Modifiers</a></li>
<li class="toctree-l2"><a class="reference internal" href="event.html#event-reference">Event Reference</a></li>
<li class="toctree-l2"><a class="reference internal" href="event.html#api-reference">API Reference</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="events.html">Core Events</a><ul>
<li class="toctree-l2"><a class="reference internal" href="events.html#connection-pool-events">Connection Pool Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="events.html#sql-execution-and-connection-events">SQL Execution and Connection Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="events.html#schema-events">Schema Events</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="compiler.html">Custom SQL Constructs and Compilation Extension</a><ul>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#synopsis">Synopsis</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#dialect-specific-compilation-rules">Dialect-specific compilation rules</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#compiling-sub-elements-of-a-custom-expression-construct">Compiling sub-elements of a custom expression construct</a><ul>
<li class="toctree-l3"><a class="reference internal" href="compiler.html#cross-compiling-between-sql-and-ddl-compilers">Cross Compiling between SQL and DDL compilers</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#enabling-autocommit-on-a-construct">Enabling Autocommit on a Construct</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#changing-the-default-compilation-of-existing-constructs">Changing the default compilation of existing constructs</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#changing-compilation-of-types">Changing Compilation of Types</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#subclassing-guidelines">Subclassing Guidelines</a></li>
<li class="toctree-l2"><a class="reference internal" href="compiler.html#further-examples">Further Examples</a><ul>
<li class="toctree-l3"><a class="reference internal" href="compiler.html#utc-timestamp-function">“UTC timestamp” function</a></li>
<li class="toctree-l3"><a class="reference internal" href="compiler.html#greatest-function">“GREATEST” function</a></li>
<li class="toctree-l3"><a class="reference internal" href="compiler.html#false-expression">“false” expression</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="inspection.html">Runtime Inspection API</a><ul>
<li class="toctree-l2"><a class="reference internal" href="inspection.html#available-inspection-targets">Available Inspection Targets</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="serializer.html">Expression Serializer Extension</a></li>
<li class="toctree-l1"><a class="reference internal" href="interfaces.html">Deprecated Event Interfaces</a><ul>
<li class="toctree-l2"><a class="reference internal" href="interfaces.html#execution-connection-and-cursor-events">Execution, Connection and Cursor Events</a></li>
<li class="toctree-l2"><a class="reference internal" href="interfaces.html#connection-pool-events">Connection Pool Events</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="exceptions.html">Core Exceptions</a></li>
<li class="toctree-l1"><a class="reference internal" href="internals.html">Core Internals</a></li>
</ul>
</div>
</div>
</div>
</div>
<div id="docs-bottom-navigation" class="docs-navigation-links">
Previous:
<a href="../orm/internals.html" title="previous chapter">ORM Internals</a>
Next:
<a href="tutorial.html" title="next chapter">SQL Expression Language Tutorial</a>
<div id="docs-copyright">
© <a href="../copyright.html">Copyright</a> 2007-2014, the SQLAlchemy authors and contributors.
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.2b1.
</div>
</div>
</div>
</body>
</html>