Documentation Source Text

Check-in [06452075a4]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Add documentaion on the reverse_unordered_selects pragma.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 06452075a4386737640d51baa75993f966329ace
User & Date: drh 2009-02-23 17:59:52
Context
2009-02-23
18:14
Added the beginnings of a change log for version 3.6.12. check-in: c926b561a2 user: drh tags: trunk
17:59
Add documentaion on the reverse_unordered_selects pragma. check-in: 06452075a4 user: drh tags: trunk
2009-02-22
16:52
Typo: change "what" to "want" in limits.html. check-in: 4c0e0cc065 user: drh tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to pages/pragma.in.

   488    488       between connections that share a common page and schema cache.
   489    489       Cache sharing is enabled using the [sqlite3_enable_shared_cache()] API.
   490    490       Cache sharing is disabled by default.
   491    491       </p>
   492    492   
   493    493       <p>See [SQLite Shared-Cache Mode] for additional information.</p>
   494    494   </li>
          495  +
          496  +<tcl>Subsection reverse_unordered_selects</tcl>
          497  +<li><p><b>PRAGMA reverse_unordered_selects = </b><i>0 | 1</i><b>;</b></p>
          498  +    <p>When enabled, this PRAGMA causes [SELECT] statements without a
          499  +    an ORDER BY clause to emit their results in the reverse order of what
          500  +    they normally would.  This can help debug applications that are
          501  +    making invalid assumptions about the result order.<p>SQLite makes no
          502  +    guarantees about the order of results if a SELECT omits the ORDER BY
          503  +    clause.  Even so, the order of results does not change from one
          504  +    run to the next, and so many applications mistakenly come to depend
          505  +    on the arbitrary output order whatever that order happens to be.  However, 
          506  +    sometimes new versions of SQLite will contain optimizer enhancements
          507  +    that will cause the output order of queries without ORDER BY clauses
          508  +    to shift.  When that happens, applications that depend on a certain
          509  +    output order might malfunction.  By running the application multiple
          510  +    times with this pragma both disabled and enabled, cases where the
          511  +    application makes faulty assumptions about output order can be
          512  +    identified and fixed early, reducing problems
          513  +    that might be caused by linking against a different version of SQLite.
          514  +    </p>
          515  +</li>
   495    516   
   496    517   <tcl>Subsection short_column_names</tcl>
   497    518   <li><p><b>PRAGMA short_column_names;
   498    519          <br>PRAGMA short_column_names = </b><i>0 | 1</i><b>;</b></p>
   499    520       <p>Query or change the short-column-names flag. This flag affects
   500    521       the way SQLite names columns of data returned by [SELECT] statements
   501    522       when the expression for the column is a table-column name or the