44
44
<script type="text/javascript" src="../_static/doctools.js"></script>
45
45
<!-- end iterate through sphinx environment script_files -->
47
<script type="text/javascript" src="../_static/detectmobile.js"></script>
47
48
<script type="text/javascript" src="../_static/init.js"></script>
48
49
<link rel="index" title="Index" href="../genindex.html" />
49
50
<link rel="search" title="Search" href="../search.html" />
72
74
<div id="docs-container">
80
<div id="docs-top-navigation-container" class="body-background">
77
81
<div id="docs-header">
82
<div id="docs-version-header">
83
Release: <span class="version-num">0.9.6</span> | Release Date: June 23, 2014
78
86
<h1>SQLAlchemy 0.9 Documentation</h1>
80
<div id="docs-search">
82
<form class="search" action="../search.html" method="get">
83
<input type="text" name="q" size="18" /> <input type="submit" value="Search" />
84
<input type="hidden" name="check_keywords" value="yes" />
85
<input type="hidden" name="area" value="default" />
89
<div id="docs-version-header">
90
Release: <span class="version-num">0.9.4</span> | Release Date: March 28, 2014
97
<div id="docs-top-navigation">
98
<div id="docs-top-page-control" class="docs-navigation-links">
91
<div id="docs-body-container">
93
<div id="fixed-sidebar" class="withsidebar">
96
<div id="docs-sidebar-popout">
97
<h3><a href="../index.html">SQLAlchemy 0.9 Documentation</a></h3>
99
<p id="sidebar-paginate">
100
<a href="index.html" title="Changes and Migration">Up</a> |
102
<a href="changelog_05.html" title="0.5 Changelog">Prev</a> |
103
<a href="changelog_03.html" title="0.3 Changelog">Next</a>
106
<p id="sidebar-topnav">
107
<a href="../index.html">Contents</a> |
108
<a href="../genindex.html">Index</a>
111
<div id="sidebar-search">
112
<form class="search" action="../search.html" method="get">
113
<input type="text" name="q" size="12" /> <input type="submit" value="Search" />
114
<input type="hidden" name="check_keywords" value="yes" />
115
<input type="hidden" name="area" value="default" />
121
<div id="docs-sidebar">
101
<a href="changelog_05.html" title="previous chapter">0.5 Changelog</a>
104
<a href="changelog_03.html" title="next chapter">0.3 Changelog</a>
108
<a href="../contents.html">Table of Contents</a> |
109
<a href="../genindex.html">Index</a>
110
| <a href="../_sources/changelog/changelog_04.txt">view source
115
<div id="docs-navigation-banner">
116
<a href="../index.html">SQLAlchemy 0.9 Documentation</a>
117
» <a href="index.html" title="Changes and Migration">Changes and Migration</a>
131
<div id="docs-body-container">
133
<div id="docs-sidebar">
134
<h3><a href="../index.html">Table of Contents</a></h3>
136
128
<li><a class="reference internal" href="#">0.4 Changelog</a><ul>
137
129
<li><a class="reference internal" href="#change-0.4.8">0.4.8</a><ul>
138
130
<li><a class="reference internal" href="#change-0.4.8-orm">orm</a></li>
231
<h4>Previous Topic</h4>
233
<a href="changelog_05.html" title="previous chapter">0.5 Changelog</a>
237
<a href="changelog_03.html" title="next chapter">0.3 Changelog</a>
241
<h4>Quick Search</h4>
243
<form class="search" action="../search.html" method="get">
244
<input type="text" name="q" size="18" /> <input type="submit" value="Search" />
245
<input type="hidden" name="check_keywords" value="yes" />
246
<input type="hidden" name="area" value="default" />
252
231
<div id="docs-body" class="withsidebar" >
254
233
<div class="section" id="changelog">
1338
1317
transaction directly to the parent of the transaction
1339
1318
that could be rolled back to. Now it rolls back the next
1340
1319
transaction up that can handle it, but sets the current
1341
transaction to it’s parent and inactivates the
1320
transaction to its parent and inactivates the
1342
1321
transactions in between. Inactive transactions can only
1343
1322
be rolled back or closed, any other call results in an
1345
1324
<li>autoflush for commit() wasn’t flushing for simple
1346
1325
subtransactions.</li>
1347
1326
<li>unitofwork flush didn’t close the failed transaction
1348
when the session was not in a transaction and commiting
1327
when the session was not in a transaction and committing
1349
1328
the transaction failed.</li>
1461
1440
<ul class="simple">
1462
1441
<li><p id="change-0.4.3-40"><span class="target" id="change-f63c306a189efd4f901b963ab28adb1f"><strong>[dialects] </strong></span>Better support for schemas in SQLite (linked in by ATTACH
1463
1442
DATABASE ... AS name). In some cases in the past, schema
1464
names were ommitted from generated SQL for SQLite. This is
1443
names were omitted from generated SQL for SQLite. This is
1465
1444
no longer the case.<a class="changeset-link headerlink reference internal" href="#change-f63c306a189efd4f901b963ab28adb1f">¶</a><p></p>
2614
2593
etc., are also no longer imported into your namespace<a class="changeset-link headerlink reference internal" href="#change-2663410f9071b570a253c86fb4d09031">¶</a><p></p>
2617
<li><p id="change-0.4.0beta4-3"><span class="target" id="change-dca15652477c49266ba58637beea290e"></span>The ‘Smallinteger’ compatiblity name (small i!) is no longer imported,
2596
<li><p id="change-0.4.0beta4-3"><span class="target" id="change-487de14a19636219ee9867528df4aee5"></span>The ‘Smallinteger’ compatibility name (small i!) is no longer imported,
2618
2597
but remains in schema.py for now. SmallInteger (big I!) is still
2619
imported.<a class="changeset-link headerlink reference internal" href="#change-dca15652477c49266ba58637beea290e">¶</a><p></p>
2598
imported.<a class="changeset-link headerlink reference internal" href="#change-487de14a19636219ee9867528df4aee5">¶</a><p></p>
2622
2601
<li><p id="change-0.4.0beta4-4"><span class="target" id="change-8b98efdb7b0519850778b7118b3c2e6d"></span>The connection pool uses a “threadlocal” strategy internally to return
2843
2822
<li><p id="change-0.4.0beta1-11"><span class="target" id="change-1693eadbe7a1e73418dc29c3c9f5f383"><strong>[orm] </strong></span>Class-level properties are now usable as query elements... no more
2844
‘.c.’! “Class.c.propname” is now superceded by “Class.propname”. All
2823
‘.c.’! “Class.c.propname” is now superseded by “Class.propname”. All
2845
2824
clause operators are supported, as well as higher level operators such
2846
2825
as Class.prop==<some instance> for scalar attributes,
2847
2826
Class.prop.contains(<some instance>) and Class.prop.any(<some
2971
2950
query.get() clauses, etc. and act as though they are regular single-column
2972
2951
scalars... except they’re not! Use the function composite(cls, *columns)
2973
2952
inside of the mapper’s “properties” dict, and instances of cls will be
2974
created/mapped to a single attribute, comprised of the values correponding
2953
created/mapped to a single attribute, comprised of the values corresponding
2975
2954
to *columns.<a class="changeset-link headerlink reference internal" href="#change-3ee39648a350e0ce7f6e88a460ef4222">¶</a><p>References: <a class="reference external" href="http://www.sqlalchemy.org/trac/ticket/211">#211</a></p>
2990
2969
<li><p id="change-0.4.0beta1-33"><span class="target" id="change-8b14a583258b389d8befb88ffab4616e"><strong>[orm] </strong></span>Joined-table inheritance will now generate the primary key columns of all
2991
2970
inherited classes against the root table of the join only. This implies
2992
2971
that each row in the root table is distinct to a single instance. If for
2993
some rare reason this is not desireable, explicit primary_key settings on
2972
some rare reason this is not desirable, explicit primary_key settings on
2994
2973
individual mappers will override it.<a class="changeset-link headerlink reference internal" href="#change-8b14a583258b389d8befb88ffab4616e">¶</a><p></p>
3032
3011
<h3>sql<a class="headerlink" href="#change-0.4.0beta1-sql" title="Permalink to this headline">¶</a></h3>
3033
3012
<ul class="simple">
3034
3013
<li><p id="change-0.4.0beta1-40"><span class="target" id="change-194d03e759795cb2ff68bbe9af23b306"><strong>[sql] </strong></span>Speed! Clause compilation as well as the mechanics of SQL constructs have
3035
been streamlined and simplified to a signficant degree, for a 20-30%
3014
been streamlined and simplified to a significant degree, for a 20-30%
3036
3015
improvement of the statement construction/compilation overhead of 0.3.<a class="changeset-link headerlink reference internal" href="#change-194d03e759795cb2ff68bbe9af23b306">¶</a><p></p>
3044
3023
<li><p id="change-0.4.0beta1-42"><span class="target" id="change-52f227bbb5a90b801adc6ecfd0cc6e3a"><strong>[sql] </strong></span>case_sensitive=(True|False) setting removed from schema items, since
3045
3024
checking this state added a lot of method call overhead and there was no
3046
3025
decent reason to ever set it to False. Table and column names which are
3047
all lower case will be treated as case-insenstive (yes we adjust for
3026
all lower case will be treated as case-insensitive (yes we adjust for
3048
3027
Oracle’s UPPERCASE style too).<a class="changeset-link headerlink reference internal" href="#change-52f227bbb5a90b801adc6ecfd0cc6e3a">¶</a><p></p>
3075
3054
<ul class="simple">
3076
3055
<li><p id="change-0.4.0beta1-48"><span class="target" id="change-cf0060d4bbf9e676c4a7c5beb5f02382"><strong>[oracle] </strong></span>Very rudimental support for OUT parameters added; use sql.outparam(name,
3077
3056
type) to set up an OUT parameter, just like bindparam(); after execution,
3078
values are avaiable via result.out_parameters dictionary.<a class="changeset-link headerlink reference internal" href="#change-cf0060d4bbf9e676c4a7c5beb5f02382">¶</a><p>References: <a class="reference external" href="http://www.sqlalchemy.org/trac/ticket/507">#507</a></p>
3057
values are available via result.out_parameters dictionary.<a class="changeset-link headerlink reference internal" href="#change-cf0060d4bbf9e676c4a7c5beb5f02382">¶</a><p>References: <a class="reference external" href="http://www.sqlalchemy.org/trac/ticket/507">#507</a></p>