Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ccgus/fmdb.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAugust "Gus" Mueller <gus@flyingmeat.com>2020-05-12 07:47:03 +0300
committerGitHub <noreply@github.com>2020-05-12 07:47:03 +0300
commitaefd2dde1241c3565a5ef8df1d62b24ac3f0e374 (patch)
treecdb0f815e3fe09ac3d42fb553c9e153d59f95303
parent82e181c397328464c68825bdbe368c5d8d226c58 (diff)
parente302faa1af2793568becd399119bdbef4e1df2cf (diff)
Merge pull request #792 from ccgus/robertmryan/update-gh-pagesgh-pages
Update gh-pages
-rw-r--r--html/Blocks/FMDBExecuteStatementsCallbackBlock.html109
-rw-r--r--html/Categories.html143
-rw-r--r--html/Categories/FMDatabase+FMDatabaseAdditions.html1288
-rw-r--r--html/Categories/NSObject(FMDatabasePoolDelegate).html253
-rw-r--r--html/Categories/NSObject+FMDatabasePoolDelegate.html274
-rw-r--r--html/Classes.html398
-rw-r--r--html/Classes/FMDatabase.html12552
-rw-r--r--html/Classes/FMDatabasePool.html3039
-rw-r--r--html/Classes/FMDatabaseQueue.html3004
-rw-r--r--html/Classes/FMResultSet.html5413
-rw-r--r--html/Classes/FMStatement.html903
-rw-r--r--html/Constants.html172
-rw-r--r--html/Enums.html185
-rw-r--r--html/Enums/FMDBCheckpointMode.html247
-rw-r--r--html/Enums/SqliteValueType.html285
-rw-r--r--html/Type Definitions.html145
-rw-r--r--html/badge.svg28
-rw-r--r--html/css/highlight.css200
-rw-r--r--html/css/jazzy.css374
-rw-r--r--html/css/scss/_index.scss17
-rw-r--r--html/css/scss/_layout.scss302
-rw-r--r--html/css/scss/_normalize.scss581
-rw-r--r--html/css/scss/_object.scss89
-rw-r--r--html/css/scss/_print.scss42
-rw-r--r--html/css/scss/_variables.scss12
-rw-r--r--html/css/scss/_xcode.scss29
-rw-r--r--html/css/scss/style.scss1
-rw-r--r--html/css/style.css2
-rw-r--r--html/docsets/FMDB.docset/Contents/Info.plist20
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Categories.html143
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Categories/NSObject(FMDatabasePoolDelegate).html253
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Classes.html398
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabase.html6978
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabasePool.html1467
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabaseQueue.html1617
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMResultSet.html2662
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMStatement.html465
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Constants.html172
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Enums.html185
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/FMDBCheckpointMode.html247
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/SqliteValueType.html285
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/Type Definitions.html145
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/css/highlight.css200
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/css/jazzy.css374
-rwxr-xr-xhtml/docsets/FMDB.docset/Contents/Resources/Documents/img/carat.pngbin0 -> 274 bytes
-rwxr-xr-xhtml/docsets/FMDB.docset/Contents/Resources/Documents/img/dash.pngbin0 -> 1338 bytes
-rwxr-xr-xhtml/docsets/FMDB.docset/Contents/Resources/Documents/img/gh.pngbin0 -> 1571 bytes
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/index.html584
-rwxr-xr-xhtml/docsets/FMDB.docset/Contents/Resources/Documents/js/jazzy.js70
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/js/jquery.min.js2
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/Documents/search.json1
-rw-r--r--html/docsets/FMDB.docset/Contents/Resources/docSet.dsidxbin0 -> 69632 bytes
-rw-r--r--html/docsets/FMDB.tgzbin0 -> 112509 bytes
-rw-r--r--html/hierarchy.html114
-rw-r--r--html/img/button_bar_background.pngbin2825 -> 0 bytes
-rwxr-xr-xhtml/img/carat.pngbin0 -> 274 bytes
-rwxr-xr-xhtml/img/dash.pngbin0 -> 1338 bytes
-rw-r--r--html/img/disclosure.pngbin115 -> 0 bytes
-rw-r--r--html/img/disclosure_open.pngbin131 -> 0 bytes
-rwxr-xr-xhtml/img/gh.pngbin0 -> 1571 bytes
-rw-r--r--html/img/library_background.pngbin183 -> 0 bytes
-rw-r--r--html/img/title_background.pngbin177 -> 0 bytes
-rw-r--r--html/index.html696
-rwxr-xr-xhtml/js/jazzy.js70
-rw-r--r--html/js/jquery.min.js2
-rw-r--r--html/js/script.js59
-rw-r--r--html/search.json1
-rw-r--r--html/undocumented.json180
-rw-r--r--images/bg_hr.pngbin943 -> 0 bytes
-rw-r--r--images/blacktocat.pngbin1428 -> 0 bytes
-rw-r--r--images/icon_download.pngbin1162 -> 0 bytes
-rw-r--r--images/sprite_download.pngbin16799 -> 0 bytes
-rw-r--r--index.html304
-rw-r--r--javascripts/main.js1
-rw-r--r--params.json1
-rw-r--r--stylesheets/pygment_trac.css70
-rw-r--r--stylesheets/stylesheet.css429
77 files changed, 32345 insertions, 15937 deletions
diff --git a/html/Blocks/FMDBExecuteStatementsCallbackBlock.html b/html/Blocks/FMDBExecuteStatementsCallbackBlock.html
deleted file mode 100644
index e8bec92..0000000
--- a/html/Blocks/FMDBExecuteStatementsCallbackBlock.html
+++ /dev/null
@@ -1,109 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMDBExecuteStatementsCallbackBlock Block Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
-
-
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMDBExecuteStatementsCallbackBlock Block Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Declared in</th>
- <td>FMDatabase.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
-
-
-
-
-
- <a title="Block Definition" name="instance_methods"></a>
- <h4 class="method-subtitle parameter-title">Block Definition</h4>
- <h3 class="subsubtitle method-title">FMDBExecuteStatementsCallbackBlock</h3>
-
-
-<code>typedef int (^FMDBExecuteStatementsCallbackBlock) (NSDictionary *resultsDictionary)</code>
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
diff --git a/html/Categories.html b/html/Categories.html
new file mode 100644
index 0000000..041378a
--- /dev/null
+++ b/html/Categories.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Categories Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Categories" class="dashAnchor"></a>
+ <a title="Categories Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Categories Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Categories</h1>
+ <p>The following categories are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cy)NSObject@FMDatabasePoolDelegate"></a>
+ <a name="//apple_ref/objc/Extension/NSObject(FMDatabasePoolDelegate)" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cy)NSObject@FMDatabasePoolDelegate">NSObject(FMDatabasePoolDelegate)</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>FMDatabasePool delegate category</p>
+
+<p>This is a category that defines the protocol for the FMDatabasePool delegate</p>
+
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">NSObject</span> <span class="p">(</span><span class="nl">FMDatabasePoolDelegate</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/Categories/FMDatabase+FMDatabaseAdditions.html b/html/Categories/FMDatabase+FMDatabaseAdditions.html
deleted file mode 100644
index 9605063..0000000
--- a/html/Categories/FMDatabase+FMDatabaseAdditions.html
+++ /dev/null
@@ -1,1288 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMDatabase(FMDatabaseAdditions) Category Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
- <option value="overview">Overview</option>
-
-
-
-
- <option value="tasks">Tasks</option>
-
-
-
-
-
- <optgroup label="Properties">
-
- <option value="//api/name/applicationID">applicationID</option>
-
- <option value="//api/name/applicationIDString">applicationIDString</option>
-
- <option value="//api/name/userVersion">userVersion</option>
-
- </optgroup>
-
-
-
-
-
- <optgroup label="Instance Methods">
-
- <option value="//api/name/boolForQuery:">- boolForQuery:</option>
-
- <option value="//api/name/columnExists:columnName:">- columnExists:columnName:</option>
-
- <option value="//api/name/columnExists:inTableWithName:">- columnExists:inTableWithName:</option>
-
- <option value="//api/name/dataForQuery:">- dataForQuery:</option>
-
- <option value="//api/name/dateForQuery:">- dateForQuery:</option>
-
- <option value="//api/name/doubleForQuery:">- doubleForQuery:</option>
-
- <option value="//api/name/getSchema">- getSchema</option>
-
- <option value="//api/name/getTableSchema:">- getTableSchema:</option>
-
- <option value="//api/name/intForQuery:">- intForQuery:</option>
-
- <option value="//api/name/longForQuery:">- longForQuery:</option>
-
- <option value="//api/name/stringForQuery:">- stringForQuery:</option>
-
- <option value="//api/name/tableExists:">- tableExists:</option>
-
- <option value="//api/name/validateSQL:error:">- validateSQL:error:</option>
-
- </optgroup>
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMDatabase(FMDatabaseAdditions) Category Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Declared in</th>
- <td>FMDatabaseAdditions.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
- <div class="section section-overview">
- <a title="Overview" name="overview"></a>
- <h2 class="subtitle subtitle-overview">Overview</h2>
- <p>Category of additions for <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a> class.</p>
-
-<h3>See also</h3>
-
-<ul>
-<li><a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a></li>
-</ul>
-
- </div>
-
-
-
-
-
- <div class="section section-tasks">
- <a title="Tasks" name="tasks"></a>
-
-
- <a title="Return results of SQL to variable" name="task_Return results of SQL to variable"></a>
- <h2 class="task-title">Return results of SQL to variable</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/intForQuery:" title="intForQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/intForQuery:">&ndash;&nbsp;intForQuery:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>int</code> value for query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (int)intForQuery:(NSString *)<em>query</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>query</code></th>
- <td><p>The SQL query to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>A list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>int</code> value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>int</code> value for query</p><div class="note"><p><strong>Note:</strong> This is not available from Swift.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/longForQuery:" title="longForQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/longForQuery:">&ndash;&nbsp;longForQuery:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>long</code> value for query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (long)longForQuery:(NSString *)<em>query</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>query</code></th>
- <td><p>The SQL query to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>A list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>long</code> value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>long</code> value for query</p><div class="note"><p><strong>Note:</strong> This is not available from Swift.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/boolForQuery:" title="boolForQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/boolForQuery:">&ndash;&nbsp;boolForQuery:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>BOOL</code> value for query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)boolForQuery:(NSString *)<em>query</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>query</code></th>
- <td><p>The SQL query to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>A list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>BOOL</code> value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>BOOL</code> value for query</p><div class="note"><p><strong>Note:</strong> This is not available from Swift.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/doubleForQuery:" title="doubleForQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/doubleForQuery:">&ndash;&nbsp;doubleForQuery:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>double</code> value for query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (double)doubleForQuery:(NSString *)<em>query</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>query</code></th>
- <td><p>The SQL query to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>A list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>double</code> value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>double</code> value for query</p><div class="note"><p><strong>Note:</strong> This is not available from Swift.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/stringForQuery:" title="stringForQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/stringForQuery:">&ndash;&nbsp;stringForQuery:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>NSString</code> value for query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSString *_Nullable)stringForQuery:(NSString *)<em>query</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>query</code></th>
- <td><p>The SQL query to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>A list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>NSString</code> value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>NSString</code> value for query</p><div class="note"><p><strong>Note:</strong> This is not available from Swift.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dataForQuery:" title="dataForQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dataForQuery:">&ndash;&nbsp;dataForQuery:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>NSData</code> value for query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSData *_Nullable)dataForQuery:(NSString *)<em>query</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>query</code></th>
- <td><p>The SQL query to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>A list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>NSData</code> value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>NSData</code> value for query</p><div class="note"><p><strong>Note:</strong> This is not available from Swift.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dateForQuery:" title="dateForQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dateForQuery:">&ndash;&nbsp;dateForQuery:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>NSDate</code> value for query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSDate *_Nullable)dateForQuery:(NSString *)<em>query</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>query</code></th>
- <td><p>The SQL query to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>A list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>NSDate</code> value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>NSDate</code> value for query</p><div class="note"><p><strong>Note:</strong> This is not available from Swift.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
-
- <a title="Schema related operations" name="task_Schema related operations"></a>
- <h2 class="task-title">Schema related operations</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/tableExists:" title="tableExists:"></a>
- <h3 class="method-title"><code><a href="#//api/name/tableExists:">&ndash;&nbsp;tableExists:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Does table exist in database?</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)tableExists:(NSString *)<em>tableName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>tableName</code></th>
- <td><p>The name of the table being looked for.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if table found; <code>NO</code> if not found.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Does table exist in database?</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/getSchema" title="getSchema"></a>
- <h3 class="method-title"><code><a href="#//api/name/getSchema">&ndash;&nbsp;getSchema</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>The schema of the database.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (FMResultSet *)getSchema</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>FMResultSet</code> of schema; <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>The schema of the database.</p>
-
-<p>This will be the schema for the entire database. For each entity, each row of the result set will include the following fields:</p>
-
-<ul>
-<li><code>type</code> - The type of entity (e.g. table, index, view, or trigger)</li>
-<li><code>name</code> - The name of the object</li>
-<li><code>tbl_name</code> - The name of the table to which the object references</li>
-<li><code>rootpage</code> - The page number of the root b-tree page for tables and indices</li>
-<li><code>sql</code> - The SQL that created the entity</li>
-</ul>
-
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://www.sqlite.org/fileformat.html">SQLite File Format</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/getTableSchema:" title="getTableSchema:"></a>
- <h3 class="method-title"><code><a href="#//api/name/getTableSchema:">&ndash;&nbsp;getTableSchema:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>The schema of the database.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (FMResultSet *)getTableSchema:(NSString *)<em>tableName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>tableName</code></th>
- <td><p>The name of the table for whom the schema will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>FMResultSet</code> of schema; <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>The schema of the database.</p>
-
-<p>This will be the schema for a particular table as report by SQLite <code>PRAGMA</code>, for example:</p>
-
-<pre><code>PRAGMA table_info('employees')
-</code></pre>
-
-<p>This will report:</p>
-
-<ul>
-<li><code>cid</code> - The column ID number</li>
-<li><code>name</code> - The name of the column</li>
-<li><code>type</code> - The data type specified for the column</li>
-<li><code>notnull</code> - whether the field is defined as NOT NULL (i.e. values required)</li>
-<li><code>dflt_value</code> - The default value for the column</li>
-<li><code>pk</code> - Whether the field is part of the primary key of the table</li>
-</ul>
-
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://www.sqlite.org/pragma.html#pragma_table_info">table_info</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/columnExists:inTableWithName:" title="columnExists:inTableWithName:"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnExists:inTableWithName:">&ndash;&nbsp;columnExists:inTableWithName:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Test to see if particular column exists for particular table in database</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)columnExists:(NSString *)<em>columnName</em> inTableWithName:(NSString *)<em>tableName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p>The name of the column.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>tableName</code></th>
- <td><p>The name of the table.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if column exists in table in question; <code>NO</code> otherwise.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Test to see if particular column exists for particular table in database</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/columnExists:columnName:" title="columnExists:columnName:"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnExists:columnName:">&ndash;&nbsp;columnExists:columnName:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Test to see if particular column exists for particular table in database</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)columnExists:(NSString *)<em>tableName</em> columnName:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>tableName</code></th>
- <td><p>The name of the table.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p>The name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if column exists in table in question; <code>NO</code> otherwise.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Test to see if particular column exists for particular table in database</p><div class="warning"><p><strong>Warning:</strong> Deprecated - use <a href="#//api/name/columnExists:inTableWithName:"><code>columnExists:inTableWithName:</code></a> instead.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/columnExists:inTableWithName:">- columnExists:inTableWithName:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/validateSQL:error:" title="validateSQL:error:"></a>
- <h3 class="method-title"><code><a href="#//api/name/validateSQL:error:">&ndash;&nbsp;validateSQL:error:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Validate SQL statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)validateSQL:(NSString *)<em>sql</em> error:(NSError *_Nullable *)<em>error</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL statement being validated.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>error</code></th>
- <td><p>This is a pointer to a <code>NSError</code> object that will receive the autoreleased <code>NSError</code> object if there was any error. If this is <code>nil</code>, no <code>NSError</code> result will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if validation succeeded without incident; <code>NO</code> otherwise.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Validate SQL statement</p>
-
-<p>This validates SQL statement by performing <code>sqlite3_prepare_v2</code>, but not returning the results, but instead immediately calling <code>sqlite3_finalize</code>.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
-
- <a title="Application identifier tasks" name="task_Application identifier tasks"></a>
- <h2 class="task-title">Application identifier tasks</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/applicationID" title="applicationID"></a>
- <h3 class="method-title"><code><a href="#//api/name/applicationID">&nbsp;&nbsp;applicationID</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Retrieve application ID</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic) uint32_t applicationID</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>uint32_t</code> numeric value of the application ID.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Retrieve application ID</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/applicationID">@property applicationID</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/applicationIDString" title="applicationIDString"></a>
- <h3 class="method-title"><code><a href="#//api/name/applicationIDString">&nbsp;&nbsp;applicationIDString</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Retrieve application ID string</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, retain) NSString *applicationIDString</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Retrieve application ID string</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/applicationIDString">@property applicationIDString</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
-
- <a title="user version identifier tasks" name="task_user version identifier tasks"></a>
- <h2 class="task-title">user version identifier tasks</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/userVersion" title="userVersion"></a>
- <h3 class="method-title"><code><a href="#//api/name/userVersion">&nbsp;&nbsp;userVersion</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Retrieve user version</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic) uint32_t userVersion</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Retrieve user version</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/userVersion">@property userVersion</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseAdditions.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
- </div>
-
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
diff --git a/html/Categories/NSObject(FMDatabasePoolDelegate).html b/html/Categories/NSObject(FMDatabasePoolDelegate).html
new file mode 100644
index 0000000..5b3fe74
--- /dev/null
+++ b/html/Categories/NSObject(FMDatabasePoolDelegate).html
@@ -0,0 +1,253 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>NSObject(FMDatabasePoolDelegate) Category Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Extension/NSObject(FMDatabasePoolDelegate)" class="dashAnchor"></a>
+ <a title="NSObject(FMDatabasePoolDelegate) Category Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ NSObject(FMDatabasePoolDelegate) Category Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>NSObject(FMDatabasePoolDelegate)</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">NSObject</span> <span class="p">(</span><span class="nl">FMDatabasePoolDelegate</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <p>FMDatabasePool delegate category</p>
+
+<p>This is a category that defines the protocol for the FMDatabasePool delegate</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)NSObject(im)databasePool:shouldAddDatabaseToPool:"></a>
+ <a name="//apple_ref/objc/Method/-databasePool:shouldAddDatabaseToPool:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)NSObject(im)databasePool:shouldAddDatabaseToPool:">-databasePool:<wbr>shouldAddDatabaseToPool:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Asks the delegate whether database should be added to the pool. </p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">databasePool</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">pool</span>
+ <span class="nf">shouldAddDatabaseToPool</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">database</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">databasePool</span><span class="p">(</span><span class="n">_</span> <span class="nv">pool</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span><span class="p">,</span> <span class="n">shouldAddDatabaseToPool</span> <span class="nv">database</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>pool</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>database</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if it should add database to pool; <code>NO</code> if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)NSObject(im)databasePool:didAddDatabase:"></a>
+ <a name="//apple_ref/objc/Method/-databasePool:didAddDatabase:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)NSObject(im)databasePool:didAddDatabase:">-databasePool:<wbr>didAddDatabase:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Tells the delegate that database was added to the pool.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">databasePool</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">pool</span>
+ <span class="nf">didAddDatabase</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">database</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">databasePool</span><span class="p">(</span><span class="n">_</span> <span class="nv">pool</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span><span class="p">,</span> <span class="n">didAdd</span> <span class="nv">database</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>pool</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>database</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/Categories/NSObject+FMDatabasePoolDelegate.html b/html/Categories/NSObject+FMDatabasePoolDelegate.html
deleted file mode 100644
index b6184c4..0000000
--- a/html/Categories/NSObject+FMDatabasePoolDelegate.html
+++ /dev/null
@@ -1,274 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>NSObject(FMDatabasePoolDelegate) Category Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
- <option value="overview">Overview</option>
-
-
-
-
- <option value="tasks">Tasks</option>
-
-
-
-
-
-
-
-
-
- <optgroup label="Instance Methods">
-
- <option value="//api/name/databasePool:didAddDatabase:">- databasePool:didAddDatabase:</option>
-
- <option value="//api/name/databasePool:shouldAddDatabaseToPool:">- databasePool:shouldAddDatabaseToPool:</option>
-
- </optgroup>
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">NSObject(FMDatabasePoolDelegate) Category Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Declared in</th>
- <td>FMDatabasePool.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
- <div class="section section-overview">
- <a title="Overview" name="overview"></a>
- <h2 class="subtitle subtitle-overview">Overview</h2>
- <p>FMDatabasePool delegate category</p>
-
-<p>This is a category that defines the protocol for the FMDatabasePool delegate</p>
- </div>
-
-
-
-
-
- <div class="section section-tasks">
- <a title="Tasks" name="tasks"></a>
-
-
-
-
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/databasePool:shouldAddDatabaseToPool:" title="databasePool:shouldAddDatabaseToPool:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databasePool:shouldAddDatabaseToPool:">&ndash;&nbsp;databasePool:shouldAddDatabaseToPool:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Asks the delegate whether database should be added to the pool.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)databasePool:(FMDatabasePool *)<em>pool</em> shouldAddDatabaseToPool:(FMDatabase *)<em>database</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>pool</code></th>
- <td><p>The <code>FMDatabasePool</code> object.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>database</code></th>
- <td><p>The <code>FMDatabase</code> object.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if it should add database to pool; <code>NO</code> if not.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Asks the delegate whether database should be added to the pool.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databasePool:didAddDatabase:" title="databasePool:didAddDatabase:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databasePool:didAddDatabase:">&ndash;&nbsp;databasePool:didAddDatabase:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Tells the delegate that database was added to the pool.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)databasePool:(FMDatabasePool *)<em>pool</em> didAddDatabase:(FMDatabase *)<em>database</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>pool</code></th>
- <td><p>The <code>FMDatabasePool</code> object.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>database</code></th>
- <td><p>The <code>FMDatabase</code> object.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Tells the delegate that database was added to the pool.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
- </div>
-
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
diff --git a/html/Classes.html b/html/Classes.html
new file mode 100644
index 0000000..a7b81e7
--- /dev/null
+++ b/html/Classes.html
@@ -0,0 +1,398 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Classes Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Classes" class="dashAnchor"></a>
+ <a title="Classes Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Classes Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Classes</h1>
+ <p>The following classes are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase"></a>
+ <a name="//apple_ref/objc/Class/FMDatabase" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase">FMDatabase</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>A SQLite (<a href="https://sqlite.org/">https://sqlite.org/</a>) Objective-C wrapper.</p>
+
+<p>Usage</p>
+
+<p>The three main classes in FMDB are:</p>
+
+<ul>
+<li><p><code>FMDatabase</code> - Represents a single SQLite database. Used for executing SQL statements.</p></li>
+<li><p><code><a href="Classes/FMResultSet.html">FMResultSet</a></code> - Represents the results of executing a query on an <code>FMDatabase</code> .</p></li>
+<li><p><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> - If you want to perform queries and updates on multiple threads, you&rsquo;ll want to use this class.</p></li>
+</ul>
+
+<p>See also</p>
+
+<ul>
+<li><p><code><a href="Classes/FMDatabasePool.html">FMDatabasePool</a></code> - A pool of <code>FMDatabase</code> objects</p></li>
+<li><p><code><a href="Classes/FMStatement.html">FMStatement</a></code> - A wrapper for <code>sqlite_stmt</code></p></li>
+</ul>
+
+<p>External links</p>
+
+<ul>
+<li><a href="https://github.com/ccgus/fmdb">FMDB on GitHub</a> including introductory documentation</li>
+<li><a href="https://sqlite.org/">SQLite web site</a></li>
+<li><a href="http://groups.google.com/group/fmdb">FMDB mailing list</a></li>
+<li><p><a href="https://sqlite.org/faq.html">SQLite FAQ</a></p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code>FMDatabase</code> object and use it across multiple threads. Instead, use <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> .</p>
+
+</div>
+
+ <a href="Classes/FMDatabase.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabase</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMDatabase</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement"></a>
+ <a name="//apple_ref/objc/Class/FMStatement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement">FMStatement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Objective-C wrapper for <code>sqlite3_stmt</code></p>
+
+<p>This is a wrapper for a SQLite <code>sqlite3_stmt</code> . Generally when using FMDB you will not need to interact directly with <code>FMStatement</code>, but rather with <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> and <code><a href="Classes/FMResultSet.html">FMResultSet</a></code> only.</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="Classes/FMDatabase.html">FMDatabase</a></code></li>
+<li><code><a href="Classes/FMResultSet.html">FMResultSet</a></code></li>
+<li><a href="https://sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code> </a></li>
+</ul>
+
+ <a href="Classes/FMStatement.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMStatement</span> <span class="p">:</span> <span class="nc">NSObject</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="o">*</span><span class="n">_statement</span><span class="p">;</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">_query</span><span class="p">;</span>
+ <span class="kt">long</span> <span class="n">_useCount</span><span class="p">;</span>
+ <span class="n">BOOL</span> <span class="n">_inUse</span><span class="p">;</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMStatement</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool"></a>
+ <a name="//apple_ref/objc/Class/FMDatabasePool" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool">FMDatabasePool</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Pool of <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> objects.</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></li>
+<li><p><code><a href="Classes/FMDatabase.html">FMDatabase</a></code> </p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Before using <code>FMDatabasePool</code> , please consider using <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> instead.</p>
+
+</div>
+
+<p>If you really really really know what you&rsquo;re doing and <code>FMDatabasePool</code> is what
+ you really really need (ie, you&rsquo;re using a read only database), OK you can use
+ it. But just be careful not to deadlock!</p>
+
+<p>For an example on deadlocking, search for:
+ <code>ONLY_USE_THE_POOL_IF_YOU_ARE_DOING_READS_OTHERWISE_YOULL_DEADLOCK_USE_FMDATABASEQUEUE_INSTEAD</code>
+ in the main.m file.</p>
+
+ <a href="Classes/FMDatabasePool.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabasePool</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMDatabasePool</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue"></a>
+ <a name="//apple_ref/objc/Class/FMDatabaseQueue" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue">FMDatabaseQueue</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>To perform queries and updates on multiple threads, you&rsquo;ll want to use <code>FMDatabaseQueue</code> .</p>
+
+<p>Using a single instance of <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> from multiple threads at once is a bad idea. It has always been OK to make a <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object <em>per thread</em>. Just don&rsquo;t share a single instance across threads, and definitely not across multiple threads at the same time.</p>
+
+<p>Instead, use <code>FMDatabaseQueue</code> . Here&rsquo;s how to use it:</p>
+
+<p>First, make your queue.</p>
+<pre class="highlight objective_c"><code><span class="n">FMDatabaseQueue</span> <span class="o">*</span><span class="n">queue</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabaseQueue</span> <span class="nf">databaseQueueWithPath</span><span class="p">:</span><span class="n">aPath</span><span class="p">];</span>
+</code></pre>
+
+<p>Then use it like so:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inDatabase</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"select * from foo"</span><span class="p">];</span>
+ <span class="k">while</span> <span class="p">([</span><span class="n">rs</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">//…
+</span> <span class="p">}</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p>An easy way to wrap things up in a transaction can be done like this:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inTransaction</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">,</span> <span class="n">BOOL</span> <span class="o">*</span><span class="n">rollback</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="c1">// if (whoopsSomethingWrongHappened) {
+</span> <span class="c1">// *rollback = YES;
+</span> <span class="c1">// return;
+</span> <span class="c1">// }
+</span>
+ <span class="c1">// etc…
+</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">4</span><span class="p">]];</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p><code>FMDatabaseQueue</code> will run the blocks on a serialized queue (hence the name of the class). So if you call <code>FMDatabaseQueue</code> &lsquo;s methods from multiple threads at the same time, they will be executed in the order they are received. This way queries and updates won&rsquo;t step on each other&rsquo;s toes, and every one is happy.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object and use it across multiple threads. Use <code>FMDatabaseQueue</code> instead.</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>The calls to <code>FMDatabaseQueue</code> &rsquo;s methods are blocking. So even though you are passing along blocks, they will <strong>not</strong> be run on another thread.</p>
+
+</div>
+
+<p>@sa FMDatabase</p>
+
+ <a href="Classes/FMDatabaseQueue.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabaseQueue</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMDatabaseQueue</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet"></a>
+ <a name="//apple_ref/objc/Class/FMResultSet" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet">FMResultSet</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Represents the results of executing a query on an <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> .</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="Classes/FMDatabase.html">FMDatabase</a></code></li>
+</ul>
+
+ <a href="Classes/FMResultSet.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMResultSet</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMResultSet</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/Classes/FMDatabase.html b/html/Classes/FMDatabase.html
index 0d4324c..f52eb9a 100644
--- a/html/Classes/FMDatabase.html
+++ b/html/Classes/FMDatabase.html
@@ -1,6110 +1,6978 @@
<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMDatabase Class Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
- <option value="overview">Overview</option>
-
-
-
-
- <option value="tasks">Tasks</option>
-
-
-
-
-
- <optgroup label="Properties">
-
- <option value="//api/name/cachedStatements">cachedStatements</option>
-
- <option value="//api/name/changes">changes</option>
-
- <option value="//api/name/checkedOut">checkedOut</option>
-
- <option value="//api/name/crashOnErrors">crashOnErrors</option>
-
- <option value="//api/name/databasePath">databasePath</option>
-
- <option value="//api/name/databaseURL">databaseURL</option>
-
- <option value="//api/name/goodConnection">goodConnection</option>
-
- <option value="//api/name/hasOpenResultSets">hasOpenResultSets</option>
-
- <option value="//api/name/isInTransaction">isInTransaction</option>
-
- <option value="//api/name/lastInsertRowId">lastInsertRowId</option>
-
- <option value="//api/name/logsErrors">logsErrors</option>
-
- <option value="//api/name/shouldCacheStatements">shouldCacheStatements</option>
-
- <option value="//api/name/sqliteHandle">sqliteHandle</option>
-
- <option value="//api/name/traceExecution">traceExecution</option>
-
- </optgroup>
-
-
-
- <optgroup label="Class Methods">
-
- <option value="//api/name/databaseWithPath:">+ databaseWithPath:</option>
-
- <option value="//api/name/databaseWithURL:">+ databaseWithURL:</option>
-
- <option value="//api/name/isSQLiteThreadSafe">+ isSQLiteThreadSafe</option>
-
- <option value="//api/name/sqliteLibVersion">+ sqliteLibVersion</option>
-
- <option value="//api/name/storeableDateFormat:">+ storeableDateFormat:</option>
-
- </optgroup>
-
-
-
- <optgroup label="Instance Methods">
-
- <option value="//api/name/beginDeferredTransaction">- beginDeferredTransaction</option>
-
- <option value="//api/name/beginTransaction">- beginTransaction</option>
-
- <option value="//api/name/clearCachedStatements">- clearCachedStatements</option>
-
- <option value="//api/name/close">- close</option>
-
- <option value="//api/name/closeOpenResultSets">- closeOpenResultSets</option>
-
- <option value="//api/name/commit">- commit</option>
-
- <option value="//api/name/dateFromString:">- dateFromString:</option>
-
- <option value="//api/name/executeQuery:">- executeQuery:</option>
-
- <option value="//api/name/executeQuery:values:error:">- executeQuery:values:error:</option>
-
- <option value="//api/name/executeQuery:withArgumentsInArray:">- executeQuery:withArgumentsInArray:</option>
-
- <option value="//api/name/executeQuery:withParameterDictionary:">- executeQuery:withParameterDictionary:</option>
-
- <option value="//api/name/executeQueryWithFormat:">- executeQueryWithFormat:</option>
-
- <option value="//api/name/executeStatements:">- executeStatements:</option>
-
- <option value="//api/name/executeStatements:withResultBlock:">- executeStatements:withResultBlock:</option>
-
- <option value="//api/name/executeUpdate:">- executeUpdate:</option>
-
- <option value="//api/name/executeUpdate:values:error:">- executeUpdate:values:error:</option>
-
- <option value="//api/name/executeUpdate:withArgumentsInArray:">- executeUpdate:withArgumentsInArray:</option>
-
- <option value="//api/name/executeUpdate:withErrorAndBindings:">- executeUpdate:withErrorAndBindings:</option>
-
- <option value="//api/name/executeUpdate:withParameterDictionary:">- executeUpdate:withParameterDictionary:</option>
-
- <option value="//api/name/executeUpdate:withVAList:">- executeUpdate:withVAList:</option>
-
- <option value="//api/name/executeUpdateWithFormat:">- executeUpdateWithFormat:</option>
-
- <option value="//api/name/hadError">- hadError</option>
-
- <option value="//api/name/hasDateFormatter">- hasDateFormatter</option>
-
- <option value="//api/name/inSavePoint:">- inSavePoint:</option>
-
- <option value="//api/name/initWithPath:">- initWithPath:</option>
-
- <option value="//api/name/initWithURL:">- initWithURL:</option>
-
- <option value="//api/name/interrupt">- interrupt</option>
-
- <option value="//api/name/lastError">- lastError</option>
-
- <option value="//api/name/lastErrorCode">- lastErrorCode</option>
-
- <option value="//api/name/lastErrorMessage">- lastErrorMessage</option>
-
- <option value="//api/name/lastExtendedErrorCode">- lastExtendedErrorCode</option>
-
- <option value="//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</option>
-
- <option value="//api/name/open">- open</option>
-
- <option value="//api/name/openWithFlags:">- openWithFlags:</option>
-
- <option value="//api/name/openWithFlags:vfs:">- openWithFlags:vfs:</option>
-
- <option value="//api/name/rekey:">- rekey:</option>
-
- <option value="//api/name/rekeyWithData:">- rekeyWithData:</option>
-
- <option value="//api/name/releaseSavePointWithName:error:">- releaseSavePointWithName:error:</option>
-
- <option value="//api/name/resultData:context:">- resultData:context:</option>
-
- <option value="//api/name/resultDouble:context:">- resultDouble:context:</option>
-
- <option value="//api/name/resultError:context:">- resultError:context:</option>
-
- <option value="//api/name/resultErrorCode:context:">- resultErrorCode:context:</option>
-
- <option value="//api/name/resultErrorNoMemoryInContext:">- resultErrorNoMemoryInContext:</option>
-
- <option value="//api/name/resultErrorTooBigInContext:">- resultErrorTooBigInContext:</option>
-
- <option value="//api/name/resultInt:context:">- resultInt:context:</option>
-
- <option value="//api/name/resultLong:context:">- resultLong:context:</option>
-
- <option value="//api/name/resultNullInContext:">- resultNullInContext:</option>
-
- <option value="//api/name/resultString:context:">- resultString:context:</option>
-
- <option value="//api/name/rollback">- rollback</option>
-
- <option value="//api/name/rollbackToSavePointWithName:error:">- rollbackToSavePointWithName:error:</option>
-
- <option value="//api/name/setDateFormat:">- setDateFormat:</option>
-
- <option value="//api/name/setKey:">- setKey:</option>
-
- <option value="//api/name/setKeyWithData:">- setKeyWithData:</option>
-
- <option value="//api/name/startSavePointWithName:error:">- startSavePointWithName:error:</option>
-
- <option value="//api/name/stringFromDate:">- stringFromDate:</option>
-
- <option value="//api/name/update:withErrorAndBindings:">- update:withErrorAndBindings:</option>
-
- <option value="//api/name/valueData:">- valueData:</option>
-
- <option value="//api/name/valueDouble:">- valueDouble:</option>
-
- <option value="//api/name/valueInt:">- valueInt:</option>
-
- <option value="//api/name/valueLong:">- valueLong:</option>
-
- <option value="//api/name/valueString:">- valueString:</option>
-
- </optgroup>
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMDatabase Class Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Inherits from</th>
- <td>NSObject</td>
-</tr><tr>
- <th>Declared in</th>
- <td>FMDatabase.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
- <div class="section section-overview">
- <a title="Overview" name="overview"></a>
- <h2 class="subtitle subtitle-overview">Overview</h2>
- <p>A SQLite (<a href="http://sqlite.org/">http://sqlite.org/</a>) Objective-C wrapper.</p>
-
-<h3>Usage</h3>
+<html lang="en">
+ <head>
+ <title>FMDatabase Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMDatabase" class="dashAnchor"></a>
+ <a title="FMDatabase Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDatabase Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDatabase</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabase</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>A SQLite (<a href="https://sqlite.org/">https://sqlite.org/</a>) Objective-C wrapper.</p>
+
+<p>Usage</p>
<p>The three main classes in FMDB are:</p>
<ul>
-<li><code>FMDatabase</code> - Represents a single SQLite database. Used for executing SQL statements.</li>
-<li><a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> - Represents the results of executing a query on an <code>FMDatabase</code>.</li>
-<li><a href="../Classes/FMDatabaseQueue.html"><code>FMDatabaseQueue</code></a> - If you want to perform queries and updates on multiple threads, you&rsquo;ll want to use this class.</li>
+<li><p><code>FMDatabase</code> - Represents a single SQLite database. Used for executing SQL statements.</p></li>
+<li><p><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> - Represents the results of executing a query on an <code>FMDatabase</code> .</p></li>
+<li><p><code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> - If you want to perform queries and updates on multiple threads, you&rsquo;ll want to use this class.</p></li>
</ul>
-
-<h3>See also</h3>
+<p>See also</p>
<ul>
-<li><a href="../Classes/FMDatabasePool.html"><code>FMDatabasePool</code></a> - A pool of <code>FMDatabase</code> objects.</li>
-<li><a href="../Classes/FMStatement.html"><code>FMStatement</code></a> - A wrapper for <code>sqlite_stmt</code>.</li>
+<li><p><code><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></code> - A pool of <code>FMDatabase</code> objects</p></li>
+<li><p><code><a href="../Classes/FMStatement.html">FMStatement</a></code> - A wrapper for <code>sqlite_stmt</code></p></li>
</ul>
-
-<h3>External links</h3>
+<p>External links</p>
<ul>
<li><a href="https://github.com/ccgus/fmdb">FMDB on GitHub</a> including introductory documentation</li>
-<li><a href="http://sqlite.org/">SQLite web site</a></li>
+<li><a href="https://sqlite.org/">SQLite web site</a></li>
<li><a href="http://groups.google.com/group/fmdb">FMDB mailing list</a></li>
-<li><a href="http://www.sqlite.org/faq.html">SQLite FAQ</a></li>
-</ul>
-<div class="warning"><p><strong>Warning:</strong> Do not instantiate a single <code>FMDatabase</code> object and use it across multiple threads. Instead, use <a href="../Classes/FMDatabaseQueue.html"><code>FMDatabaseQueue</code></a>.</p></div>
- </div>
-
-
-
-
-
- <div class="section section-tasks">
- <a title="Tasks" name="tasks"></a>
-
-
- <a title="Properties" name="task_Properties"></a>
- <h2 class="task-title">Properties</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/traceExecution" title="traceExecution"></a>
- <h3 class="method-title"><code><a href="#//api/name/traceExecution">&nbsp;&nbsp;traceExecution</a></code>
-</h3>
+<li><p><a href="https://sqlite.org/faq.html">SQLite FAQ</a></p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code>FMDatabase</code> object and use it across multiple threads. Instead, use <code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> .</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Whether should trace execution</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) BOOL traceExecution</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Whether should trace execution</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/checkedOut" title="checkedOut"></a>
- <h3 class="method-title"><code><a href="#//api/name/checkedOut">&nbsp;&nbsp;checkedOut</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Whether checked out or not</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) BOOL checkedOut</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Whether checked out or not</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/crashOnErrors" title="crashOnErrors"></a>
- <h3 class="method-title"><code><a href="#//api/name/crashOnErrors">&nbsp;&nbsp;crashOnErrors</a></code>
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Properties"></a>
+ <a name="//apple_ref/objc/Section/Properties" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Properties"></a>
+ <h3 class="section-name"><p>Properties</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Crash on errors</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) BOOL crashOnErrors</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Crash on errors</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/logsErrors" title="logsErrors"></a>
- <h3 class="method-title"><code><a href="#//api/name/logsErrors">&nbsp;&nbsp;logsErrors</a></code>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)traceExecution"></a>
+ <a name="//apple_ref/objc/Property/traceExecution" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)traceExecution">traceExecution</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether should trace execution</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">traceExecution</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">traceExecution</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)checkedOut"></a>
+ <a name="//apple_ref/objc/Property/checkedOut" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)checkedOut">checkedOut</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether checked out or not</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">checkedOut</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">checkedOut</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)crashOnErrors"></a>
+ <a name="//apple_ref/objc/Property/crashOnErrors" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)crashOnErrors">crashOnErrors</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Crash on errors</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">crashOnErrors</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">crashOnErrors</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)logsErrors"></a>
+ <a name="//apple_ref/objc/Property/logsErrors" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)logsErrors">logsErrors</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Logs errors</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">logsErrors</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">logsErrors</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)cachedStatements"></a>
+ <a name="//apple_ref/objc/Property/cachedStatements" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)cachedStatements">cachedStatements</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Dictionary of cached statements</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSMutableDictionary</span> <span class="o">*</span><span class="n">cachedStatements</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">cachedStatements</span><span class="p">:</span> <span class="kt">NSMutableDictionary</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Initialization"></a>
+ <a name="//apple_ref/objc/Section/Initialization" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Initialization"></a>
+ <h3 class="section-name"><p>Initialization</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)databaseWithPath:"></a>
+ <a name="//apple_ref/objc/Method/+databaseWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)databaseWithPath:">+databaseWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Logs errors</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) BOOL logsErrors</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Logs errors</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/cachedStatements" title="cachedStatements"></a>
- <h3 class="method-title"><code><a href="#//api/name/cachedStatements">&nbsp;&nbsp;cachedStatements</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Dictionary of cached statements</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, retain, nullable) NSMutableDictionary *cachedStatements</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Dictionary of cached statements</p>
- </div>
-
-
-
+<ol>
+<li><p>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p>An zero-length string. An empty database is created at a temporary location. This database is deleted with the <code>FMDatabase</code> connection is closed.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
+</ol>
-
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code><span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+<span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+<span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">databaseWithPath</span><span class="p">:</span><span class="n">fileURL</span><span class="p">.</span><span class="n">path</span><span class="p">];</span>
+</code></pre>
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">inPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>inPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Path of database file</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)databaseWithURL:"></a>
+ <a name="//apple_ref/objc/Method/+databaseWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)databaseWithURL:">+databaseWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
- <a title="Initialization" name="task_Initialization"></a>
- <h2 class="task-title">Initialization</h2>
+<ol>
+<li><p>A file system URL. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
+</ol>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/databaseWithPath:" title="databaseWithPath:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseWithPath:">+&nbsp;databaseWithPath:</a></code>
-</h3>
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code><span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+<span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+<span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">databaseWithURL</span><span class="p">:</span><span class="n">fileURL</span><span class="p">];</span>
+</code></pre>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create a <code>FMDatabase</code> object.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databaseWithPath:(NSString *_Nullable)<em>inPath</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>inPath</code></th>
- <td><p>Path of database file</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create a <code>FMDatabase</code> object.</p>
-
-<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The local file URL (not remote URL) of database file</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)initWithPath:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)initWithPath:">-initWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Initialize a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
<ol>
-<li>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</li>
-<li>An empty string (<code>@""</code>). An empty database is created at a temporary location. This database is deleted with the <code>FMDatabase</code> connection is closed.</li>
-<li><code>nil</code>. An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</li>
+<li><p>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p>A zero-length string. An empty database is created at a temporary location. This database is deleted with the <code>FMDatabase</code> connection is closed.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
</ol>
-
-<p>For example, to create/open a database in your Mac OS X <code>tmp</code> folder:</p>
-
-<pre><code>FMDatabase *db = [FMDatabase databaseWithPath:@"/tmp/tmp.db"];
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code> <span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+ <span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+ <span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">alloc</span><span class="p">]</span> <span class="nf">initWithPath</span><span class="p">:</span><span class="n">fileURL</span><span class="p">.</span><span class="n">path</span><span class="p">];</span>
</code></pre>
-<p>Or, in iOS, you might open a database in the app&rsquo;s <code>Documents</code> directory:</p>
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">path</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">path</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>path</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Path of database file.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)initWithURL:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)initWithURL:">-initWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Initialize a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a local file URL to a SQLite database file. This path can be one of these three:</p>
-<pre><code>NSString *docsPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];
-NSString *dbPath = [docsPath stringByAppendingPathComponent:@"test.db"];
-FMDatabase *db = [FMDatabase databaseWithPath:dbPath];
+<ol>
+<li><p>A file system URL. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
+</ol>
+
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code> <span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+ <span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+ <span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">alloc</span><span class="p">]</span> <span class="nf">initWithURL</span><span class="p">:</span><span class="n">fileURL</span><span class="p">];</span>
</code></pre>
-<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="http://www.sqlite.org/inmemorydb.html">http://www.sqlite.org/inmemorydb.html</a>)</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databaseWithURL:" title="databaseWithURL:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseWithURL:">+&nbsp;databaseWithURL:</a></code>
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of database file.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Opening%20and%20closing%20database"></a>
+ <a name="//apple_ref/objc/Section/Opening and closing database" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Opening%20and%20closing%20database"></a>
+ <h3 class="section-name"><p>Opening and closing database</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)isOpen"></a>
+ <a name="//apple_ref/objc/Property/isOpen" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)isOpen">isOpen</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Is the database open or not?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">isOpen</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">isOpen</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)open"></a>
+ <a name="//apple_ref/objc/Method/-open" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)open">-open</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Opening a new database connection</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create a <code>FMDatabase</code> object.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databaseWithURL:(NSURL *_Nullable)<em>url</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The local file URL (not remote URL) of database file</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create a <code>FMDatabase</code> object.</p>
-
-<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
+<p>The database is opened for reading and writing, and is created if it does not already exist.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/open.html">sqlite3_open()</a></p>
-<ol>
-<li>A file system URL. The file does not have to exist on disk. If it does not exist, it is created for you.</li>
-<li><code>nil</code>. An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</li>
-</ol>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>openWithFlags:</p>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>close</p>
-<p>For example, to create/open a database in your Mac OS X <code>tmp</code> folder:</p>
+</div>
-<pre><code>FMDatabase *db = [FMDatabase databaseWithPath:@"/tmp/tmp.db"];
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">open</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">open</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if successful, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)openWithFlags:"></a>
+ <a name="//apple_ref/objc/Method/-openWithFlags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)openWithFlags:">-openWithFlags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READONLY</span>
</code></pre>
-<p>Or, in iOS, you might open a database in the app&rsquo;s <code>Documents</code> directory:</p>
+<p>The database is opened in read-only mode. If the database does not already exist, an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span>
+</code></pre>
-<pre><code>NSString *docsPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];
-NSString *dbPath = [docsPath stringByAppendingPathComponent:@"test.db"];
-FMDatabase *db = [FMDatabase databaseWithPath:dbPath];
+<p>The database is opened for reading and writing if possible, or reading only if the file is write protected by the operating system. In either case the database must already exist, otherwise an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span> <span class="o">|</span> <span class="n">SQLITE_OPEN_CREATE</span>
</code></pre>
-<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="http://www.sqlite.org/inmemorydb.html">http://www.sqlite.org/inmemorydb.html</a>)</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithPath:" title="initWithPath:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithPath:">&ndash;&nbsp;initWithPath:</a></code>
-</h3>
+<p>The database is opened for reading and writing, and is created if it does not already exist. This is the behavior that is always used for <code>open</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/open.html">sqlite3_open_v2()</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Initialize a <code>FMDatabase</code> object.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithPath:(NSString *_Nullable)<em>path</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>path</code></th>
- <td><p>Path of database file.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Initialize a <code>FMDatabase</code> object.</p>
-
-<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
-
-<ol>
-<li>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</li>
-<li>An empty string (<code>@""</code>). An empty database is created at a temporary location. This database is deleted with the <code>FMDatabase</code> connection is closed.</li>
-<li><code>nil</code>. An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</li>
-</ol>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>open</p>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>close</p>
-<p>For example, to create/open a database in your Mac OS X <code>tmp</code> folder:</p>
+</div>
-<pre><code>FMDatabase *db = [FMDatabase databaseWithPath:@"/tmp/tmp.db"];
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">openWithFlags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">flags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">open</span><span class="p">(</span><span class="n">withFlags</span> <span class="nv">flags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>flags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>One of the following three values, optionally combined with the <code>SQLITE_OPEN_NOMUTEX</code> , <code>SQLITE_OPEN_FULLMUTEX</code> , <code>SQLITE_OPEN_SHAREDCACHE</code> , <code>SQLITE_OPEN_PRIVATECACHE</code> , and/or <code>SQLITE_OPEN_URI</code> flags:</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if successful, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)openWithFlags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-openWithFlags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)openWithFlags:vfs:">-openWithFlags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READONLY</span>
</code></pre>
-<p>Or, in iOS, you might open a database in the app&rsquo;s <code>Documents</code> directory:</p>
+<p>The database is opened in read-only mode. If the database does not already exist, an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span>
+</code></pre>
-<pre><code>NSString *docsPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];
-NSString *dbPath = [docsPath stringByAppendingPathComponent:@"test.db"];
-FMDatabase *db = [FMDatabase databaseWithPath:dbPath];
+<p>The database is opened for reading and writing if possible, or reading only if the file is write protected by the operating system. In either case the database must already exist, otherwise an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span> <span class="o">|</span> <span class="n">SQLITE_OPEN_CREATE</span>
</code></pre>
-<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="http://www.sqlite.org/inmemorydb.html">http://www.sqlite.org/inmemorydb.html</a>)</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithURL:" title="initWithURL:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithURL:">&ndash;&nbsp;initWithURL:</a></code>
-</h3>
+<p>The database is opened for reading and writing, and is created if it does not already exist. This is the behavior that is always used for <code>open</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/open.html">sqlite3_open_v2()</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Initialize a <code>FMDatabase</code> object.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithURL:(NSURL *_Nullable)<em>url</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file <code>NSURL</code> of database file.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Initialize a <code>FMDatabase</code> object.</p>
-
-<p>An <code>FMDatabase</code> is created with a local file URL to a SQLite database file. This path can be one of these three:</p>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>open</p>
-<ol>
-<li>A file system URL. The file does not have to exist on disk. If it does not exist, it is created for you.</li>
-<li><code>nil</code>. An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</li>
-</ol>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>close</p>
+</div>
-<p>For example, to create/open a database in your Mac OS X <code>tmp</code> folder:</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">openWithFlags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">flags</span> <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">open</span><span class="p">(</span><span class="n">withFlags</span> <span class="nv">flags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>flags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>One of the following three values, optionally combined with the <code>SQLITE_OPEN_NOMUTEX</code> , <code>SQLITE_OPEN_FULLMUTEX</code>, <code>SQLITE_OPEN_SHAREDCACHE</code>, <code>SQLITE_OPEN_PRIVATECACHE</code> , and/or <code>SQLITE_OPEN_URI</code> flags:</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If vfs is given the value is passed to the vfs parameter of sqlite3_open_v2.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if successful, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Closing a database connection</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/close.html">sqlite3_close()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>open</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>openWithFlags:</p>
-<p>FMDatabase *db = [FMDatabase databaseWithPath:@&ldquo;/tmp/tmp.db&rdquo;];</p>
+</div>
-<p>Or, in iOS, you might open a database in the app&rsquo;s <code>Documents</code> directory:</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)goodConnection"></a>
+ <a name="//apple_ref/objc/Property/goodConnection" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)goodConnection">goodConnection</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test to see if we have a good connection to the database.</p>
-<p>NSString <em>docsPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];
-NSString </em>dbPath = [docsPath stringByAppendingPathComponent:@&ldquo;test.db&rdquo;];
-FMDatabase *db = [FMDatabase databaseWithPath:dbPath];</p>
+<p>This will confirm whether:</p>
-<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="http://www.sqlite.org/inmemorydb.html">http://www.sqlite.org/inmemorydb.html</a>)</p>
- </div>
-
+<ul>
+<li><p>is database open</p></li>
+<li><p>if open, it will try a simple <code>SELECT</code> statement and confirm that it succeeds.</p></li>
+</ul>
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">goodConnection</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">goodConnection</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if everything succeeds, <code>NO</code> on failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Perform%20updates"></a>
+ <a name="//apple_ref/objc/Section/Perform updates" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Perform%20updates"></a>
+ <h3 class="section-name"><p>Perform updates</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withErrorAndBindings:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withErrorAndBindings:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withErrorAndBindings:">-executeUpdate:<wbr>withErrorAndBindings:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a>, <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> to bind values to <code>?</code> placeholders in the SQL with the optional list of parameters, and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p>
-
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withErrorAndBindings</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders. This can be followed by iptional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code> , <code>NSNumber</code> , etc.), not fundamental C data types (e.g. <code>int</code> , etc.).</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A reference to the <code>NSError</code> pointer to be updated with an auto released <code>NSError</code> object if an error if an error occurs. If <code>nil</code> , no <code>NSError</code> object will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)update:withErrorAndBindings:"></a>
+ <a name="//apple_ref/objc/Method/-update:withErrorAndBindings:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)update:withErrorAndBindings:">-update:<wbr>withErrorAndBindings:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use executeUpdate:withErrorAndBindings: instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeUpdate:withErrorAndBindings:</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p><strong>Deprecated</strong>: Please use <code>&lt;executeUpdate:withErrorAndBindings&gt;</code> instead.</p>
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Opening and closing database" name="task_Opening and closing database"></a>
- <h2 class="task-title">Opening and closing database</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">update</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withErrorAndBindings</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:">-executeUpdate:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a>, <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> to bind values to <code>?</code> placeholders in the SQL with the optional list of parameters, and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This technique supports the use of <code>?</code> placeholders in the SQL, automatically binding any supplied value parameters to those placeholders. This approach is more robust than techniques that entail using <code>stringWithFormat</code> to manually build SQL statements, which can be problematic if the values happened to include any characters that needed to be quoted.</p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>You cannot use this method from Swift due to incompatibilities between Swift and Objective-C variadic implementations. Consider using <code>&lt;executeUpdate:values:&gt;</code> instead.</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/open" title="open"></a>
- <h3 class="method-title"><code><a href="#//api/name/open">&ndash;&nbsp;open</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders, followed by optional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code> , <code>NSNumber</code> , etc.), not fundamental C data types (e.g. <code>int</code> , etc.).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdateWithFormat:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdateWithFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdateWithFormat:">-executeUpdateWithFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL. Do not use <code>?</code> placeholders in the SQL if you use this method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeUpdate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This method does not technically perform a traditional printf-style replacement. What this method actually does is replace the printf-style percent sequences with a SQLite <code>?</code> placeholder, and then bind values to that placeholder. Thus the following command</p>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Opening a new database connection</p>
- </div>
-
-
+</div>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdateWithFormat</span><span class="p">:</span><span class="s">@"INSERT INTO test (name) VALUES (%@)"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
- <div class="method-subsection method-declaration"><code>- (BOOL)open</code></div>
+<p>is actually replacing the <code>%@</code> with <code>?</code> placeholder, and then performing something equivalent to <code>&lt;executeUpdate:&gt;</code></p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO test (name) VALUES (?)"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
-
-
+<p>There are two reasons why this distinction is important. First, the printf-style escape sequences can only be used where it is permissible to use a SQLite <code>?</code> placeholder. You can use it only for values in SQL statements, but not for table names or column names or any other non-value context. This method also cannot be used in conjunction with <code>pragma</code> statements and the like. Second, note the lack of quotation marks in the SQL. The <code>VALUES</code> clause was <em>not</em> <code>VALUES (&#39;%@&#39;)</code> (like you might have to do if you built a SQL statement using <code>NSString</code> method <code>stringWithFormat</code> ), but rather simply <code>VALUES (%@)</code>.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdateWithFormat</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">format</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with <code>printf</code>-style escape sequences, followed by optional parameters to bind to use in conjunction with the <code>printf</code>-style escape sequences in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withArgumentsInArray:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withArgumentsInArray:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withArgumentsInArray:">-executeUpdate:<wbr>withArgumentsInArray:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> binding any <code>?</code> placeholders in the SQL with the optional list of parameters.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeUpdate:values:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if successful, <code>NO</code> on error.</p>
- </div>
-
+</div>
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withArgumentsInArray</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withArgumentsIn</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:values:error:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:values:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:values:error:">-executeUpdate:<wbr>values:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> binding any <code>?</code> placeholders in the SQL with the optional list of parameters.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+
+<p>This is similar to <code>executeUpdate:withArgumentsInArray:</code> , except that this also accepts a pointer to a <code>NSError</code> pointer, so that errors can be returned.</p>
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Opening a new database connection</p>
+<p>In Swift, this throws errors, as if it were defined as follows:</p>
+<pre class="highlight objective_c"><code><span class="n">func</span> <span class="n">executeUpdate</span><span class="p">(</span><span class="n">sql</span><span class="o">:</span> <span class="n">String</span><span class="p">,</span> <span class="n">values</span><span class="o">:</span> <span class="p">[</span><span class="nf">Any</span><span class="p">]?)</span> <span class="n">throws</span> <span class="o">-&gt;</span> <span class="n">Bool</span> <span class="err">{</span> <span class="err">}</span>
+</code></pre>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
-<p>The database is opened for reading and writing, and is created if it does not already exist.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/open.html">sqlite3_open()</a></p></code></li>
-
- <li><code><p><a href="#//api/name/openWithFlags:">- openWithFlags:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/close">- close</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/openWithFlags:" title="openWithFlags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/openWithFlags:">&ndash;&nbsp;openWithFlags:</a></code>
-</h3>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
- </div>
-
-
+</div>
- <div class="method-subsection method-declaration"><code>- (BOOL)openWithFlags:(int)<em>flags</em></code></div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">values</span><span class="p">:(</span><span class="n">NSArray</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">values</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">]?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>values</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withParameterDictionary:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withParameterDictionary:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withParameterDictionary:">-executeUpdate:<wbr>withParameterDictionary:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>flags</code></th>
- <td><p>one of the following three values, optionally combined with the <code>SQLITE_OPEN_NOMUTEX</code>, <code>SQLITE_OPEN_FULLMUTEX</code>, <code>SQLITE_OPEN_SHAREDCACHE</code>, <code>SQLITE_OPEN_PRIVATECACHE</code>, and/or <code>SQLITE_OPEN_URI</code> flags:</p>
+</div>
-<p><code>SQLITE_OPEN_READONLY</code></p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withParameterDictionary</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSDictionary</span> <span class="o">*</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withParameterDictionary</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSDictionary</code> of objects keyed by column names that will be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withVAList:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withVAList:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withVAList:">-executeUpdate:<wbr>withVAList:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
-<p>The database is opened in read-only mode. If the database does not already exist, an error is returned.</p>
+</div>
-<p><code>SQLITE_OPEN_READWRITE</code></p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withVAList</span><span class="p">:(</span><span class="k">struct</span> <span class="n">__va_list_tag</span> <span class="o">*</span><span class="p">)</span><span class="nv">args</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withVAList</span> <span class="nv">args</span><span class="p">:</span> <span class="kt">CVaListPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>args</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>va_list</code> of arguments.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeStatements:"></a>
+ <a name="//apple_ref/objc/Method/-executeStatements:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeStatements:">-executeStatements:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute multiple SQL statements</p>
+
+<p>This executes a series of SQL statements that are combined in a single string (e.g. the SQL generated by the <code>sqlite3</code> command line <code>.dump</code> command). This accepts no value parameters, but rather simply expects a single string with multiple SQL statements, each terminated with a semicolon. This uses <code>sqlite3_exec</code> .</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeStatements:withResultBlock:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/exec.html">sqlite3_exec()</a></p>
-<p>The database is opened for reading and writing if possible, or reading only if the file is write protected by the operating system. In either case the database must already exist, otherwise an error is returned.</p>
+</div>
-<p><code>SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE</code></p>
-
-<p>The database is opened for reading and writing, and is created if it does not already exist. This is the behavior that is always used for <code>open</code> method.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if successful, <code>NO</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/open.html">sqlite3_open_v2()</a></p></code></li>
-
- <li><code><p><a href="#//api/name/open">- open</a></p></code></li>
-
- <li><code><p><a href="#//api/name/close">- close</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/openWithFlags:vfs:" title="openWithFlags:vfs:"></a>
- <h3 class="method-title"><code><a href="#//api/name/openWithFlags:vfs:">&ndash;&nbsp;openWithFlags:vfs:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeStatements</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeStatements</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeStatements:withResultBlock:"></a>
+ <a name="//apple_ref/objc/Method/-executeStatements:withResultBlock:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeStatements:withResultBlock:">-executeStatements:<wbr>withResultBlock:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute multiple SQL statements with callback handler</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
+<p>This executes a series of SQL statements that are combined in a single string (e.g. the SQL generated by the <code>sqlite3</code> command line <code>.dump</code> command). This accepts no value parameters, but rather simply expects a single string with multiple SQL statements, each terminated with a semicolon. This uses <code>sqlite3_exec</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeStatements:</p>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
- </div>
-
-
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/exec.html">sqlite3_exec()</a></p>
- <div class="method-subsection method-declaration"><code>- (BOOL)openWithFlags:(int)<em>flags</em> vfs:(NSString *_Nullable)<em>vfsName</em></code></div>
+</div>
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>flags</code></th>
- <td><p>one of the following three values, optionally combined with the <code>SQLITE_OPEN_NOMUTEX</code>, <code>SQLITE_OPEN_FULLMUTEX</code>, <code>SQLITE_OPEN_SHAREDCACHE</code>, <code>SQLITE_OPEN_PRIVATECACHE</code>, and/or <code>SQLITE_OPEN_URI</code> flags:</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeStatements</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withResultBlock</span><span class="p">:(</span><span class="n"><a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a></span> <span class="n">_Nullable</span><span class="p">)</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeStatements</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withResultBlock</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(([</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Int32</span><span class="p">)?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A block that will be called for any result sets returned by any SQL statements.
+ Note, if you supply this block, it must return integer value, zero upon success (this would be a good opportunity to use <code>SQLITE_OK</code> ),
+ non-zero value upon failure (which will stop the bulk execution of the SQL). If a statement returns values, the block will be called with the results from the query in NSDictionary *resultsDictionary.
+ This may be <code>nil</code> if you don&rsquo;t care to receive any results.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> ,
+ <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)lastInsertRowId"></a>
+ <a name="//apple_ref/objc/Property/lastInsertRowId" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)lastInsertRowId">lastInsertRowId</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last insert rowid</p>
-<p><code>SQLITE_OPEN_READONLY</code></p>
+<p>Each entry in an SQLite table has a unique 64-bit signed integer key called the &ldquo;rowid&rdquo;. The rowid is always available as an undeclared column named <code>ROWID</code>, <code>OID</code>, or <code>_ROWID_</code> as long as those names are not also used by explicitly declared columns. If the table has a column of type <code>INTEGER PRIMARY KEY</code> then that column is another alias for the rowid.</p>
-<p>The database is opened in read-only mode. If the database does not already exist, an error is returned.</p>
+<p>This routine returns the rowid of the most recent successful <code>INSERT</code> into the database from the database connection in the first argument. As of SQLite version 3.7.7, this routines records the last insert rowid of both ordinary tables and virtual tables. If no successful <code>INSERT</code> statements have ever occurred on that database connection, zero is returned.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/last_insert_rowid.html">sqlite3_last_insert_rowid()</a></p>
-<p><code>SQLITE_OPEN_READWRITE</code></p>
+</div>
-<p>The database is opened for reading and writing if possible, or reading only if the file is write protected by the operating system. In either case the database must already exist, otherwise an error is returned.</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">int64_t</span> <span class="n">lastInsertRowId</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">lastInsertRowId</span><span class="p">:</span> <span class="kt">Int64</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The rowid of the last inserted row.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)changes"></a>
+ <a name="//apple_ref/objc/Property/changes" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)changes">changes</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The number of rows changed by prior SQL statement.</p>
+
+<p>This function returns the number of database rows that were changed or inserted or deleted by the most recently completed SQL statement on the database connection specified by the first parameter. Only changes that are directly specified by the <code>INSERT</code> , <code>UPDATE</code> , or <code>DELETE</code> statement are counted.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/changes.html">sqlite3_changes()</a></p>
-<p><code>SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE</code></p>
-
-<p>The database is opened for reading and writing, and is created if it does not already exist. This is the behavior that is always used for <code>open</code> method.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>vfsName</code></th>
- <td><p>If vfs is given the value is passed to the vfs parameter of sqlite3_open_v2.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if successful, <code>NO</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/open.html">sqlite3_open_v2()</a></p></code></li>
-
- <li><code><p><a href="#//api/name/open">- open</a></p></code></li>
-
- <li><code><p><a href="#//api/name/close">- close</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/close" title="close"></a>
- <h3 class="method-title"><code><a href="#//api/name/close">&ndash;&nbsp;close</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Closing a database connection</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)close</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if success, <code>NO</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Closing a database connection</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/close.html">sqlite3_close()</a></p></code></li>
-
- <li><code><p><a href="#//api/name/open">- open</a></p></code></li>
-
- <li><code><p><a href="#//api/name/openWithFlags:">- openWithFlags:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/goodConnection" title="goodConnection"></a>
- <h3 class="method-title"><code><a href="#//api/name/goodConnection">&nbsp;&nbsp;goodConnection</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">changes</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">changes</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The number of rows changed by prior SQL statement.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Retrieving%20results"></a>
+ <a name="//apple_ref/objc/Section/Retrieving results" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Retrieving%20results"></a>
+ <h3 class="section-name"><p>Retrieving results</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:">-executeQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+
+<p>This method employs <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> for any optional value parameters. This properly escapes any characters that need escape sequences (e.g. quotation marks), which eliminates simple SQL errors as well as protects against SQL injection attacks. This method natively handles <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects. All other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>You cannot use this method from Swift due to incompatibilities between Swift and Objective-C variadic implementations. Consider using <code>&lt;executeQuery:values:&gt;</code> instead.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Test to see if we have a good connection to the database.</p>
- </div>
-
-
+</div>
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) BOOL goodConnection</code></div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders, followed by optional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code> , <code>NSNumber</code> , etc.), not fundamental C data types (e.g. <code>int</code> , etc.).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQueryWithFormat:"></a>
+ <a name="//apple_ref/objc/Method/-executeQueryWithFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQueryWithFormat:">-executeQueryWithFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeQuery:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This method does not technically perform a traditional printf-style replacement. What this method actually does is replace the printf-style percent sequences with a SQLite <code>?</code> placeholder, and then bind values to that placeholder. Thus the following command</p>
-
-
+</div>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeQueryWithFormat</span><span class="p">:</span><span class="s">@"SELECT * FROM test WHERE name=%@"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if everything succeeds, <code>NO</code> on failure.</p>
- </div>
-
+<p>is actually replacing the <code>%@</code> with <code>?</code> placeholder, and then performing something equivalent to <code>&lt;executeQuery:&gt;</code></p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT * FROM test WHERE name=?"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
-
+<p>There are two reasons why this distinction is important. First, the printf-style escape sequences can only be used where it is permissible to use a SQLite <code>?</code> placeholder. You can use it only for values in SQL statements, but not for table names or column names or any other non-value context. This method also cannot be used in conjunction with <code>pragma</code> statements and the like. Second, note the lack of quotation marks in the SQL. The <code>WHERE</code> clause was <em>not</em> <code>WHERE name=&#39;%@&#39;</code> (like you might have to do if you built a SQL statement using <code>NSString</code> method <code>stringWithFormat</code> ), but rather simply <code>WHERE name=%@</code>.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQueryWithFormat</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">format</span><span class="p">,</span>
+ <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with <code>printf</code>-style escape sequences, followed by ptional parameters to bind to use in conjunction with the <code>printf</code>-style escape sequences in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:withArgumentsInArray:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:withArgumentsInArray:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:withArgumentsInArray:">-executeQuery:<wbr>withArgumentsInArray:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>-executeQuery:values:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Test to see if we have a good connection to the database.</p>
+</div>
-<p>This will confirm whether:</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withArgumentsInArray</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withArgumentsIn</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:values:error:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:values:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:values:error:">-executeQuery:<wbr>values:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+
+<p>This is similar to <code>&lt;executeQuery:withArgumentsInArray:&gt;</code>, except that this also accepts a pointer to a <code>NSError</code> pointer, so that errors can be returned.</p>
-<ul>
-<li>is database open</li>
-<li>if open, it will try a simple SELECT statement and confirm that it succeeds.</li>
-</ul>
+<p>In Swift, this throws errors, as if it were defined as follows:</p>
- </div>
-
+<p><code>func executeQuery(sql: String, values: [Any]?) throws -&gt; FMResultSet!</code></p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
-
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
-
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>When called from Swift, only use the first two parameters, <code>sql</code> and <code>values</code>. This but throws the error.</p>
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Perform updates" name="task_Perform updates"></a>
- <h2 class="task-title">Perform updates</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">values</span><span class="p">:(</span><span class="n">NSArray</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">values</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">]?)</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>values</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:withParameterDictionary:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:withParameterDictionary:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:withParameterDictionary:">-executeQuery:<wbr>withParameterDictionary:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/executeUpdate:withErrorAndBindings:" title="executeUpdate:withErrorAndBindings:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeUpdate:withErrorAndBindings:">&ndash;&nbsp;executeUpdate:withErrorAndBindings:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeUpdate:(NSString *)<em>sql</em> withErrorAndBindings:(NSError *_Nullable *)<em>outErr</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>outErr</code></th>
- <td><p>A reference to the <code>NSError</code> pointer to be updated with an auto released <code>NSError</code> object if an error if an error occurs. If <code>nil</code>, no <code>NSError</code> object will be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>Optional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code>, <code>NSNumber</code>, etc.), not fundamental C data types (e.g. <code>int</code>, <code>char *</code>, etc.).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p>
-
-<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code>, <code>INSERT</code>, or <code>DELETE</code>. This method employs <a href="http://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a>, <a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> to bind values to <code>?</code> placeholders in the SQL with the optional list of parameters, and <a href="http://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update.</p>
-
-<p>The optional values provided to this method should be objects (e.g. <code>NSString</code>, <code>NSNumber</code>, <code>NSNull</code>, <code>NSDate</code>, and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code>, <code>long</code>, <code>NSInteger</code>, etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- <li><code><p><a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/update:withErrorAndBindings:" title="update:withErrorAndBindings:"></a>
- <h3 class="method-title"><code><a href="#//api/name/update:withErrorAndBindings:">&ndash;&nbsp;update:withErrorAndBindings:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withParameterDictionary</span><span class="p">:(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withParameterDictionary</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]?)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSDictionary</code> of objects keyed by column names that will be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:withVAList:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:withVAList:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:withVAList:">-executeQuery:<wbr>withVAList:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span> <span class="nf">withVAList</span><span class="p">:(</span><span class="kt">va_list</span><span class="p">)</span><span class="nv">args</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withVAList</span> <span class="nv">args</span><span class="p">:</span> <span class="kt">CVaListPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)prepare:"></a>
+ <a name="//apple_ref/objc/Method/-prepare:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)prepare:">-prepare:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Prepare SQL statement.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="p">)</span><span class="nf">prepare</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">prepare</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>SQL statement to prepare, generally with <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Transactions"></a>
+ <a name="//apple_ref/objc/Section/Transactions" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Transactions"></a>
+ <h3 class="section-name"><p>Transactions</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginTransaction">-beginTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin a transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginDeferredTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Unlike SQLite&rsquo;s <code>BEGIN TRANSACTION</code>, this method currently performs
+ an exclusive transaction, not a deferred transaction. This behavior
+ is likely to change in future versions of FMDB, whereby this method
+ will likely eventually adopt standard SQLite behavior and perform
+ deferred transactions. If you really need exclusive tranaction, it is
+ recommended that you use <code>beginExclusiveTransaction,</code> instead, not
+ only to make your intent explicit, but also to future-proof your code.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)update:(NSString *)<em>sql</em> withErrorAndBindings:(NSError *_Nullable *)<em>outErr</em>, <em>...</em></code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p><div class="warning"><p><strong>Warning:</strong> <strong>Deprecated</strong>: Please use <code>&lt;executeUpdate:withErrorAndBindings&gt;</code> instead.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/executeUpdate:withErrorAndBindings:">- executeUpdate:withErrorAndBindings:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeUpdate:" title="executeUpdate:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeUpdate:">&ndash;&nbsp;executeUpdate:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeUpdate:(NSString *)<em>sql</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>Optional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code>, <code>NSNumber</code>, etc.), not fundamental C data types (e.g. <code>int</code>, <code>char *</code>, etc.).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p>
-
-<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code>, <code>INSERT</code>, or <code>DELETE</code>. This method employs <a href="http://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a>, <a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> to bind values to <code>?</code> placeholders in the SQL with the optional list of parameters, and <a href="http://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update.</p>
-
-<p>The optional values provided to this method should be objects (e.g. <code>NSString</code>, <code>NSNumber</code>, <code>NSNull</code>, <code>NSDate</code>, and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code>, <code>long</code>, <code>NSInteger</code>, etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p><div class="note"><p><strong>Note:</strong> This technique supports the use of <code>?</code> placeholders in the SQL, automatically binding any supplied value parameters to those placeholders. This approach is more robust than techniques that entail using <code>stringWithFormat</code> to manually build SQL statements, which can be problematic if the values happened to include any characters that needed to be quoted.</p></div><div class="note"><p><strong>Note:</strong> You cannot use this method from Swift due to incompatibilities between Swift and Objective-C variadic implementations. Consider using <code>&lt;executeUpdate:values:&gt;</code> instead.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- <li><code><p><a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeUpdateWithFormat:" title="executeUpdateWithFormat:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeUpdateWithFormat:">&ndash;&nbsp;executeUpdateWithFormat:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginDeferredTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginDeferredTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginDeferredTransaction">-beginDeferredTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin a deferred transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeUpdateWithFormat:(NSString *)<em>format</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>format</code></th>
- <td><p>The SQL to be performed, with <code>printf</code>-style escape sequences.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>Optional parameters to bind to use in conjunction with the <code>printf</code>-style escape sequences in the SQL statement.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p>
-
-<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code>, <code>INSERT</code>, or <code>DELETE</code>. This method employs <a href="http://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="http://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL. Do not use <code>?</code> placeholders in the SQL if you use this method.</p><div class="note"><p><strong>Note:</strong> This method does not technically perform a traditional printf-style replacement. What this method actually does is replace the printf-style percent sequences with a SQLite <code>?</code> placeholder, and then bind values to that placeholder. Thus the following command</p>
-
-<pre><code>[db executeUpdateWithFormat:@"INSERT INTO test (name) VALUES (%@)", @"Gus"];
-</code></pre>
+</div>
-<p>is actually replacing the <code>%@</code> with <code>?</code> placeholder, and then performing something equivalent to <a href="#//api/name/executeUpdate:"><code>executeUpdate:</code></a></p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginDeferredTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginDeferredTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginImmediateTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginImmediateTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginImmediateTransaction">-beginImmediateTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin an immediate transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
-<pre><code>[db executeUpdate:@"INSERT INTO test (name) VALUES (?)", @"Gus"];
-</code></pre>
+</div>
-<p>There are two reasons why this distinction is important. First, the printf-style escape sequences can only be used where it is permissible to use a SQLite <code>?</code> placeholder. You can use it only for values in SQL statements, but not for table names or column names or any other non-value context. This method also cannot be used in conjunction with <code>pragma</code> statements and the like. Second, note the lack of quotation marks in the SQL. The <code>VALUES</code> clause was <em>not</em> <code>VALUES ('%@')</code> (like you might have to do if you built a SQL statement using <code>NSString</code> method <code>stringWithFormat</code>), but rather simply <code>VALUES (%@)</code>.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/executeUpdate:">- executeUpdate:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeUpdate:withArgumentsInArray:" title="executeUpdate:withArgumentsInArray:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeUpdate:withArgumentsInArray:">&ndash;&nbsp;executeUpdate:withArgumentsInArray:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginImmediateTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginImmediateTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginExclusiveTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginExclusiveTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginExclusiveTransaction">-beginExclusiveTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin an exclusive transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeUpdate:(NSString *)<em>sql</em> withArgumentsInArray:(NSArray *)<em>arguments</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>arguments</code></th>
- <td><p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p>
-
-<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code>, <code>INSERT</code>, or <code>DELETE</code>. This method employs <a href="http://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> binding any <code>?</code> placeholders in the SQL with the optional list of parameters.</p>
-
-<p>The optional values provided to this method should be objects (e.g. <code>NSString</code>, <code>NSNumber</code>, <code>NSNull</code>, <code>NSDate</code>, and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code>, <code>long</code>, <code>NSInteger</code>, etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/executeUpdate:values:error:">- executeUpdate:values:error:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeUpdate:values:error:" title="executeUpdate:values:error:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeUpdate:values:error:">&ndash;&nbsp;executeUpdate:values:error:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeUpdate:(NSString *)<em>sql</em> values:(NSArray *_Nullable)<em>values</em> error:(NSError *_Nullable __autoreleasing *)<em>error</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>values</code></th>
- <td><p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>error</code></th>
- <td><p>A <code>NSError</code> object to receive any error object (if any).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p>
-
-<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code>, <code>INSERT</code>, or <code>DELETE</code>. This method employs <a href="http://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> binding any <code>?</code> placeholders in the SQL with the optional list of parameters.</p>
-
-<p>The optional values provided to this method should be objects (e.g. <code>NSString</code>, <code>NSNumber</code>, <code>NSNull</code>, <code>NSDate</code>, and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code>, <code>long</code>, <code>NSInteger</code>, etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
-
-<p>This is similar to <a href="#//api/name/executeUpdate:withArgumentsInArray:"><code>executeUpdate:withArgumentsInArray:</code></a>, except that this also accepts a pointer to a <code>NSError</code> pointer, so that errors can be returned.</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginExclusiveTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginExclusiveTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)commit"></a>
+ <a name="//apple_ref/objc/Method/-commit" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)commit">-commit</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Commit a transaction</p>
+
+<p>Commit a transaction that was initiated with either <code>&lt;beginTransaction&gt;</code> or with <code>&lt;beginDeferredTransaction&gt;</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginDeferredTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
-<p>In Swift, this throws errors, as if it were defined as follows:</p>
+</div>
-<p><code>func executeUpdate(sql: String, values: [Any]?) throws -&gt; Bool</code></p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeUpdate:withParameterDictionary:" title="executeUpdate:withParameterDictionary:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeUpdate:withParameterDictionary:">&ndash;&nbsp;executeUpdate:withParameterDictionary:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">commit</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">commit</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rollback"></a>
+ <a name="//apple_ref/objc/Method/-rollback" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rollback">-rollback</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Rollback a transaction</p>
+
+<p>Rollback a transaction that was initiated with either <code>&lt;beginTransaction&gt;</code> or with <code>&lt;beginDeferredTransaction&gt;</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginDeferredTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeUpdate:(NSString *)<em>sql</em> withParameterDictionary:(NSDictionary *)<em>arguments</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>arguments</code></th>
- <td><p>A <code>NSDictionary</code> of objects keyed by column names that will be used when binding values to the <code>?</code> placeholders in the SQL statement.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p>
-
-<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code>, <code>INSERT</code>, or <code>DELETE</code>. This method employs <a href="http://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="http://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL.</p>
-
-<p>The optional values provided to this method should be objects (e.g. <code>NSString</code>, <code>NSNumber</code>, <code>NSNull</code>, <code>NSDate</code>, and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code>, <code>long</code>, <code>NSInteger</code>, etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeUpdate:withVAList:" title="executeUpdate:withVAList:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeUpdate:withVAList:">&ndash;&nbsp;executeUpdate:withVAList:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute single update statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeUpdate:(NSString *)<em>sql</em> withVAList:(va_list)<em>args</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>args</code></th>
- <td><p>A <code>va_list</code> of arguments.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute single update statement</p>
-
-<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code>, <code>INSERT</code>, or <code>DELETE</code>. This method employs <a href="http://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="http://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL.</p>
-
-<p>The optional values provided to this method should be objects (e.g. <code>NSString</code>, <code>NSNumber</code>, <code>NSNull</code>, <code>NSDate</code>, and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code>, <code>long</code>, <code>NSInteger</code>, etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeStatements:" title="executeStatements:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeStatements:">&ndash;&nbsp;executeStatements:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">rollback</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rollback</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)isInTransaction"></a>
+ <a name="//apple_ref/objc/Property/isInTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)isInTransaction">isInTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Identify whether currently in a transaction or not</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ beginTransaction
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ beginDeferredTransaction
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ commit
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ rollback
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute multiple SQL statements</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeStatements:(NSString *)<em>sql</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute multiple SQL statements</p>
+</div>
-<p>This executes a series of SQL statements that are combined in a single string (e.g. the SQL generated by the <code>sqlite3</code> command line <code>.dump</code> command). This accepts no value parameters, but rather simply expects a single string with multiple SQL statements, each terminated with a semicolon. This uses <code>sqlite3_exec</code>.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/executeStatements:withResultBlock:">- executeStatements:withResultBlock:</a></p></code></li>
-
- <li><code><p><a href="http://sqlite.org/c3ref/exec.html">sqlite3_exec()</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeStatements:withResultBlock:" title="executeStatements:withResultBlock:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeStatements:withResultBlock:">&ndash;&nbsp;executeStatements:withResultBlock:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">isInTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">isInTransaction</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)inTransaction"></a>
+ <a name="//apple_ref/objc/Method/-inTransaction" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)inTransaction">-inTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use isInTransaction property instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">inTransaction</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use isInTransaction property instead"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Cached%20statements%20and%20result%20sets"></a>
+ <a name="//apple_ref/objc/Section/Cached statements and result sets" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Cached%20statements%20and%20result%20sets"></a>
+ <h3 class="section-name"><p>Cached statements and result sets</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)clearCachedStatements"></a>
+ <a name="//apple_ref/objc/Method/-clearCachedStatements" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)clearCachedStatements">-clearCachedStatements</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Clear cached statements</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">clearCachedStatements</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">clearCachedStatements</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)closeOpenResultSets"></a>
+ <a name="//apple_ref/objc/Method/-closeOpenResultSets" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)closeOpenResultSets">-closeOpenResultSets</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close all open result sets</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">closeOpenResultSets</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">closeOpenResultSets</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)hasOpenResultSets"></a>
+ <a name="//apple_ref/objc/Property/hasOpenResultSets" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)hasOpenResultSets">hasOpenResultSets</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether database has any open result sets</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">hasOpenResultSets</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">hasOpenResultSets</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if there are open result sets; <code>NO</code> if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)shouldCacheStatements"></a>
+ <a name="//apple_ref/objc/Property/shouldCacheStatements" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)shouldCacheStatements">shouldCacheStatements</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether should cache statements or not</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">shouldCacheStatements</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">shouldCacheStatements</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)interrupt"></a>
+ <a name="//apple_ref/objc/Method/-interrupt" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)interrupt">-interrupt</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Interupt pending database operation</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute multiple SQL statements with callback handler</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)executeStatements:(NSString *)<em>sql</em> withResultBlock:(FMDBExecuteStatementsCallbackBlock _Nullable)<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SQL to be performed.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>A block that will be called for any result sets returned by any SQL statements.
- Note, if you supply this block, it must return integer value, zero upon success (this would be a good opportunity to use SQLITE_OK),
- non-zero value upon failure (which will stop the bulk execution of the SQL). If a statement returns values, the block will be called with the results from the query in NSDictionary *resultsDictionary.
- This may be <code>nil</code> if you don&rsquo;t care to receive any results.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>,
- <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute multiple SQL statements with callback handler</p>
+<p>This method causes any pending database operation to abort and return at its earliest opportunity</p>
-<p>This executes a series of SQL statements that are combined in a single string (e.g. the SQL generated by the <code>sqlite3</code> command line <code>.dump</code> command). This accepts no value parameters, but rather simply expects a single string with multiple SQL statements, each terminated with a semicolon. This uses <code>sqlite3_exec</code>.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/executeStatements:">- executeStatements:</a></p></code></li>
-
- <li><code><p><a href="http://sqlite.org/c3ref/exec.html">sqlite3_exec()</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/lastInsertRowId" title="lastInsertRowId"></a>
- <h3 class="method-title"><code><a href="#//api/name/lastInsertRowId">&nbsp;&nbsp;lastInsertRowId</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">interrupt</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">interrupt</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Encryption%20methods"></a>
+ <a name="//apple_ref/objc/Section/Encryption methods" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Encryption%20methods"></a>
+ <h3 class="section-name"><p>Encryption methods</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)setKey:"></a>
+ <a name="//apple_ref/objc/Method/-setKey:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)setKey:">-setKey:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Set encryption key.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Last insert rowid</p>
- </div>
-
-
+</div>
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) int64_t lastInsertRowId</code></div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">setKey</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">key</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">setKey</span><span class="p">(</span><span class="n">_</span> <span class="nv">key</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>key</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The key to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rekey:"></a>
+ <a name="//apple_ref/objc/Method/-rekey:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rekey:">-rekey:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Reset encryption key</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
-
-
+</div>
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The rowid of the last inserted row.</p>
- </div>
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">rekey</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">key</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rekey</span><span class="p">(</span><span class="n">_</span> <span class="nv">key</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>key</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The key to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)setKeyWithData:"></a>
+ <a name="//apple_ref/objc/Method/-setKeyWithData:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)setKeyWithData:">-setKeyWithData:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Set encryption key using <code>keyData</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
-
+</div>
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Last insert rowid</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">setKeyWithData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">keyData</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">setKeyWith</span><span class="p">(</span><span class="n">_</span> <span class="nv">keyData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>keyData</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSData</code> to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rekeyWithData:"></a>
+ <a name="//apple_ref/objc/Method/-rekeyWithData:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rekeyWithData:">-rekeyWithData:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Reset encryption key using <code>keyData</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
-<p>Each entry in an SQLite table has a unique 64-bit signed integer key called the &ldquo;rowid&rdquo;. The rowid is always available as an undeclared column named <code>ROWID</code>, <code>OID</code>, or <code>_ROWID_</code> as long as those names are not also used by explicitly declared columns. If the table has a column of type <code>INTEGER PRIMARY KEY</code> then that column is another alias for the rowid.</p>
+</div>
-<p>This routine returns the rowid of the most recent successful <code>INSERT</code> into the database from the database connection in the first argument. As of SQLite version 3.7.7, this routines records the last insert rowid of both ordinary tables and virtual tables. If no successful <code>INSERT</code>s have ever occurred on that database connection, zero is returned.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/last_insert_rowid.html">sqlite3_last_insert_rowid()</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/changes" title="changes"></a>
- <h3 class="method-title"><code><a href="#//api/name/changes">&nbsp;&nbsp;changes</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">rekeyWithData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">keyData</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rekey</span><span class="p">(</span><span class="n">with</span> <span class="nv">keyData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>keyData</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSData</code> to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/General%20inquiry%20methods"></a>
+ <a name="//apple_ref/objc/Section/General inquiry methods" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/General%20inquiry%20methods"></a>
+ <h3 class="section-name"><p>General inquiry methods</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)databasePath"></a>
+ <a name="//apple_ref/objc/Property/databasePath" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)databasePath">databasePath</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The path of the database file.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">databasePath</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">databasePath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)databaseURL"></a>
+ <a name="//apple_ref/objc/Property/databaseURL" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)databaseURL">databaseURL</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The file URL of the database file.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSURL</span> <span class="o">*</span><span class="n">databaseURL</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">databaseURL</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)sqliteHandle"></a>
+ <a name="//apple_ref/objc/Property/sqliteHandle" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)sqliteHandle">sqliteHandle</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The underlying SQLite handle .</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">sqliteHandle</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">sqliteHandle</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>sqlite3</code> pointer.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Retrieving%20error%20codes"></a>
+ <a name="//apple_ref/objc/Section/Retrieving error codes" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Retrieving%20error%20codes"></a>
+ <h3 class="section-name"><p>Retrieving error codes</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastErrorMessage"></a>
+ <a name="//apple_ref/objc/Method/-lastErrorMessage" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastErrorMessage">-lastErrorMessage</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last error message</p>
+
+<p>Returns the English-language text that describes the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/errcode.html">sqlite3_errmsg()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>The number of rows changed by prior SQL statement.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) int changes</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The number of rows changed by prior SQL statement.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>The number of rows changed by prior SQL statement.</p>
-
-<p>This function returns the number of database rows that were changed or inserted or deleted by the most recently completed SQL statement on the database connection specified by the first parameter. Only changes that are directly specified by the INSERT, UPDATE, or DELETE statement are counted.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/changes.html">sqlite3_changes()</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Retrieving results" name="task_Retrieving results"></a>
- <h2 class="task-title">Retrieving results</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="n">lastErrorMessage</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastErrorMessage</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">String</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSString</code> of the last error message.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastErrorCode"></a>
+ <a name="//apple_ref/objc/Method/-lastErrorCode" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastErrorCode">-lastErrorCode</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last error code</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/executeQuery:" title="executeQuery:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeQuery:">&ndash;&nbsp;executeQuery:</a></code>
-</h3>
+<p>Returns the numeric result code or extended result code for the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/errcode.html">sqlite3_errcode()</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute select statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (FMResultSet *_Nullable)executeQuery:(NSString *)<em>sql</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>Optional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code>, <code>NSNumber</code>, etc.), not fundamental C data types (e.g. <code>int</code>, <code>char *</code>, etc.).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>A <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute select statement</p>
-
-<p>Executing queries returns an <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> and <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> methods to determine why a query failed.</p>
-
-<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <a href="../Classes/FMResultSet.html#//api/name/next"><code>[FMResultSet next]</code></a>) from one record to the other.</p>
-
-<p>This method employs <a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> for any optional value parameters. This properly escapes any characters that need escape sequences (e.g. quotation marks), which eliminates simple SQL errors as well as protects against SQL injection attacks. This method natively handles <code>NSString</code>, <code>NSNumber</code>, <code>NSNull</code>, <code>NSDate</code>, and <code>NSData</code> objects. All other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p><div class="note"><p><strong>Note:</strong> You cannot use this method from Swift due to incompatibilities between Swift and Objective-C variadic implementations. Consider using <code>&lt;executeQuery:values:&gt;</code> instead.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="../Classes/FMResultSet.html">FMResultSet</a></p></code></li>
-
- <li><code><p><a href="../Classes/FMResultSet.html#//api/name/next"><code>FMResultSet next</code></a></p></code></li>
-
- <li><code><p><a href="http://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeQueryWithFormat:" title="executeQueryWithFormat:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeQueryWithFormat:">&ndash;&nbsp;executeQueryWithFormat:</a></code>
-</h3>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute select statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (FMResultSet *_Nullable)executeQueryWithFormat:(NSString *)<em>format</em>, <em>...</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>format</code></th>
- <td><p>The SQL to be performed, with <code>printf</code>-style escape sequences.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>...</code></th>
- <td><p>Optional parameters to bind to use in conjunction with the <code>printf</code>-style escape sequences in the SQL statement.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>A <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute select statement</p>
-
-<p>Executing queries returns an <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> and <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> methods to determine why a query failed.</p>
-
-<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <a href="../Classes/FMResultSet.html#//api/name/next"><code>[FMResultSet next]</code></a>) from one record to the other.</p><div class="note"><p><strong>Note:</strong> This method does not technically perform a traditional printf-style replacement. What this method actually does is replace the printf-style percent sequences with a SQLite <code>?</code> placeholder, and then bind values to that placeholder. Thus the following command</p>
-
-<pre><code>[db executeQueryWithFormat:@"SELECT * FROM test WHERE name=%@", @"Gus"];
-</code></pre>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
-<p>is actually replacing the <code>%@</code> with <code>?</code> placeholder, and then performing something equivalent to <code>executeQuery:</code></p>
+</div>
-<pre><code>[db executeQuery:@"SELECT * FROM test WHERE name=?", @"Gus"];
-</code></pre>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="n">lastErrorCode</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastErrorCode</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Integer value of the last error code.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastExtendedErrorCode"></a>
+ <a name="//apple_ref/objc/Method/-lastExtendedErrorCode" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastExtendedErrorCode">-lastExtendedErrorCode</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last extended error code</p>
-<p>There are two reasons why this distinction is important. First, the printf-style escape sequences can only be used where it is permissible to use a SQLite <code>?</code> placeholder. You can use it only for values in SQL statements, but not for table names or column names or any other non-value context. This method also cannot be used in conjunction with <code>pragma</code> statements and the like. Second, note the lack of quotation marks in the SQL. The <code>WHERE</code> clause was <em>not</em> <code>WHERE name='%@'</code> (like you might have to do if you built a SQL statement using <code>NSString</code> method <code>stringWithFormat</code>), but rather simply <code>WHERE name=%@</code>.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/executeQuery:">- executeQuery:</a></p></code></li>
-
- <li><code><p><a href="../Classes/FMResultSet.html">FMResultSet</a></p></code></li>
-
- <li><code><p><a href="../Classes/FMResultSet.html#//api/name/next"><code>FMResultSet next</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeQuery:withArgumentsInArray:" title="executeQuery:withArgumentsInArray:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeQuery:withArgumentsInArray:">&ndash;&nbsp;executeQuery:withArgumentsInArray:</a></code>
-</h3>
+<p>Returns the numeric extended result code for the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/errcode.html">sqlite3_errcode()</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute select statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (FMResultSet *_Nullable)executeQuery:(NSString *)<em>sql</em> withArgumentsInArray:(NSArray *)<em>arguments</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>arguments</code></th>
- <td><p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>A <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute select statement</p>
-
-<p>Executing queries returns an <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> and <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> methods to determine why a query failed.</p>
-
-<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <a href="../Classes/FMResultSet.html#//api/name/next"><code>[FMResultSet next]</code></a>) from one record to the other.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/executeQuery:values:error:">- executeQuery:values:error:</a></p></code></li>
-
- <li><code><p><a href="../Classes/FMResultSet.html">FMResultSet</a></p></code></li>
-
- <li><code><p><a href="../Classes/FMResultSet.html#//api/name/next"><code>FMResultSet next</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeQuery:values:error:" title="executeQuery:values:error:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeQuery:values:error:">&ndash;&nbsp;executeQuery:values:error:</a></code>
-</h3>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/rescode.html#primary_result_codes_versus_extended_result_codes">2. Primary Result Codes versus Extended Result Codes</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute select statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (FMResultSet *_Nullable)executeQuery:(NSString *)<em>sql</em> values:(NSArray *_Nullable)<em>values</em> error:(NSError *_Nullable __autoreleasing *)<em>error</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>values</code></th>
- <td><p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>error</code></th>
- <td><p>A <code>NSError</code> object to receive any error object (if any).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>A <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute select statement</p>
-
-<p>Executing queries returns an <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> and <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> methods to determine why a query failed.</p>
-
-<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <a href="../Classes/FMResultSet.html#//api/name/next"><code>[FMResultSet next]</code></a>) from one record to the other.</p>
-
-<p>This is similar to <a href="#//api/name/executeQuery:withArgumentsInArray:"><code>executeQuery:withArgumentsInArray:</code></a>, except that this also accepts a pointer to a <code>NSError</code> pointer, so that errors can be returned.</p>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/rescode.html#extrc">5. Extended Result Code List</a></p>
-<p>In Swift, this throws errors, as if it were defined as follows:</p>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
-<p><code>func executeQuery(sql: String, values: [Any]?) throws -&gt; FMResultSet!</code></p><div class="note"><p><strong>Note:</strong> When called from Swift, only use the first two parameters, <code>sql</code> and <code>values</code>. This but throws the error.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="../Classes/FMResultSet.html">FMResultSet</a></p></code></li>
-
- <li><code><p><a href="../Classes/FMResultSet.html#//api/name/next"><code>FMResultSet next</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/executeQuery:withParameterDictionary:" title="executeQuery:withParameterDictionary:"></a>
- <h3 class="method-title"><code><a href="#//api/name/executeQuery:withParameterDictionary:">&ndash;&nbsp;executeQuery:withParameterDictionary:</a></code>
-</h3>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Execute select statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (FMResultSet *_Nullable)executeQuery:(NSString *)<em>sql</em> withParameterDictionary:(NSDictionary *_Nullable)<em>arguments</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>sql</code></th>
- <td><p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>arguments</code></th>
- <td><p>A <code>NSDictionary</code> of objects keyed by column names that will be used when binding values to the <code>?</code> placeholders in the SQL statement.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>A <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Execute select statement</p>
-
-<p>Executing queries returns an <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> and <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> methods to determine why a query failed.</p>
-
-<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <a href="../Classes/FMResultSet.html#//api/name/next"><code>[FMResultSet next]</code></a>) from one record to the other.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="../Classes/FMResultSet.html">FMResultSet</a></p></code></li>
-
- <li><code><p><a href="../Classes/FMResultSet.html#//api/name/next"><code>FMResultSet next</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Transactions" name="task_Transactions"></a>
- <h2 class="task-title">Transactions</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="n">lastExtendedErrorCode</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastExtendedErrorCode</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Integer value of the last extended error code.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)hadError"></a>
+ <a name="//apple_ref/objc/Method/-hadError" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)hadError">-hadError</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Had error</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/beginTransaction" title="beginTransaction"></a>
- <h3 class="method-title"><code><a href="#//api/name/beginTransaction">&ndash;&nbsp;beginTransaction</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Begin a transaction</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)beginTransaction</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Begin a transaction</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/commit">- commit</a></p></code></li>
-
- <li><code><p><a href="#//api/name/rollback">- rollback</a></p></code></li>
-
- <li><code><p><a href="#//api/name/beginDeferredTransaction">- beginDeferredTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/isInTransaction">@property isInTransaction</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/beginDeferredTransaction" title="beginDeferredTransaction"></a>
- <h3 class="method-title"><code><a href="#//api/name/beginDeferredTransaction">&ndash;&nbsp;beginDeferredTransaction</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">hadError</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">hadError</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if there was an error, <code>NO</code> if no error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastError"></a>
+ <a name="//apple_ref/objc/Method/-lastError" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastError">-lastError</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last error</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Begin a deferred transaction</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)beginDeferredTransaction</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Begin a deferred transaction</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/commit">- commit</a></p></code></li>
-
- <li><code><p><a href="#//api/name/rollback">- rollback</a></p></code></li>
-
- <li><code><p><a href="#//api/name/beginTransaction">- beginTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/isInTransaction">@property isInTransaction</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/commit" title="commit"></a>
- <h3 class="method-title"><code><a href="#//api/name/commit">&ndash;&nbsp;commit</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Commit a transaction</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)commit</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Commit a transaction</p>
-
-<p>Commit a transaction that was initiated with either <a href="#//api/name/beginTransaction"><code>beginTransaction</code></a> or with <a href="#//api/name/beginDeferredTransaction"><code>beginDeferredTransaction</code></a>.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/beginTransaction">- beginTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/beginDeferredTransaction">- beginDeferredTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/rollback">- rollback</a></p></code></li>
-
- <li><code><p><a href="#//api/name/isInTransaction">@property isInTransaction</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/rollback" title="rollback"></a>
- <h3 class="method-title"><code><a href="#//api/name/rollback">&ndash;&nbsp;rollback</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSError</span> <span class="o">*</span><span class="p">)</span><span class="n">lastError</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastError</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Error</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSError</code> representing the last error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)maxBusyRetryTimeInterval"></a>
+ <a name="//apple_ref/objc/Property/maxBusyRetryTimeInterval" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)maxBusyRetryTimeInterval">maxBusyRetryTimeInterval</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="n">NSTimeInterval</span> <span class="n">maxBusyRetryTimeInterval</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">maxBusyRetryTimeInterval</span><span class="p">:</span> <span class="kt">TimeInterval</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Save%20points"></a>
+ <a name="//apple_ref/objc/Section/Save points" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Save%20points"></a>
+ <h3 class="section-name"><p>Save points</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)startSavePointWithName:error:"></a>
+ <a name="//apple_ref/objc/Method/-startSavePointWithName:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)startSavePointWithName:error:">-startSavePointWithName:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Start save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>releaseSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollbackToSavePointWithName:error:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Rollback a transaction</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)rollback</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Rollback a transaction</p>
-
-<p>Rollback a transaction that was initiated with either <a href="#//api/name/beginTransaction"><code>beginTransaction</code></a> or with <a href="#//api/name/beginDeferredTransaction"><code>beginDeferredTransaction</code></a>.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/beginTransaction">- beginTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/beginDeferredTransaction">- beginDeferredTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/commit">- commit</a></p></code></li>
-
- <li><code><p><a href="#//api/name/isInTransaction">@property isInTransaction</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/isInTransaction" title="isInTransaction"></a>
- <h3 class="method-title"><code><a href="#//api/name/isInTransaction">&nbsp;&nbsp;isInTransaction</a></code>
-</h3>
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">startSavePointWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">startSavePoint</span><span class="p">(</span><span class="n">withName</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of save point.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)releaseSavePointWithName:error:"></a>
+ <a name="//apple_ref/objc/Method/-releaseSavePointWithName:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)releaseSavePointWithName:error:">-releaseSavePointWithName:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Release save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>startSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollbackToSavePointWithName:error:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Identify whether currently in a transaction or not</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) BOOL isInTransaction</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Identify whether currently in a transaction or not</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/beginTransaction">- beginTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/beginDeferredTransaction">- beginDeferredTransaction</a></p></code></li>
-
- <li><code><p><a href="#//api/name/commit">- commit</a></p></code></li>
-
- <li><code><p><a href="#//api/name/rollback">- rollback</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Cached statements and result sets" name="task_Cached statements and result sets"></a>
- <h2 class="task-title">Cached statements and result sets</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">releaseSavePointWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">releaseSavePoint</span><span class="p">(</span><span class="n">withName</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of save point.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rollbackToSavePointWithName:error:"></a>
+ <a name="//apple_ref/objc/Method/-rollbackToSavePointWithName:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rollbackToSavePointWithName:error:">-rollbackToSavePointWithName:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Roll back to save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>startSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>releaseSavePointWithName:error:</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/clearCachedStatements" title="clearCachedStatements"></a>
- <h3 class="method-title"><code><a href="#//api/name/clearCachedStatements">&ndash;&nbsp;clearCachedStatements</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Clear cached statements</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)clearCachedStatements</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Clear cached statements</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/closeOpenResultSets" title="closeOpenResultSets"></a>
- <h3 class="method-title"><code><a href="#//api/name/closeOpenResultSets">&ndash;&nbsp;closeOpenResultSets</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">rollbackToSavePointWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rollbackToSavePoint</span><span class="p">(</span><span class="n">withName</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of save point.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)inSavePoint:"></a>
+ <a name="//apple_ref/objc/Method/-inSavePoint:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)inSavePoint:">-inSavePoint:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Start save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>startSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>releaseSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollbackToSavePointWithName:error:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Close all open result sets</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)closeOpenResultSets</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Close all open result sets</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/hasOpenResultSets" title="hasOpenResultSets"></a>
- <h3 class="method-title"><code><a href="#//api/name/hasOpenResultSets">&nbsp;&nbsp;hasOpenResultSets</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Whether database has any open result sets</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) BOOL hasOpenResultSets</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if there are open result sets; <code>NO</code> if not.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Whether database has any open result sets</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/shouldCacheStatements" title="shouldCacheStatements"></a>
- <h3 class="method-title"><code><a href="#//api/name/shouldCacheStatements">&nbsp;&nbsp;shouldCacheStatements</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">inSavePoint</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inSavePoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Error</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Block of code to perform from within save point.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The NSError corresponding to the error, if any. If no error, returns <code>nil</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Checkpoint"></a>
+ <a name="//apple_ref/objc/Section/Checkpoint" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Checkpoint"></a>
+ <h3 class="section-name"><p>Checkpoint</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Whether should cache statements or not</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic) BOOL shouldCacheStatements</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Whether should cache statements or not</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/interrupt" title="interrupt"></a>
- <h3 class="method-title"><code><a href="#//api/name/interrupt">&ndash;&nbsp;interrupt</a></code>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)checkpoint:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)checkpoint:error:">-checkpoint:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for <code>sqlite3_wal_checkpoint_v2</code></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSError</code> corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success, otherwise <code>NO</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)checkpoint:name:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)checkpoint:name:error:">-checkpoint:<wbr>name:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for <code>sqlite3_wal_checkpoint_v2</code></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for <code>sqlite3_wal_checkpoint_v2</code></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSError</code> corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success, otherwise <code>NO</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)checkpoint:name:logFrameCount:checkpointCount:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:logFrameCount:checkpointCount:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)checkpoint:name:logFrameCount:checkpointCount:error:">-checkpoint:<wbr>name:<wbr>logFrameCount:<wbr>checkpointCount:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">logFrameCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">logFrameCount</span>
+ <span class="nf">checkpointCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">checkpointCount</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">logFrameCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?,</span> <span class="nv">checkpointCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>logFrameCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not <code>NULL</code> , then this is set to the total number of frames in the log file or to -1 if the checkpoint could not run because of an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not <code>NULL</code> , then this is set to the total number of checkpointed frames in the log file (including any that were already checkpointed before the function was called) or to -1 if the checkpoint could not run due to an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success, otherwise <code>NO</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/SQLite%20library%20status"></a>
+ <a name="//apple_ref/objc/Section/SQLite library status" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/SQLite%20library%20status"></a>
+ <h3 class="section-name"><p>SQLite library status</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)isSQLiteThreadSafe"></a>
+ <a name="//apple_ref/objc/Method/+isSQLiteThreadSafe" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)isSQLiteThreadSafe">+isSQLiteThreadSafe</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test to see if the library is threadsafe</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/threadsafe.html">sqlite3_threadsafe()</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
+</div>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Interupt pending database operation</p>
- </div>
-
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">isSQLiteThreadSafe</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">isSQLiteThreadSafe</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NO</code> if and only if SQLite was compiled with mutexing code omitted due to the <code>SQLITE_THREADSAFE</code> compile-time option being set to 0.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)limitFor:value:"></a>
+ <a name="//apple_ref/objc/Method/-limitFor:value:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)limitFor:value:">-limitFor:<wbr>value:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Examine/set limits</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/limit.html">sqlite3_limit()</a></p>
- <div class="method-subsection method-declaration"><code>- (BOOL)interrupt</code></div>
+</div>
-
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">limitFor</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">type</span> <span class="nf">value</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">newLimit</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">limit</span><span class="p">(</span><span class="k">for</span> <span class="nv">type</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">value</span> <span class="nv">newLimit</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>type</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The type of limit. See <a href="https://sqlite.org/c3ref/c_limit_attached.html">https://sqlite.org/c3ref/c_limit_attached.html</a></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>newLimit</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The new limit value. Use -1 if you don&rsquo;t want to change the limit, but rather only want to check it.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Regardless, returns previous value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)sqliteLibVersion"></a>
+ <a name="//apple_ref/objc/Method/+sqliteLibVersion" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)sqliteLibVersion">+sqliteLibVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Run-time library version numbers</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/libversion.html">sqlite3_libversion()</a></p>
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
+</div>
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="n">sqliteLibVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">sqliteLibVersion</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">String</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The sqlite library version string.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)FMDBUserVersion"></a>
+ <a name="//apple_ref/objc/Method/+FMDBUserVersion" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)FMDBUserVersion">+FMDBUserVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The FMDB version number as a string in the form of <code>&quot;2.7.7&quot;</code> .</p>
+
+<p>If you want to compare version number strings, you can use NSNumericSearch option:</p>
+<pre class="highlight objective_c"><code><span class="n">NSComparisonResult</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">FMDBUserVersion</span><span class="p">]</span> <span class="nf">compare</span><span class="p">:</span><span class="s">@"2.11.0"</span> <span class="nf">options</span><span class="p">:</span><span class="n">NSNumericSearch</span><span class="p">];</span>
+</code></pre>
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Interupt pending database operation</p>
+<p>@returns The version number string.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="n">FMDBUserVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">fmdbUserVersion</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">String</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)FMDBVersion"></a>
+ <a name="//apple_ref/objc/Method/+FMDBVersion" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(cm)FMDBVersion">+FMDBVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use FMDBUserVersion instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>The FMDB version</p>
+
+<p>This returns the FMDB as hexadecimal value, e.g., <code>0x0243</code> for version 2.4.3.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ This routine will not work if any component of the version number exceeds 15.
+ For example, if it is version <code>2.17.3</code> , this will max out at <code>0x2f3.</code>
+ For this reason, we would recommend using <code>FMDBUserVersion</code> and with <code>NSNumericSearch</code> option, e.g.
-<p>This method causes any pending database operation to abort and return at its earliest opportunity</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
-
- <a title="Encryption methods" name="task_Encryption methods"></a>
- <h2 class="task-title">Encryption methods</h2>
+<pre class="highlight objective_c"><code> <span class="n">NSComparisonResult</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">FMDBUserVersion</span><span class="p">]</span> <span class="nf">compare</span><span class="p">:</span><span class="s">@"2.11.0"</span> <span class="nf">options</span><span class="p">:</span><span class="n">NSNumericSearch</span><span class="p">];</span>
+</code></pre>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/setKey:" title="setKey:"></a>
- <h3 class="method-title"><code><a href="#//api/name/setKey:">&ndash;&nbsp;setKey:</a></code>
+<p>@returns The version number in hexadecimal, e.g., <code>0x0243</code> for version 2.4.3. If any component exceeds what can be
+ can be represented in four bits, we&rsquo;ll max it out at <code>0xf</code> .</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">SInt32</span><span class="p">)</span><span class="n">FMDBVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">fmdbVersion</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Make%20SQL%20function"></a>
+ <a name="//apple_ref/objc/Section/Make SQL function" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Make%20SQL%20function"></a>
+ <h3 class="section-name"><p>Make SQL function</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)makeFunctionNamed:arguments:block:"></a>
+ <a name="//apple_ref/objc/Method/-makeFunctionNamed:arguments:block:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)makeFunctionNamed:arguments:block:">-makeFunctionNamed:<wbr>arguments:<wbr>block:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Adds SQL functions or aggregates or to redefine the behavior of existing SQL functions or aggregates.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Set encryption key.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)setKey:(NSString *)<em>key</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>key</code></th>
- <td><p>The key to be used.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if success, <code>NO</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Set encryption key.</p><div class="warning"><p><strong>Warning:</strong> You need to have purchased the sqlite encryption extensions for this method to work.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/rekey:" title="rekey:"></a>
- <h3 class="method-title"><code><a href="#//api/name/rekey:">&ndash;&nbsp;rekey:</a></code>
-</h3>
+<p>For example:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">makeFunctionNamed</span><span class="p">:</span><span class="s">@"RemoveDiacritics"</span> <span class="nf">arguments</span><span class="p">:</span><span class="mi">1</span> <span class="n">block</span><span class="o">:^</span><span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="n">context</span><span class="p">,</span> <span class="kt">int</span> <span class="n">argc</span><span class="p">,</span> <span class="kt">void</span> <span class="o">**</span><span class="n">argv</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">SqliteValueType</span> <span class="n">type</span> <span class="o">=</span> <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">valueType</span><span class="p">:</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">]];</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">type</span> <span class="o">==</span> <span class="n">SqliteValueTypeNull</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">resultNullInContext</span><span class="p">:</span><span class="n">context</span><span class="p">];</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">type</span> <span class="o">!=</span> <span class="n">SqliteValueTypeText</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">resultError</span><span class="p">:</span><span class="s">@"Expected text"</span> <span class="nf">context</span><span class="p">:</span><span class="n">context</span><span class="p">];</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">string</span> <span class="o">=</span> <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">valueString</span><span class="p">:</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">]];</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">string</span> <span class="nf">stringByFoldingWithOptions</span><span class="p">:</span><span class="n">NSDiacriticInsensitiveSearch</span> <span class="nf">locale</span><span class="p">:</span><span class="nb">nil</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">resultString</span><span class="p">:</span><span class="n">result</span> <span class="nf">context</span><span class="p">:</span><span class="n">context</span><span class="p">];</span>
+<span class="p">}];</span>
+
+<span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT * FROM employees WHERE RemoveDiacritics(first_name) LIKE 'jose'"</span><span class="p">];</span>
+<span class="n">NSAssert</span><span class="p">(</span><span class="n">rs</span><span class="p">,</span> <span class="s">@"Error %@"</span><span class="p">,</span> <span class="p">[</span><span class="n">db</span> <span class="nf">lastErrorMessage</span><span class="p">]);</span>
+</code></pre>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/create_function.html">sqlite3_create_function()</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Reset encryption key</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)rekey:(NSString *)<em>key</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>key</code></th>
- <td><p>The key to be used.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if success, <code>NO</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Reset encryption key</p><div class="warning"><p><strong>Warning:</strong> You need to have purchased the sqlite encryption extensions for this method to work.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/setKeyWithData:" title="setKeyWithData:"></a>
- <h3 class="method-title"><code><a href="#//api/name/setKeyWithData:">&ndash;&nbsp;setKeyWithData:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Set encryption key using <code>keyData</code>.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)setKeyWithData:(NSData *)<em>keyData</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>keyData</code></th>
- <td><p>The <code>NSData</code> to be used.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if success, <code>NO</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Set encryption key using <code>keyData</code>.</p><div class="warning"><p><strong>Warning:</strong> You need to have purchased the sqlite encryption extensions for this method to work.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/rekeyWithData:" title="rekeyWithData:"></a>
- <h3 class="method-title"><code><a href="#//api/name/rekeyWithData:">&ndash;&nbsp;rekeyWithData:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">makeFunctionNamed</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">arguments</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">arguments</span>
+ <span class="nf">block</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span> <span class="kt">int</span><span class="p">,</span>
+ <span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">makeFunctionNamed</span><span class="p">(</span><span class="n">_</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">arguments</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="nv">block</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="kt">UnsafeMutableRawPointer</span><span class="p">,</span> <span class="kt">Int32</span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">UnsafeMutableRawPointer</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of function.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Maximum number of parameters.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The block of code for the function.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)makeFunctionNamed:maximumArguments:withBlock:"></a>
+ <a name="//apple_ref/objc/Method/-makeFunctionNamed:maximumArguments:withBlock:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)makeFunctionNamed:maximumArguments:withBlock:">-makeFunctionNamed:<wbr>maximumArguments:<wbr>withBlock:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use makeFunctionNamed:arguments:block:</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">makeFunctionNamed</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span> <span class="nf">maximumArguments</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">count</span> <span class="nf">withBlock</span><span class="p">:(</span><span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="kt">void</span> <span class="o">*</span><span class="n">context</span><span class="p">,</span> <span class="kt">int</span> <span class="n">argc</span><span class="p">,</span> <span class="kt">void</span> <span class="o">*</span> <span class="n">_Nonnull</span> <span class="o">*</span> <span class="n">_Nonnull</span> <span class="n">argv</span><span class="p">))</span><span class="nv">block</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use makeFunctionNamed:arguments:block:"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">makeFunctionNamed</span><span class="p">(</span><span class="n">_</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">maximumArguments</span> <span class="nv">count</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">with</span> <span class="nv">block</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="kt">UnsafeMutableRawPointer</span><span class="p">,</span> <span class="kt">Int32</span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">UnsafeMutableRawPointer</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueType:"></a>
+ <a name="//apple_ref/objc/Method/-valueType:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueType:">-valueType:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Enums/SqliteValueType.html">SqliteValueType</a></span><span class="p">)</span><span class="nf">valueType</span><span class="p">:(</span><span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">argv</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueType</span><span class="p">(</span><span class="n">_</span> <span class="nv">argv</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Enums/SqliteValueType.html">SqliteValueType</a></span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueInt:"></a>
+ <a name="//apple_ref/objc/Method/-valueInt:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueInt:">-valueInt:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get integer value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Reset encryption key using <code>keyData</code>.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)rekeyWithData:(NSData *)<em>keyData</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>keyData</code></th>
- <td><p>The <code>NSData</code> to be used.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if success, <code>NO</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Reset encryption key using <code>keyData</code>.</p><div class="warning"><p><strong>Warning:</strong> You need to have purchased the sqlite encryption extensions for this method to work.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="General inquiry methods" name="task_General inquiry methods"></a>
- <h2 class="task-title">General inquiry methods</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">valueInt</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueInt</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The integer value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueLong:"></a>
+ <a name="//apple_ref/objc/Method/-valueLong:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueLong:">-valueLong:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get long value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/databasePath" title="databasePath"></a>
- <h3 class="method-title"><code><a href="#//api/name/databasePath">&nbsp;&nbsp;databasePath</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>The path of the database file</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, nullable) NSString *databasePath</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>The path of the database file</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databaseURL" title="databaseURL"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseURL">&nbsp;&nbsp;databaseURL</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>The file URL of the database file.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, nullable) NSURL *databaseURL</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>The file URL of the database file.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/sqliteHandle" title="sqliteHandle"></a>
- <h3 class="method-title"><code><a href="#//api/name/sqliteHandle">&nbsp;&nbsp;sqliteHandle</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">valueLong</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueLong</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The long value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueDouble:"></a>
+ <a name="//apple_ref/objc/Method/-valueDouble:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueDouble:">-valueDouble:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get double value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>The underlying SQLite handle</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) void *sqliteHandle</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>sqlite3</code> pointer.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>The underlying SQLite handle</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Retrieving error codes" name="task_Retrieving error codes"></a>
- <h2 class="task-title">Retrieving error codes</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">valueDouble</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueDouble</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The double value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueData:"></a>
+ <a name="//apple_ref/objc/Method/-valueData:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueData:">-valueData:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get <code>NSData</code> value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/lastErrorMessage" title="lastErrorMessage"></a>
- <h3 class="method-title"><code><a href="#//api/name/lastErrorMessage">&ndash;&nbsp;lastErrorMessage</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">valueData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueData</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The data object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueString:"></a>
+ <a name="//apple_ref/objc/Method/-valueString:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueString:">-valueString:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get string value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Last error message</p>
- </div>
-
-
+</div>
- <div class="method-subsection method-declaration"><code>- (NSString *)lastErrorMessage</code></div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">valueString</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueString</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The string value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultNullInContext:"></a>
+ <a name="//apple_ref/objc/Method/-resultNullInContext:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultNullInContext:">-resultNullInContext:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return null value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
-
-
+</div>
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>NSString</code> of the last error message.</p>
- </div>
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultNullInContext</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultNull</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the null value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultInt:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultInt:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultInt:context:">-resultInt:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return integer value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
-
+</div>
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Last error message</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultInt</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultInt</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The integer value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultLong:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultLong:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultLong:context:">-resultLong:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return long value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
-<p>Returns the English-language text that describes the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/errcode.html">sqlite3_errmsg()</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/lastErrorCode" title="lastErrorCode"></a>
- <h3 class="method-title"><code><a href="#//api/name/lastErrorCode">&ndash;&nbsp;lastErrorCode</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
+</div>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Last error code</p>
- </div>
-
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultLong</span><span class="p">:(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultLong</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Int64</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The long value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultDouble:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultDouble:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultDouble:context:">-resultDouble:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return double value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="method-subsection method-declaration"><code>- (int)lastErrorCode</code></div>
+</div>
-
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultDouble</span><span class="p">:(</span><span class="kt">double</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultDouble</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Double</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The double value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultData:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultData:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultData:context:">-resultData:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSData</code> object from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Integer value of the last error code.</p>
- </div>
-
+</div>
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">data</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultData</span><span class="p">(</span><span class="n">_</span> <span class="nv">data</span><span class="p">:</span> <span class="kt">Data</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>data</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSData</code> object to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultString:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultString:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultString:context:">-resultString:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return string value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Last error code</p>
+</div>
-<p>Returns the numeric result code or extended result code for the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/errcode.html">sqlite3_errcode()</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/lastExtendedErrorCode" title="lastExtendedErrorCode"></a>
- <h3 class="method-title"><code><a href="#//api/name/lastExtendedErrorCode">&ndash;&nbsp;lastExtendedErrorCode</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultString</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultString</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The string value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultError:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultError:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultError:context:">-resultError:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return error string from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
+</div>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Last extended error code</p>
- </div>
-
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultError</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">error</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultError</span><span class="p">(</span><span class="n">_</span> <span class="nv">error</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The error string to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultErrorCode:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultErrorCode:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultErrorCode:context:">-resultErrorCode:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return error code from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
- <div class="method-subsection method-declaration"><code>- (int)lastExtendedErrorCode</code></div>
+</div>
-
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultErrorCode</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">errorCode</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultErrorCode</span><span class="p">(</span><span class="n">_</span> <span class="nv">errorCode</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>errorCode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The integer error code to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultErrorNoMemoryInContext:"></a>
+ <a name="//apple_ref/objc/Method/-resultErrorNoMemoryInContext:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultErrorNoMemoryInContext:">-resultErrorNoMemoryInContext:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Report memory error in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Integer value of the last extended error code.</p>
- </div>
-
+</div>
-
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultErrorNoMemoryInContext</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultErrorNoMemory</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultErrorTooBigInContext:"></a>
+ <a name="//apple_ref/objc/Method/-resultErrorTooBigInContext:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultErrorTooBigInContext:">-resultErrorTooBigInContext:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Report that string or BLOB is too long to represent in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Last extended error code</p>
+</div>
-<p>Returns the numeric extended result code for the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/errcode.html">sqlite3_errcode()</a></p></code></li>
-
- <li><code><p><a href="http://sqlite.org/rescode.html#primary_result_codes_versus_extended_result_codes">2. Primary Result Codes versus Extended Result Codes</a></p></code></li>
-
- <li><code><p><a href="http://sqlite.org/rescode.html#extrc">5. Extended Result Code List</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/hadError" title="hadError"></a>
- <h3 class="method-title"><code><a href="#//api/name/hadError">&ndash;&nbsp;hadError</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultErrorTooBigInContext</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultErrorTooBig</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Date%20formatter"></a>
+ <a name="//apple_ref/objc/Section/Date formatter" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Date%20formatter"></a>
+ <h3 class="section-name"><p>Date formatter</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)storeableDateFormat:"></a>
+ <a name="//apple_ref/objc/Method/+storeableDateFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)storeableDateFormat:">+storeableDateFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Generate an <code>NSDateFormatter</code> that won&rsquo;t be broken by permutations of timezones or locales.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Had error</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)hadError</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if there was an error, <code>NO</code> if no error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Had error</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/lastError">- lastError</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/lastError" title="lastError"></a>
- <h3 class="method-title"><code><a href="#//api/name/lastError">&ndash;&nbsp;lastError</a></code>
-</h3>
+<p>Use this method to generate values to set the dateFormat property.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Last error</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSError *)lastError</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>NSError</code> representing the last error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Last error</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/lastErrorCode">- lastErrorCode</a></p></code></li>
-
- <li><code><p><a href="#//api/name/lastErrorMessage">- lastErrorMessage</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
+<p>Example:</p>
+<pre class="highlight objective_c"><code><span class="n">myDB</span><span class="p">.</span><span class="n">dateFormat</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">storeableDateFormat</span><span class="p">:</span><span class="s">@"yyyy-MM-dd HH:mm:ss"</span><span class="p">];</span>
+</code></pre>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
- <a title="Save points" name="task_Save points"></a>
- <h2 class="task-title">Save points</h2>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/startSavePointWithName:error:" title="startSavePointWithName:error:"></a>
- <h3 class="method-title"><code><a href="#//api/name/startSavePointWithName:error:">&ndash;&nbsp;startSavePointWithName:error:</a></code>
-</h3>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Start save point</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)startSavePointWithName:(NSString *)<em>name</em> error:(NSError *_Nullable *)<em>outErr</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>name</code></th>
- <td><p>Name of save point.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>outErr</code></th>
- <td><p>A <code>NSError</code> object to receive any error object (if any).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Start save point</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/releaseSavePointWithName:error:">- releaseSavePointWithName:error:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/rollbackToSavePointWithName:error:">- rollbackToSavePointWithName:error:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/releaseSavePointWithName:error:" title="releaseSavePointWithName:error:"></a>
- <h3 class="method-title"><code><a href="#//api/name/releaseSavePointWithName:error:">&ndash;&nbsp;releaseSavePointWithName:error:</a></code>
-</h3>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Release save point</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)releaseSavePointWithName:(NSString *)<em>name</em> error:(NSError *_Nullable *)<em>outErr</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>name</code></th>
- <td><p>Name of save point.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>outErr</code></th>
- <td><p>A <code>NSError</code> object to receive any error object (if any).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Release save point</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/startSavePointWithName:error:">- startSavePointWithName:error:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/rollbackToSavePointWithName:error:">- rollbackToSavePointWithName:error:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/rollbackToSavePointWithName:error:" title="rollbackToSavePointWithName:error:"></a>
- <h3 class="method-title"><code><a href="#//api/name/rollbackToSavePointWithName:error:">&ndash;&nbsp;rollbackToSavePointWithName:error:</a></code>
-</h3>
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Roll back to save point</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)rollbackToSavePointWithName:(NSString *)<em>name</em> error:(NSError *_Nullable *)<em>outErr</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>name</code></th>
- <td><p>Name of save point.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>outErr</code></th>
- <td><p>A <code>NSError</code> object to receive any error object (if any).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <a href="#//api/name/lastError"><code>lastError</code></a>, <a href="#//api/name/lastErrorCode"><code>lastErrorCode</code></a>, or <a href="#//api/name/lastErrorMessage"><code>lastErrorMessage</code></a> for diagnostic information regarding the failure.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Roll back to save point</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/startSavePointWithName:error:">- startSavePointWithName:error:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/releaseSavePointWithName:error:">- releaseSavePointWithName:error:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inSavePoint:" title="inSavePoint:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inSavePoint:">&ndash;&nbsp;inSavePoint:</a></code>
-</h3>
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Note that <code>NSDateFormatter</code> is not thread-safe, so the formatter generated by this method should be assigned to only one FMDB instance and should not be used for other purposes.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Start save point</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSError *_Nullable)inSavePoint:(void ( ^ ) ( BOOL *rollback ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>Block of code to perform from within save point.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The NSError corresponding to the error, if any. If no error, returns <code>nil</code>.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Start save point</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/startSavePointWithName:error:">- startSavePointWithName:error:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/releaseSavePointWithName:error:">- releaseSavePointWithName:error:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/rollbackToSavePointWithName:error:">- rollbackToSavePointWithName:error:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="SQLite library status" name="task_SQLite library status"></a>
- <h2 class="task-title">SQLite library status</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSDateFormatter</span> <span class="o">*</span><span class="p">)</span><span class="nf">storeableDateFormat</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">format</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">storeableDateFormat</span><span class="p">(</span><span class="n">_</span> <span class="nv">format</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">DateFormatter</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A valid NSDateFormatter format string.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code>NSDateFormatter</code> that can be used for converting dates to strings and vice versa.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)hasDateFormatter"></a>
+ <a name="//apple_ref/objc/Method/-hasDateFormatter" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)hasDateFormatter">-hasDateFormatter</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test whether the database has a date formatter assigned.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/isSQLiteThreadSafe" title="isSQLiteThreadSafe"></a>
- <h3 class="method-title"><code><a href="#//api/name/isSQLiteThreadSafe">+&nbsp;isSQLiteThreadSafe</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Test to see if the library is threadsafe</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (BOOL)isSQLiteThreadSafe</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>NO</code> if and only if SQLite was compiled with mutexing code omitted due to the SQLITE_THREADSAFE compile-time option being set to 0.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Test to see if the library is threadsafe</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/threadsafe.html">sqlite3_threadsafe()</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/sqliteLibVersion" title="sqliteLibVersion"></a>
- <h3 class="method-title"><code><a href="#//api/name/sqliteLibVersion">+&nbsp;sqliteLibVersion</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">hasDateFormatter</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">hasDateFormatter</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if there is a date formatter; <code>NO</code> if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)setDateFormat:"></a>
+ <a name="//apple_ref/objc/Method/-setDateFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)setDateFormat:">-setDateFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Set to a date formatter to use string dates with sqlite instead of the default UNIX timestamps.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Note there is no direct getter for the <code>NSDateFormatter</code> , and you should not use the formatter you pass to FMDB for other purposes, as <code>NSDateFormatter</code> is not thread-safe.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Run-time library version numbers</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (NSString *)sqliteLibVersion</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The sqlite library version string.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Run-time library version numbers</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/libversion.html">sqlite3_libversion()</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Make SQL function" name="task_Make SQL function"></a>
- <h2 class="task-title">Make SQL function</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">setDateFormat</span><span class="p">:(</span><span class="n">NSDateFormatter</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">format</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">setDateFormat</span><span class="p">(</span><span class="n">_</span> <span class="nv">format</span><span class="p">:</span> <span class="kt">DateFormatter</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Set to nil to use UNIX timestamps. Defaults to nil. Should be set using a formatter generated using <code>FMDatabase:storeableDateFormat</code> .</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)dateFromString:"></a>
+ <a name="//apple_ref/objc/Method/-dateFromString:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)dateFromString:">-dateFromString:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Convert the supplied NSString to NSDate, using the current database formatter.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/makeFunctionNamed:arguments:block:" title="makeFunctionNamed:arguments:block:"></a>
- <h3 class="method-title"><code><a href="#//api/name/makeFunctionNamed:arguments:block:">&ndash;&nbsp;makeFunctionNamed:arguments:block:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Adds SQL functions or aggregates or to redefine the behavior of existing SQL functions or aggregates.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)makeFunctionNamed:(NSString *)<em>name</em> arguments:(int)<em>arguments</em> block:(void ( ^ ) ( void *context , int argc , void *_Nonnull *_Nonnull argv ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>name</code></th>
- <td><p>Name of function.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>arguments</code></th>
- <td><p>Maximum number of parameters.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The block of code for the function.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Adds SQL functions or aggregates or to redefine the behavior of existing SQL functions or aggregates.</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateFromString</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">s</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">date</span><span class="p">(</span><span class="n">from</span> <span class="nv">s</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Date</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>s</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> to convert to <code>NSDate</code> .</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>NSDate</code> object; or <code>nil</code> if no formatter is set.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)stringFromDate:"></a>
+ <a name="//apple_ref/objc/Method/-stringFromDate:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)stringFromDate:">-stringFromDate:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Convert the supplied NSDate to NSString, using the current database formatter.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
-<p>For example:</p>
+</div>
-<pre><code>[db makeFunctionNamed:@"RemoveDiacritics" arguments:1 block:^(void *context, int argc, void **argv) {
- SqliteValueType type = [self.db valueType:argv[0]];
- if (type == SqliteValueTypeNull) {
- [self.db resultNullInContext:context];
- return;
- }
- if (type != SqliteValueTypeText) {
- [self.db resultError:@"Expected text" context:context];
- return;
- }
- NSString *string = [self.db valueString:argv[0]];
- NSString *result = [string stringByFoldingWithOptions:NSDiacriticInsensitiveSearch locale:nil];
- [self.db resultString:result context:context];
-}];
-
-FMResultSet *rs = [db executeQuery:@"SELECT * FROM employees WHERE RemoveDiacritics(first_name) LIKE 'jose'"];
-NSAssert(rs, @"Error %@", [db lastErrorMessage]);
-</code></pre>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://sqlite.org/c3ref/create_function.html">sqlite3_create_function()</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/valueInt:" title="valueInt:"></a>
- <h3 class="method-title"><code><a href="#//api/name/valueInt:">&ndash;&nbsp;valueInt:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringFromDate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSDate</span> <span class="o">*</span><span class="p">)</span><span class="nv">date</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">string</span><span class="p">(</span><span class="n">from</span> <span class="nv">date</span><span class="p">:</span> <span class="kt">Date</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>date</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSDate</code> of date to convert to <code>NSString</code> .</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>NSString</code> representation of the date; <code>nil</code> if no formatter is set.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Return%20results%20of%20SQL%20to%20variable"></a>
+ <a name="//apple_ref/objc/Section/Return results of SQL to variable" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Return%20results%20of%20SQL%20to%20variable"></a>
+ <h3 class="section-name"><p>Return results of SQL to variable</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)intForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-intForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)intForQuery:">-intForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>int</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Get integer value of parameter in custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (int)valueInt:(void *)<em>value</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The argument whose value to return.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The integer value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Get integer value of parameter in custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/valueLong:" title="valueLong:"></a>
- <h3 class="method-title"><code><a href="#//api/name/valueLong:">&ndash;&nbsp;valueLong:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Get long value of parameter in custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (long long)valueLong:(void *)<em>value</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The argument whose value to return.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The long value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Get long value of parameter in custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/valueDouble:" title="valueDouble:"></a>
- <h3 class="method-title"><code><a href="#//api/name/valueDouble:">&ndash;&nbsp;valueDouble:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">intForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>int</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)longForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-longForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)longForQuery:">-longForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>long</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Get double value of parameter in custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (double)valueDouble:(void *)<em>value</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The argument whose value to return.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The double value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Get double value of parameter in custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/valueData:" title="valueData:"></a>
- <h3 class="method-title"><code><a href="#//api/name/valueData:">&ndash;&nbsp;valueData:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Get <code>NSData</code> value of parameter in custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSData *_Nullable)valueData:(void *)<em>value</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The argument whose value to return.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The data object.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Get <code>NSData</code> value of parameter in custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/valueString:" title="valueString:"></a>
- <h3 class="method-title"><code><a href="#//api/name/valueString:">&ndash;&nbsp;valueString:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span><span class="p">)</span><span class="nf">longForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)boolForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-boolForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)boolForQuery:">-boolForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>BOOL</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Get string value of parameter in custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSString *_Nullable)valueString:(void *)<em>value</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The argument whose value to return.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The string value.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Get string value of parameter in custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultNullInContext:" title="resultNullInContext:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultNullInContext:">&ndash;&nbsp;resultNullInContext:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return null value from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultNullInContext:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the null value will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return null value from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultInt:context:" title="resultInt:context:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultInt:context:">&ndash;&nbsp;resultInt:context:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">boolForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>BOOL</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)doubleForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-doubleForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)doubleForQuery:">-doubleForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>double</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return integer value from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultInt:(int)<em>value</em> context:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The integer value to be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the value will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return integer value from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultLong:context:" title="resultLong:context:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultLong:context:">&ndash;&nbsp;resultLong:context:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return long value from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultLong:(long long)<em>value</em> context:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The long value to be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the value will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return long value from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultDouble:context:" title="resultDouble:context:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultDouble:context:">&ndash;&nbsp;resultDouble:context:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">doubleForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>double</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)stringForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-stringForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)stringForQuery:">-stringForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSString</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return double value from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultDouble:(double)<em>value</em> context:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The double value to be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the value will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return double value from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultData:context:" title="resultData:context:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultData:context:">&ndash;&nbsp;resultData:context:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return <code>NSData</code> object from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultData:(NSData *)<em>data</em> context:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>data</code></th>
- <td><p>The <code>NSData</code> object to be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the value will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return <code>NSData</code> object from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultString:context:" title="resultString:context:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultString:context:">&ndash;&nbsp;resultString:context:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSString</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)dataForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-dataForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)dataForQuery:">-dataForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSData</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return string value from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultString:(NSString *)<em>value</em> context:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>value</code></th>
- <td><p>The string value to be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the value will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return string value from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultError:context:" title="resultError:context:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultError:context:">&ndash;&nbsp;resultError:context:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return error string from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultError:(NSString *)<em>error</em> context:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>error</code></th>
- <td><p>The error string to be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the error will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return error string from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultErrorCode:context:" title="resultErrorCode:context:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultErrorCode:context:">&ndash;&nbsp;resultErrorCode:context:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSData</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)dateForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-dateForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)dateForQuery:">-dateForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSDate</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Return error code from custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultErrorCode:(int)<em>errorCode</em> context:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>errorCode</code></th>
- <td><p>The integer error code to be returned.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the error will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Return error code from custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultErrorNoMemoryInContext:" title="resultErrorNoMemoryInContext:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultErrorNoMemoryInContext:">&ndash;&nbsp;resultErrorNoMemoryInContext:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Report memory error in custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultErrorNoMemoryInContext:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the error will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Report memory error in custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultErrorTooBigInContext:" title="resultErrorTooBigInContext:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultErrorTooBigInContext:">&ndash;&nbsp;resultErrorTooBigInContext:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSDate</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Schema%20related%20operations"></a>
+ <a name="//apple_ref/objc/Section/Schema related operations" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Schema%20related%20operations"></a>
+ <h3 class="section-name"><p>Schema related operations</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)tableExists:"></a>
+ <a name="//apple_ref/objc/Method/-tableExists:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)tableExists:">-tableExists:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Does table exist in database?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">tableExists</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">tableExists</span><span class="p">(</span><span class="n">_</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table being looked for.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if table found; <code>NO</code> if not found.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)getSchema"></a>
+ <a name="//apple_ref/objc/Method/-getSchema" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)getSchema">-getSchema</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The schema of the database.</p>
+
+<p>This will be the schema for the entire database. For each entity, each row of the result set will include the following fields:</p>
+
+<ul>
+<li><code>type</code> - The type of entity (e.g. table, index, view, or trigger)</li>
+<li><code>name</code> - The name of the object</li>
+<li><code>tbl_name</code> - The name of the table to which the object references</li>
+<li><code>rootpage</code> - The page number of the root b-tree page for tables and indices</li>
+<li><p><code>sql</code> - The SQL that created the entity</p></li>
+</ul><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/fileformat.html">SQLite File Format</a></p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Report that string or BLOB is too long to represent in custom function.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)resultErrorTooBigInContext:(void *)<em>context</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>context</code></th>
- <td><p>The context to which the error will be returned.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Report that string or BLOB is too long to represent in custom function.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/makeFunctionNamed:arguments:block:">- makeFunctionNamed:arguments:block:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Date formatter" name="task_Date formatter"></a>
- <h2 class="task-title">Date formatter</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="n">getSchema</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">getSchema</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> of schema; <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)getTableSchema:"></a>
+ <a name="//apple_ref/objc/Method/-getTableSchema:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)getTableSchema:">-getTableSchema:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The schema of the database.</p>
+
+<p>This will be the schema for a particular table as report by SQLite <code>PRAGMA</code>, for example:</p>
+<pre class="highlight objective_c"><code><span class="n">PRAGMA</span> <span class="n">table_info</span><span class="p">(</span><span class="err">'</span><span class="n">employees</span><span class="err">'</span><span class="p">)</span>
+</code></pre>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/storeableDateFormat:" title="storeableDateFormat:"></a>
- <h3 class="method-title"><code><a href="#//api/name/storeableDateFormat:">+&nbsp;storeableDateFormat:</a></code>
-</h3>
+<p>This will report:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Generate an <code>NSDateFormatter</code> that won&rsquo;t be broken by permutations of timezones or locales.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (NSDateFormatter *)storeableDateFormat:(NSString *)<em>format</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>format</code></th>
- <td><p>A valid NSDateFormatter format string.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>A <code>NSDateFormatter</code> that can be used for converting dates to strings and vice versa.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Generate an <code>NSDateFormatter</code> that won&rsquo;t be broken by permutations of timezones or locales.</p>
+<ul>
+<li><code>cid</code> - The column ID number</li>
+<li><code>name</code> - The name of the column</li>
+<li><code>type</code> - The data type specified for the column</li>
+<li><code>notnull</code> - whether the field is defined as NOT NULL (i.e. values required)</li>
+<li><code>dflt_value</code> - The default value for the column</li>
+<li><p><code>pk</code> - Whether the field is part of the primary key of the table</p></li>
+</ul><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/pragma.html#pragma_table_info">table_info</a></p>
-<p>Use this method to generate values to set the dateFormat property.</p>
+</div>
-<p>Example:</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">getTableSchema</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">getTableSchema</span><span class="p">(</span><span class="n">_</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table for whom the schema will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> of schema; <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)columnExists:inTableWithName:"></a>
+ <a name="//apple_ref/objc/Method/-columnExists:inTableWithName:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)columnExists:inTableWithName:">-columnExists:<wbr>inTableWithName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test to see if particular column exists for particular table in database</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnExists</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span>
+ <span class="nf">inTableWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnExists</span><span class="p">(</span><span class="n">_</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">inTableWithName</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column exists in table in question; <code>NO</code> otherwise.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)columnExists:columnName:"></a>
+ <a name="//apple_ref/objc/Method/-columnExists:columnName:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)columnExists:columnName:">-columnExists:<wbr>columnName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use columnExists:inTableWithName: instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Test to see if particular column exists for particular table in database</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>columnExists:inTableWithName:</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Deprecated - use <code>&lt;columnExists:inTableWithName:&gt;</code> instead.</p>
-<pre><code>myDB.dateFormat = [FMDatabase storeableDateFormat:@"yyyy-MM-dd HH:mm:ss"];
-</code></pre><div class="warning"><p><strong>Warning:</strong> Note that <code>NSDateFormatter</code> is not thread-safe, so the formatter generated by this method should be assigned to only one FMDB instance and should not be used for other purposes.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/hasDateFormatter">- hasDateFormatter</a></p></code></li>
-
- <li><code><p><a href="#//api/name/setDateFormat:">- setDateFormat:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/dateFromString:">- dateFromString:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/stringFromDate:">- stringFromDate:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/storeableDateFormat:">+ storeableDateFormat:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/hasDateFormatter" title="hasDateFormatter"></a>
- <h3 class="method-title"><code><a href="#//api/name/hasDateFormatter">&ndash;&nbsp;hasDateFormatter</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Test whether the database has a date formatter assigned.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)hasDateFormatter</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if there is a date formatter; <code>NO</code> if not.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Test whether the database has a date formatter assigned.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/hasDateFormatter">- hasDateFormatter</a></p></code></li>
-
- <li><code><p><a href="#//api/name/setDateFormat:">- setDateFormat:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/dateFromString:">- dateFromString:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/stringFromDate:">- stringFromDate:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/storeableDateFormat:">+ storeableDateFormat:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/setDateFormat:" title="setDateFormat:"></a>
- <h3 class="method-title"><code><a href="#//api/name/setDateFormat:">&ndash;&nbsp;setDateFormat:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnExists</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span>
+ <span class="nf">columnName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnExists</span><span class="p">(</span><span class="n">_</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column exists in table in question; <code>NO</code> otherwise.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)validateSQL:error:"></a>
+ <a name="//apple_ref/objc/Method/-validateSQL:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)validateSQL:error:">-validateSQL:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Validate SQL statement</p>
+
+<p>This validates SQL statement by performing <code>sqlite3_prepare_v2</code>, but not returning the results, but instead immediately calling <code>sqlite3_finalize</code>.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">validateSQL</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">validateSQL</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL statement being validated.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>This is a pointer to a <code>NSError</code> object that will receive the autoreleased <code>NSError</code> object if there was any error. If this is <code>nil</code> , no <code>NSError</code> result will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if validation succeeded without incident; <code>NO</code> otherwise.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Application%20identifier%20tasks"></a>
+ <a name="//apple_ref/objc/Section/Application identifier tasks" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Application%20identifier%20tasks"></a>
+ <h3 class="section-name"><p>Application identifier tasks</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)applicationID"></a>
+ <a name="//apple_ref/objc/Property/applicationID" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)applicationID">applicationID</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve application ID</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setApplicationID:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Set to a date formatter to use string dates with sqlite instead of the default UNIX timestamps.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)setDateFormat:(NSDateFormatter *)<em>format</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>format</code></th>
- <td><p>Set to nil to use UNIX timestamps. Defaults to nil. Should be set using a formatter generated using FMDatabase::storeableDateFormat.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Set to a date formatter to use string dates with sqlite instead of the default UNIX timestamps.</p><div class="warning"><p><strong>Warning:</strong> Note there is no direct getter for the <code>NSDateFormatter</code>, and you should not use the formatter you pass to FMDB for other purposes, as <code>NSDateFormatter</code> is not thread-safe.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/hasDateFormatter">- hasDateFormatter</a></p></code></li>
-
- <li><code><p><a href="#//api/name/setDateFormat:">- setDateFormat:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/dateFromString:">- dateFromString:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/stringFromDate:">- stringFromDate:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/storeableDateFormat:">+ storeableDateFormat:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dateFromString:" title="dateFromString:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dateFromString:">&ndash;&nbsp;dateFromString:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Convert the supplied NSString to NSDate, using the current database formatter.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSDate *_Nullable)dateFromString:(NSString *)<em>s</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>s</code></th>
- <td><p><code>NSString</code> to convert to <code>NSDate</code>.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>NSDate</code> object; or <code>nil</code> if no formatter is set.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Convert the supplied NSString to NSDate, using the current database formatter.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/hasDateFormatter">- hasDateFormatter</a></p></code></li>
-
- <li><code><p><a href="#//api/name/setDateFormat:">- setDateFormat:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/dateFromString:">- dateFromString:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/stringFromDate:">- stringFromDate:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/storeableDateFormat:">+ storeableDateFormat:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/stringFromDate:" title="stringFromDate:"></a>
- <h3 class="method-title"><code><a href="#//api/name/stringFromDate:">&ndash;&nbsp;stringFromDate:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="kt">uint32_t</span> <span class="n">applicationID</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">applicationID</span><span class="p">:</span> <span class="kt">UInt32</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>uint32_t</code> numeric value of the application ID.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)applicationIDString"></a>
+ <a name="//apple_ref/objc/Property/applicationIDString" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)applicationIDString">applicationIDString</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve application ID string</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ setApplicationIDString:
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">retain</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">applicationIDString</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">applicationIDString</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/user%20version%20identifier%20tasks"></a>
+ <a name="//apple_ref/objc/Section/user version identifier tasks" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/user%20version%20identifier%20tasks"></a>
+ <h3 class="section-name"><p>user version identifier tasks</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)userVersion"></a>
+ <a name="//apple_ref/objc/Property/userVersion" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)userVersion">userVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve user version</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ setUserVersion:
+
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Convert the supplied NSDate to NSString, using the current database formatter.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSString *)stringFromDate:(NSDate *)<em>date</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>date</code></th>
- <td><p><code>NSDate</code> of date to convert to <code>NSString</code>.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>NSString</code> representation of the date; <code>nil</code> if no formatter is set.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Convert the supplied NSDate to NSString, using the current database formatter.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/hasDateFormatter">- hasDateFormatter</a></p></code></li>
-
- <li><code><p><a href="#//api/name/setDateFormat:">- setDateFormat:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/dateFromString:">- dateFromString:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/stringFromDate:">- stringFromDate:</a></p></code></li>
-
- <li><code><p><a href="#//api/name/storeableDateFormat:">+ storeableDateFormat:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="kt">uint32_t</span> <span class="n">userVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">userVersion</span><span class="p">:</span> <span class="kt">UInt32</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
</div>
- </div>
-
- </div>
-
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
+</html>
diff --git a/html/Classes/FMDatabasePool.html b/html/Classes/FMDatabasePool.html
index e3db61b..81dac6a 100644
--- a/html/Classes/FMDatabasePool.html
+++ b/html/Classes/FMDatabasePool.html
@@ -1,1610 +1,1467 @@
<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMDatabasePool Class Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
- <option value="overview">Overview</option>
-
-
-
-
- <option value="tasks">Tasks</option>
-
-
-
-
-
- <optgroup label="Properties">
-
- <option value="//api/name/countOfCheckedInDatabases">countOfCheckedInDatabases</option>
-
- <option value="//api/name/countOfCheckedOutDatabases">countOfCheckedOutDatabases</option>
-
- <option value="//api/name/countOfOpenDatabases">countOfOpenDatabases</option>
-
- <option value="//api/name/delegate">delegate</option>
-
- <option value="//api/name/maximumNumberOfDatabasesToCreate">maximumNumberOfDatabasesToCreate</option>
-
- <option value="//api/name/openFlags">openFlags</option>
-
- <option value="//api/name/path">path</option>
-
- <option value="//api/name/vfsName">vfsName</option>
-
- </optgroup>
-
-
-
- <optgroup label="Class Methods">
-
- <option value="//api/name/databaseClass">+ databaseClass</option>
-
- <option value="//api/name/databasePoolWithPath:">+ databasePoolWithPath:</option>
-
- <option value="//api/name/databasePoolWithPath:flags:">+ databasePoolWithPath:flags:</option>
-
- <option value="//api/name/databasePoolWithURL:">+ databasePoolWithURL:</option>
-
- <option value="//api/name/databasePoolWithURL:flags:">+ databasePoolWithURL:flags:</option>
-
- </optgroup>
-
-
-
- <optgroup label="Instance Methods">
-
- <option value="//api/name/inDatabase:">- inDatabase:</option>
-
- <option value="//api/name/inDeferredTransaction:">- inDeferredTransaction:</option>
-
- <option value="//api/name/inSavePoint:">- inSavePoint:</option>
-
- <option value="//api/name/inTransaction:">- inTransaction:</option>
-
- <option value="//api/name/initWithPath:">- initWithPath:</option>
-
- <option value="//api/name/initWithPath:flags:">- initWithPath:flags:</option>
-
- <option value="//api/name/initWithPath:flags:vfs:">- initWithPath:flags:vfs:</option>
-
- <option value="//api/name/initWithURL:">- initWithURL:</option>
-
- <option value="//api/name/initWithURL:flags:">- initWithURL:flags:</option>
-
- <option value="//api/name/initWithURL:flags:vfs:">- initWithURL:flags:vfs:</option>
-
- <option value="//api/name/releaseAllDatabases">- releaseAllDatabases</option>
-
- </optgroup>
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMDatabasePool Class Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Inherits from</th>
- <td>NSObject</td>
-</tr><tr>
- <th>Declared in</th>
- <td>FMDatabasePool.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
- <div class="section section-overview">
- <a title="Overview" name="overview"></a>
- <h2 class="subtitle subtitle-overview">Overview</h2>
- <p>Pool of <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a> objects.</p>
-
-<h3>See also</h3>
+<html lang="en">
+ <head>
+ <title>FMDatabasePool Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMDatabasePool" class="dashAnchor"></a>
+ <a title="FMDatabasePool Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDatabasePool Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDatabasePool</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabasePool</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>Pool of <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> objects.</p>
+
+<p>See also</p>
<ul>
-<li><a href="../Classes/FMDatabaseQueue.html"><code>FMDatabaseQueue</code></a></li>
-<li><a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a></li>
-</ul>
-<div class="warning"><p><strong>Warning:</strong> Before using <code>FMDatabasePool</code>, please consider using <a href="../Classes/FMDatabaseQueue.html"><code>FMDatabaseQueue</code></a> instead.</p>
+<li><code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></li>
+<li><p><code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> </p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Before using <code>FMDatabasePool</code> , please consider using <code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> instead.</p>
-<p>If you really really really know what you&rsquo;re doing and <code>FMDatabasePool</code> is what
-you really really need (ie, you&rsquo;re using a read only database), OK you can use
-it. But just be careful not to deadlock!</p>
-
-<p>For an example on deadlocking, search for:
-<code>ONLY_USE_THE_POOL_IF_YOU_ARE_DOING_READS_OTHERWISE_YOULL_DEADLOCK_USE_FMDATABASEQUEUE_INSTEAD</code>
-in the main.m file.</p></div>
- </div>
-
-
-
-
-
- <div class="section section-tasks">
- <a title="Tasks" name="tasks"></a>
-
-
-
- <h2 class="task-title">Other Methods</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/path" title="path"></a>
- <h3 class="method-title"><code><a href="#//api/name/path">&nbsp;&nbsp;path</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Database path</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, copy, nullable) NSString *path</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Database path</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/delegate" title="delegate"></a>
- <h3 class="method-title"><code><a href="#//api/name/delegate">&nbsp;&nbsp;delegate</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Delegate object</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign, nullable) id delegate</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Delegate object</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/maximumNumberOfDatabasesToCreate" title="maximumNumberOfDatabasesToCreate"></a>
- <h3 class="method-title"><code><a href="#//api/name/maximumNumberOfDatabasesToCreate">&nbsp;&nbsp;maximumNumberOfDatabasesToCreate</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Maximum number of databases to create</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) NSUInteger maximumNumberOfDatabasesToCreate</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Maximum number of databases to create</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/openFlags" title="openFlags"></a>
- <h3 class="method-title"><code><a href="#//api/name/openFlags">&nbsp;&nbsp;openFlags</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Open flags</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, readonly) int openFlags</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Open flags</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/vfsName" title="vfsName"></a>
- <h3 class="method-title"><code><a href="#//api/name/vfsName">&nbsp;&nbsp;vfsName</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p> Custom virtual file system name</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, copy, nullable) NSString *vfsName</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p> Custom virtual file system name</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
-
- <a title="Initialization" name="task_Initialization"></a>
- <h2 class="task-title">Initialization</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/databasePoolWithPath:" title="databasePoolWithPath:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databasePoolWithPath:">+&nbsp;databasePoolWithPath:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using path.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databasePoolWithPath:(NSString *_Nullable)<em>aPath</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using path.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databasePoolWithURL:" title="databasePoolWithURL:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databasePoolWithURL:">+&nbsp;databasePoolWithURL:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using file URL.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databasePoolWithURL:(NSURL *_Nullable)<em>url</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file <code>NSURL</code> of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using file URL.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databasePoolWithPath:flags:" title="databasePoolWithPath:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databasePoolWithPath:flags:">+&nbsp;databasePoolWithPath:flags:</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using path and specified flags</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databasePoolWithPath:(NSString *_Nullable)<em>aPath</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using path and specified flags</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databasePoolWithURL:flags:" title="databasePoolWithURL:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databasePoolWithURL:flags:">+&nbsp;databasePoolWithURL:flags:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using file URL and specified flags</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databasePoolWithURL:(NSURL *_Nullable)<em>url</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file <code>NSURL</code> of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using file URL and specified flags</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithPath:" title="initWithPath:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithPath:">&ndash;&nbsp;initWithPath:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using path.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithPath:(NSString *_Nullable)<em>aPath</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using path.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithURL:" title="initWithURL:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithURL:">&ndash;&nbsp;initWithURL:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using file URL.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithURL:(NSURL *_Nullable)<em>url</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file `NSURL of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using file URL.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithPath:flags:" title="initWithPath:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithPath:flags:">&ndash;&nbsp;initWithPath:flags:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using path and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithPath:(NSString *_Nullable)<em>aPath</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using path and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithURL:flags:" title="initWithURL:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithURL:flags:">&ndash;&nbsp;initWithURL:flags:</a></code>
-</h3>
+<p>If you really really really know what you&rsquo;re doing and <code>FMDatabasePool</code> is what
+ you really really need (ie, you&rsquo;re using a read only database), OK you can use
+ it. But just be careful not to deadlock!</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using file URL and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithURL:(NSURL *_Nullable)<em>url</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file <code>NSURL</code> of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using file URL and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithPath:flags:vfs:" title="initWithPath:flags:vfs:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithPath:flags:vfs:">&ndash;&nbsp;initWithPath:flags:vfs:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using path and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithPath:(NSString *_Nullable)<em>aPath</em> flags:(int)<em>openFlags</em> vfs:(NSString *_Nullable)<em>vfsName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>vfsName</code></th>
- <td><p>The name of a custom virtual file system</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using path and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithURL:flags:vfs:" title="initWithURL:flags:vfs:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithURL:flags:vfs:">&ndash;&nbsp;initWithURL:flags:vfs:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create pool using file URL and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithURL:(NSURL *_Nullable)<em>url</em> flags:(int)<em>openFlags</em> vfs:(NSString *_Nullable)<em>vfsName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file <code>NSURL</code> of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>vfsName</code></th>
- <td><p>The name of a custom virtual file system</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create pool using file URL and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databaseClass" title="databaseClass"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseClass">+&nbsp;databaseClass</a></code>
+<p>For an example on deadlocking, search for:
+ <code>ONLY_USE_THE_POOL_IF_YOU_ARE_DOING_READS_OTHERWISE_YOULL_DEADLOCK_USE_FMDATABASEQUEUE_INSTEAD</code>
+ in the main.m file.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)path"></a>
+ <a name="//apple_ref/objc/Property/path" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)path">path</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Database path</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">copy</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">path</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">path</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)delegate"></a>
+ <a name="//apple_ref/objc/Property/delegate" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)delegate">delegate</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Delegate object</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nullable</span><span class="p">)</span> <span class="n">id</span> <span class="n">delegate</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">unowned(unsafe)</span> <span class="k">var</span> <span class="nv">delegate</span><span class="p">:</span> <span class="kt">AnyObject</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)maximumNumberOfDatabasesToCreate"></a>
+ <a name="//apple_ref/objc/Property/maximumNumberOfDatabasesToCreate" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)maximumNumberOfDatabasesToCreate">maximumNumberOfDatabasesToCreate</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Maximum number of databases to create</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">NSUInteger</span> <span class="n">maximumNumberOfDatabasesToCreate</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">maximumNumberOfDatabasesToCreate</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)openFlags"></a>
+ <a name="//apple_ref/objc/Property/openFlags" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)openFlags">openFlags</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Open flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)vfsName"></a>
+ <a name="//apple_ref/objc/Property/vfsName" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)vfsName">vfsName</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Custom virtual file system name</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">copy</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Initialization"></a>
+ <a name="//apple_ref/objc/Section/Initialization" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Initialization"></a>
+ <h3 class="section-name"><p>Initialization</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (Class)databaseClass</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:">+databasePoolWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:">+databasePoolWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:flags:">+databasePoolWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path and specified flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:flags:">+databasePoolWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL and specified flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithPath:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithPath:">-initWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="n"><a href="../Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithURL:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithURL:">-initWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file `NSURL of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:">-initWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="n"><a href="../Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:">-initWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span> <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithPath:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:vfs:">-initWithPath:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="n"><a href="../Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithURL:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:vfs:">-initWithURL:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databaseClass"></a>
+ <a name="//apple_ref/objc/Method/+databaseClass" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databaseClass">+databaseClass</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
<p>Subclasses can override this method to return specified Class of &lsquo;FMDatabase&rsquo; subclass.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
-
- <a title="Keeping track of checked in/out databases" name="task_Keeping track of checked in/out databases"></a>
- <h2 class="task-title">Keeping track of checked in/out databases</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/countOfCheckedInDatabases" title="countOfCheckedInDatabases"></a>
- <h3 class="method-title"><code><a href="#//api/name/countOfCheckedInDatabases">&nbsp;&nbsp;countOfCheckedInDatabases</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Number of checked-in databases in pool</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) NSUInteger countOfCheckedInDatabases</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Number of checked-in databases in pool</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/countOfCheckedOutDatabases" title="countOfCheckedOutDatabases"></a>
- <h3 class="method-title"><code><a href="#//api/name/countOfCheckedOutDatabases">&nbsp;&nbsp;countOfCheckedOutDatabases</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Number of checked-out databases in pool</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) NSUInteger countOfCheckedOutDatabases</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Number of checked-out databases in pool</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/countOfOpenDatabases" title="countOfOpenDatabases"></a>
- <h3 class="method-title"><code><a href="#//api/name/countOfOpenDatabases">&nbsp;&nbsp;countOfOpenDatabases</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">Class</span><span class="p">)</span><span class="n">databaseClass</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">databaseClass</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">AnyClass</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Keeping%20track%20of%20checked%20in/out%20databases"></a>
+ <a name="//apple_ref/objc/Section/Keeping track of checked in/out databases" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Keeping%20track%20of%20checked%20in/out%20databases"></a>
+ <h3 class="section-name"><p>Keeping track of checked in/out databases</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Total number of databases in pool</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) NSUInteger countOfOpenDatabases</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Total number of databases in pool</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/releaseAllDatabases" title="releaseAllDatabases"></a>
- <h3 class="method-title"><code><a href="#//api/name/releaseAllDatabases">&ndash;&nbsp;releaseAllDatabases</a></code>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)countOfCheckedInDatabases"></a>
+ <a name="//apple_ref/objc/Property/countOfCheckedInDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)countOfCheckedInDatabases">countOfCheckedInDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Number of checked-in databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">NSUInteger</span> <span class="n">countOfCheckedInDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">countOfCheckedInDatabases</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)countOfCheckedOutDatabases"></a>
+ <a name="//apple_ref/objc/Property/countOfCheckedOutDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)countOfCheckedOutDatabases">countOfCheckedOutDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Number of checked-out databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">NSUInteger</span> <span class="n">countOfCheckedOutDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">countOfCheckedOutDatabases</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)countOfOpenDatabases"></a>
+ <a name="//apple_ref/objc/Property/countOfOpenDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)countOfOpenDatabases">countOfOpenDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Total number of databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">NSUInteger</span> <span class="n">countOfOpenDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">countOfOpenDatabases</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)releaseAllDatabases"></a>
+ <a name="//apple_ref/objc/Method/-releaseAllDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)releaseAllDatabases">-releaseAllDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Release all databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">releaseAllDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">releaseAllDatabases</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Perform%20database%20operations%20in%20pool"></a>
+ <a name="//apple_ref/objc/Section/Perform database operations in pool" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Perform%20database%20operations%20in%20pool"></a>
+ <h3 class="section-name"><p>Perform database operations in pool</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inDatabase:"></a>
+ <a name="//apple_ref/objc/Method/-inDatabase:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inDatabase:">-inDatabase:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDatabase</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDatabase</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inTransaction:">-inTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using transaction.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Unlike SQLite&rsquo;s <code>BEGIN TRANSACTION</code>, this method currently performs
+ an exclusive transaction, not a deferred transaction. This behavior
+ is likely to change in future versions of FMDB, whereby this method
+ will likely eventually adopt standard SQLite behavior and perform
+ deferred transactions. If you really need exclusive tranaction, it is
+ recommended that you use <code>inExclusiveTransaction</code>, instead, not only
+ to make your intent explicit, but also to future-proof your code.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Release all databases in pool</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)releaseAllDatabases</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Release all databases in pool</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
-
- <a title="Perform database operations in pool" name="task_Perform database operations in pool"></a>
- <h2 class="task-title">Perform database operations in pool</h2>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/inDatabase:" title="inDatabase:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inDatabase:">&ndash;&nbsp;inDatabase:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations in pool.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)inDatabase:(void ( ^ ) ( FMDatabase *db ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the <code>FMDatabasePool</code> pool.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations in pool.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inTransaction:" title="inTransaction:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inTransaction:">&ndash;&nbsp;inTransaction:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inExclusiveTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inExclusiveTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inExclusiveTransaction:">-inExclusiveTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using exclusive transaction.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inExclusiveTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inExclusiveTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inDeferredTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inDeferredTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inDeferredTransaction:">-inDeferredTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using deferred transaction.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDeferredTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDeferredTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inImmediateTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inImmediateTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inImmediateTransaction:">-inImmediateTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using immediate transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inImmediateTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inImmediateTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inSavePoint:"></a>
+ <a name="//apple_ref/objc/Method/-inSavePoint:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inSavePoint:">-inSavePoint:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using save point.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You can not nest these, since calling it will pull another database out of the pool and you&rsquo;ll get a deadlock. If you need to nest, use <code>startSavePointWithName:error:</code> instead.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations in pool using transaction.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)inTransaction:(void ( ^ ) ( FMDatabase *db , BOOL *rollback ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the <code>FMDatabasePool</code> pool.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations in pool using transaction.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inDeferredTransaction:" title="inDeferredTransaction:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inDeferredTransaction:">&ndash;&nbsp;inDeferredTransaction:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations in pool using deferred transaction.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)inDeferredTransaction:(void ( ^ ) ( FMDatabase *db , BOOL *rollback ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the <code>FMDatabasePool</code> pool.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations in pool using deferred transaction.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inSavePoint:" title="inSavePoint:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inSavePoint:">&ndash;&nbsp;inSavePoint:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations in pool using save point.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSError *_Nullable)inSavePoint:(void ( ^ ) ( FMDatabase *db , BOOL *rollback ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the <code>FMDatabasePool</code> pool.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>NSError</code> object if error; <code>nil</code> if successful.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations in pool using save point.</p><div class="warning"><p><strong>Warning:</strong> You can not nest these, since calling it will pull another database out of the pool and you&rsquo;ll get a deadlock. If you need to nest, use <a href="../Classes/FMDatabase.html#//api/name/startSavePointWithName:error:"><code>[FMDatabase startSavePointWithName:error:]</code></a> instead.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabasePool.h</code></p>
- </div>
-
-
- </div>
- </div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">inSavePoint</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inSavePoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Error</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSError</code> object if error; <code>nil</code> if successful.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
</div>
- </div>
-
- </div>
-
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
+</html>
diff --git a/html/Classes/FMDatabaseQueue.html b/html/Classes/FMDatabaseQueue.html
index 93bd5b3..72a5805 100644
--- a/html/Classes/FMDatabaseQueue.html
+++ b/html/Classes/FMDatabaseQueue.html
@@ -1,1437 +1,1617 @@
<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMDatabaseQueue Class Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
- <option value="overview">Overview</option>
-
-
-
-
- <option value="tasks">Tasks</option>
-
-
-
-
-
- <optgroup label="Properties">
-
- <option value="//api/name/openFlags">openFlags</option>
-
- <option value="//api/name/path">path</option>
-
- <option value="//api/name/vfsName">vfsName</option>
-
- </optgroup>
-
-
-
- <optgroup label="Class Methods">
-
- <option value="//api/name/databaseClass">+ databaseClass</option>
-
- <option value="//api/name/databaseQueueWithPath:">+ databaseQueueWithPath:</option>
-
- <option value="//api/name/databaseQueueWithPath:flags:">+ databaseQueueWithPath:flags:</option>
-
- <option value="//api/name/databaseQueueWithURL:">+ databaseQueueWithURL:</option>
-
- <option value="//api/name/databaseQueueWithURL:flags:">+ databaseQueueWithURL:flags:</option>
-
- </optgroup>
-
-
-
- <optgroup label="Instance Methods">
-
- <option value="//api/name/close">- close</option>
-
- <option value="//api/name/inDatabase:">- inDatabase:</option>
-
- <option value="//api/name/inDeferredTransaction:">- inDeferredTransaction:</option>
-
- <option value="//api/name/inSavePoint:">- inSavePoint:</option>
-
- <option value="//api/name/inTransaction:">- inTransaction:</option>
-
- <option value="//api/name/initWithPath:">- initWithPath:</option>
-
- <option value="//api/name/initWithPath:flags:">- initWithPath:flags:</option>
-
- <option value="//api/name/initWithPath:flags:vfs:">- initWithPath:flags:vfs:</option>
-
- <option value="//api/name/initWithURL:">- initWithURL:</option>
-
- <option value="//api/name/initWithURL:flags:">- initWithURL:flags:</option>
-
- <option value="//api/name/initWithURL:flags:vfs:">- initWithURL:flags:vfs:</option>
-
- <option value="//api/name/interrupt">- interrupt</option>
-
- </optgroup>
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMDatabaseQueue Class Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Inherits from</th>
- <td>NSObject</td>
-</tr><tr>
- <th>Declared in</th>
- <td>FMDatabaseQueue.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
- <div class="section section-overview">
- <a title="Overview" name="overview"></a>
- <h2 class="subtitle subtitle-overview">Overview</h2>
- <p>To perform queries and updates on multiple threads, you&rsquo;ll want to use <code>FMDatabaseQueue</code>.</p>
-
-<p>Using a single instance of <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a> from multiple threads at once is a bad idea. It has always been OK to make a <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a> object <em>per thread</em>. Just don&rsquo;t share a single instance across threads, and definitely not across multiple threads at the same time.</p>
-
-<p>Instead, use <code>FMDatabaseQueue</code>. Here&rsquo;s how to use it:</p>
+<html lang="en">
+ <head>
+ <title>FMDatabaseQueue Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMDatabaseQueue" class="dashAnchor"></a>
+ <a title="FMDatabaseQueue Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDatabaseQueue Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDatabaseQueue</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabaseQueue</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>To perform queries and updates on multiple threads, you&rsquo;ll want to use <code>FMDatabaseQueue</code> .</p>
+
+<p>Using a single instance of <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> from multiple threads at once is a bad idea. It has always been OK to make a <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object <em>per thread</em>. Just don&rsquo;t share a single instance across threads, and definitely not across multiple threads at the same time.</p>
+
+<p>Instead, use <code>FMDatabaseQueue</code> . Here&rsquo;s how to use it:</p>
<p>First, make your queue.</p>
-
-<pre><code>FMDatabaseQueue *queue = [FMDatabaseQueue databaseQueueWithPath:aPath];
+<pre class="highlight objective_c"><code><span class="n">FMDatabaseQueue</span> <span class="o">*</span><span class="n">queue</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabaseQueue</span> <span class="nf">databaseQueueWithPath</span><span class="p">:</span><span class="n">aPath</span><span class="p">];</span>
</code></pre>
<p>Then use it like so:</p>
-
-<pre><code>[queue inDatabase:^(FMDatabase *db) {
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:1]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:2]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:3]];
-
- FMResultSet *rs = [db executeQuery:@"select * from foo"];
- while ([rs next]) {
- //…
- }
-}];
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inDatabase</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"select * from foo"</span><span class="p">];</span>
+ <span class="k">while</span> <span class="p">([</span><span class="n">rs</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">//…
+</span> <span class="p">}</span>
+<span class="p">}];</span>
</code></pre>
<p>An easy way to wrap things up in a transaction can be done like this:</p>
-
-<pre><code>[queue inTransaction:^(FMDatabase *db, BOOL *rollback) {
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:1]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:2]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:3]];
-
- if (whoopsSomethingWrongHappened) {
- *rollback = YES;
- return;
- }
- // etc…
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:4]];
-}];
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inTransaction</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">,</span> <span class="n">BOOL</span> <span class="o">*</span><span class="n">rollback</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="c1">// if (whoopsSomethingWrongHappened) {
+</span> <span class="c1">// *rollback = YES;
+</span> <span class="c1">// return;
+</span> <span class="c1">// }
+</span>
+ <span class="c1">// etc…
+</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">4</span><span class="p">]];</span>
+<span class="p">}];</span>
</code></pre>
-<p><code>FMDatabaseQueue</code> will run the blocks on a serialized queue (hence the name of the class). So if you call <code>FMDatabaseQueue</code>&rsquo;s methods from multiple threads at the same time, they will be executed in the order they are received. This way queries and updates won&rsquo;t step on each other&rsquo;s toes, and every one is happy.</p>
-
-<h3>See also</h3>
-
-<ul>
-<li><a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a></li>
-</ul>
-<div class="warning"><p><strong>Warning:</strong> Do not instantiate a single <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a> object and use it across multiple threads. Use <code>FMDatabaseQueue</code> instead.</p></div><div class="warning"><p><strong>Warning:</strong> The calls to <code>FMDatabaseQueue</code>&rsquo;s methods are blocking. So even though you are passing along blocks, they will <strong>not</strong> be run on another thread.</p></div>
- </div>
-
-
-
-
-
- <div class="section section-tasks">
- <a title="Tasks" name="tasks"></a>
-
-
-
- <h2 class="task-title">Other Methods</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/path" title="path"></a>
- <h3 class="method-title"><code><a href="#//api/name/path">&nbsp;&nbsp;path</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Path of database</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, retain, nullable) NSString *path</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Path of database</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/openFlags" title="openFlags"></a>
- <h3 class="method-title"><code><a href="#//api/name/openFlags">&nbsp;&nbsp;openFlags</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Open flags</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, readonly) int openFlags</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Open flags</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/vfsName" title="vfsName"></a>
- <h3 class="method-title"><code><a href="#//api/name/vfsName">&nbsp;&nbsp;vfsName</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p> Custom virtual file system name</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, copy, nullable) NSString *vfsName</code></div>
+<p><code>FMDatabaseQueue</code> will run the blocks on a serialized queue (hence the name of the class). So if you call <code>FMDatabaseQueue</code> &lsquo;s methods from multiple threads at the same time, they will be executed in the order they are received. This way queries and updates won&rsquo;t step on each other&rsquo;s toes, and every one is happy.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object and use it across multiple threads. Use <code>FMDatabaseQueue</code> instead.</p>
-
-
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>The calls to <code>FMDatabaseQueue</code> &rsquo;s methods are blocking. So even though you are passing along blocks, they will <strong>not</strong> be run on another thread.</p>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p> Custom virtual file system name</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
-
- <a title="Initialization, opening, and closing of queue" name="task_Initialization, opening, and closing of queue"></a>
- <h2 class="task-title">Initialization, opening, and closing of queue</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/databaseQueueWithPath:" title="databaseQueueWithPath:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseQueueWithPath:">+&nbsp;databaseQueueWithPath:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using path.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databaseQueueWithPath:(NSString *_Nullable)<em>aPath</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using path.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databaseQueueWithURL:" title="databaseQueueWithURL:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseQueueWithURL:">+&nbsp;databaseQueueWithURL:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using file URL.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databaseQueueWithURL:(NSURL *_Nullable)<em>url</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file <code>NSURL</code> of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using file URL.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databaseQueueWithPath:flags:" title="databaseQueueWithPath:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseQueueWithPath:flags:">+&nbsp;databaseQueueWithPath:flags:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using path and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databaseQueueWithPath:(NSString *_Nullable)<em>aPath</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using path and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databaseQueueWithURL:flags:" title="databaseQueueWithURL:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseQueueWithURL:flags:">+&nbsp;databaseQueueWithURL:flags:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using file URL and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)databaseQueueWithURL:(NSURL *_Nullable)<em>url</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file <code>NSURL</code> of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using file URL and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithPath:" title="initWithPath:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithPath:">&ndash;&nbsp;initWithPath:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using path.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithPath:(NSString *_Nullable)<em>aPath</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using path.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithURL:" title="initWithURL:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithURL:">&ndash;&nbsp;initWithURL:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using file URL.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithURL:(NSURL *_Nullable)<em>url</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file `NSURL of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using file URL.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithPath:flags:" title="initWithPath:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithPath:flags:">&ndash;&nbsp;initWithPath:flags:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using path and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithPath:(NSString *_Nullable)<em>aPath</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using path and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithURL:flags:" title="initWithURL:flags:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithURL:flags:">&ndash;&nbsp;initWithURL:flags:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using file URL and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithURL:(NSURL *_Nullable)<em>url</em> flags:(int)<em>openFlags</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using file URL and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithPath:flags:vfs:" title="initWithPath:flags:vfs:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithPath:flags:vfs:">&ndash;&nbsp;initWithPath:flags:vfs:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using path and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithPath:(NSString *_Nullable)<em>aPath</em> flags:(int)<em>openFlags</em> vfs:(NSString *_Nullable)<em>vfsName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>aPath</code></th>
- <td><p>The file path of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>vfsName</code></th>
- <td><p>The name of a custom virtual file system</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using path and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/initWithURL:flags:vfs:" title="initWithURL:flags:vfs:"></a>
- <h3 class="method-title"><code><a href="#//api/name/initWithURL:flags:vfs:">&ndash;&nbsp;initWithURL:flags:vfs:</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create queue using file URL and specified flags.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (instancetype)initWithURL:(NSURL *_Nullable)<em>url</em> flags:(int)<em>openFlags</em> vfs:(NSString *_Nullable)<em>vfsName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>url</code></th>
- <td><p>The file `NSURL of the database.</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>openFlags</code></th>
- <td><p>Flags passed to the openWithFlags method of the database</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>vfsName</code></th>
- <td><p>The name of a custom virtual file system</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create queue using file URL and specified flags.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/databaseClass" title="databaseClass"></a>
- <h3 class="method-title"><code><a href="#//api/name/databaseClass">+&nbsp;databaseClass</a></code>
+<p>@sa FMDatabase</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(py)path"></a>
+ <a name="//apple_ref/objc/Property/path" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(py)path">path</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Path of database</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">path</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">path</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(py)openFlags"></a>
+ <a name="//apple_ref/objc/Property/openFlags" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(py)openFlags">openFlags</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Open flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(py)vfsName"></a>
+ <a name="//apple_ref/objc/Property/vfsName" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(py)vfsName">vfsName</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Custom virtual file system name</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">copy</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Initialization,%20opening,%20and%20closing%20of%20queue"></a>
+ <a name="//apple_ref/objc/Section/Initialization, opening, and closing of queue" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Initialization,%20opening,%20and%20closing%20of%20queue"></a>
+ <h3 class="section-name"><p>Initialization, opening, and closing of queue</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (Class)databaseClass</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>The Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:">+databaseQueueWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:">+databaseQueueWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:flags:">+databaseQueueWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:flags:">+databaseQueueWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithPath:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithPath:">-initWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="n"><a href="../Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithURL:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithURL:">-initWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file `NSURL of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:">-initWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="n"><a href="../Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:">-initWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span> <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:vfs:">-initWithPath:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="n"><a href="../Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:vfs:">-initWithURL:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file `NSURL of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseClass"></a>
+ <a name="//apple_ref/objc/Method/+databaseClass" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseClass">+databaseClass</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
<p>Subclasses can override this method to return specified Class of &lsquo;FMDatabase&rsquo; subclass.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/close" title="close"></a>
- <h3 class="method-title"><code><a href="#//api/name/close">&ndash;&nbsp;close</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Close database used by queue.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)close</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Close database used by queue.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/interrupt" title="interrupt"></a>
- <h3 class="method-title"><code><a href="#//api/name/interrupt">&ndash;&nbsp;interrupt</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">Class</span><span class="p">)</span><span class="n">databaseClass</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">databaseClass</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">AnyClass</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close database used by queue.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)interrupt"></a>
+ <a name="//apple_ref/objc/Method/-interrupt" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)interrupt">-interrupt</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Interupt pending database operation.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">interrupt</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">interrupt</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Dispatching%20database%20operations%20to%20queue"></a>
+ <a name="//apple_ref/objc/Section/Dispatching database operations to queue" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Dispatching%20database%20operations%20to%20queue"></a>
+ <h3 class="section-name"><p>Dispatching database operations to queue</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inDatabase:"></a>
+ <a name="//apple_ref/objc/Method/-inDatabase:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inDatabase:">-inDatabase:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDatabase</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDatabase</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inTransaction:">-inTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using transactions.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Unlike SQLite&rsquo;s <code>BEGIN TRANSACTION</code>, this method currently performs
+ an exclusive transaction, not a deferred transaction. This behavior
+ is likely to change in future versions of FMDB, whereby this method
+ will likely eventually adopt standard SQLite behavior and perform
+ deferred transactions. If you really need exclusive tranaction, it is
+ recommended that you use <code>inExclusiveTransaction</code>, instead, not only
+ to make your intent explicit, but also to future-proof your code.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Interupt pending database operation.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)interrupt</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Interupt pending database operation.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Dispatching database operations to queue" name="task_Dispatching database operations to queue"></a>
- <h2 class="task-title">Dispatching database operations to queue</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/inDatabase:" title="inDatabase:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inDatabase:">&ndash;&nbsp;inDatabase:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations on queue.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)inDatabase:(void ( ^ ) ( FMDatabase *db ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the queue of <code>FMDatabaseQueue</code></p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations on queue.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inTransaction:" title="inTransaction:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inTransaction:">&ndash;&nbsp;inTransaction:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations on queue, using transactions.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)inTransaction:(void ( ^ ) ( FMDatabase *db , BOOL *rollback ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the queue of <code>FMDatabaseQueue</code></p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations on queue, using transactions.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inDeferredTransaction:" title="inDeferredTransaction:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inDeferredTransaction:">&ndash;&nbsp;inDeferredTransaction:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations on queue, using deferred transactions.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)inDeferredTransaction:(void ( ^ ) ( FMDatabase *db , BOOL *rollback ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the queue of <code>FMDatabaseQueue</code></p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations on queue, using deferred transactions.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inSavePoint:" title="inSavePoint:"></a>
- <h3 class="method-title"><code><a href="#//api/name/inSavePoint:">&ndash;&nbsp;inSavePoint:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code> </p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inDeferredTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inDeferredTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inDeferredTransaction:">-inDeferredTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using deferred transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDeferredTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDeferredTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inExclusiveTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inExclusiveTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inExclusiveTransaction:">-inExclusiveTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using exclusive transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inExclusiveTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inExclusiveTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inImmediateTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inImmediateTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inImmediateTransaction:">-inImmediateTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using immediate transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inImmediateTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inImmediateTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inSavePoint:"></a>
+ <a name="//apple_ref/objc/Method/-inSavePoint:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inSavePoint:">-inSavePoint:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations using save point.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">inSavePoint</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inSavePoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Error</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Checkpoint"></a>
+ <a name="//apple_ref/objc/Section/Checkpoint" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Checkpoint"></a>
+ <h3 class="section-name"><p>Checkpoint</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Synchronously perform database operations using save point.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSError *_Nullable)inSavePoint:(void ( ^ ) ( FMDatabase *db , BOOL *rollback ))<em>block</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>block</code></th>
- <td><p>The code to be run on the queue of <code>FMDatabaseQueue</code></p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Synchronously perform database operations using save point.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabaseQueue.h</code></p>
- </div>
-
-
- </div>
- </div>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)checkpoint:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)checkpoint:error:">-checkpoint:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>YES on success, otherwise NO.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:error:">-checkpoint:<wbr>name:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>YES on success, otherwise NO.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:logFrameCount:checkpointCount:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:logFrameCount:checkpointCount:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:logFrameCount:checkpointCount:error:">-checkpoint:<wbr>name:<wbr>logFrameCount:<wbr>checkpointCount:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">logFrameCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">logFrameCount</span>
+ <span class="nf">checkpointCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">checkpointCount</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">logFrameCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?,</span> <span class="nv">checkpointCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>logFrameCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not NULL, then this is set to the total number of frames in the log file or to -1 if the checkpoint could not run because of an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not NULL, then this is set to the total number of checkpointed frames in the log file (including any that were already checkpointed before the function was called) or to -1 if the checkpoint could not run due to an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>YES on success, otherwise NO.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
</div>
- </div>
-
- </div>
-
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
+</html>
diff --git a/html/Classes/FMResultSet.html b/html/Classes/FMResultSet.html
index 4e4a159..d052154 100644
--- a/html/Classes/FMResultSet.html
+++ b/html/Classes/FMResultSet.html
@@ -1,2873 +1,2662 @@
<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMResultSet Class Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
- <option value="overview">Overview</option>
-
-
-
-
- <option value="tasks">Tasks</option>
-
-
-
-
-
- <optgroup label="Properties">
-
- <option value="//api/name/columnCount">columnCount</option>
-
- <option value="//api/name/columnNameToIndexMap">columnNameToIndexMap</option>
-
- <option value="//api/name/query">query</option>
-
- <option value="//api/name/resultDictionary">resultDictionary</option>
-
- <option value="//api/name/statement">statement</option>
-
- </optgroup>
-
-
-
- <optgroup label="Class Methods">
-
- <option value="//api/name/resultSetWithStatement:usingParentDatabase:">+ resultSetWithStatement:usingParentDatabase:</option>
-
- </optgroup>
-
-
-
- <optgroup label="Instance Methods">
-
- <option value="//api/name/UTF8StringForColumn:">- UTF8StringForColumn:</option>
-
- <option value="//api/name/UTF8StringForColumnIndex:">- UTF8StringForColumnIndex:</option>
-
- <option value="//api/name/boolForColumn:">- boolForColumn:</option>
-
- <option value="//api/name/boolForColumnIndex:">- boolForColumnIndex:</option>
-
- <option value="//api/name/close">- close</option>
-
- <option value="//api/name/columnIndexForName:">- columnIndexForName:</option>
-
- <option value="//api/name/columnIndexIsNull:">- columnIndexIsNull:</option>
-
- <option value="//api/name/columnIsNull:">- columnIsNull:</option>
-
- <option value="//api/name/columnNameForIndex:">- columnNameForIndex:</option>
-
- <option value="//api/name/dataForColumn:">- dataForColumn:</option>
-
- <option value="//api/name/dataForColumnIndex:">- dataForColumnIndex:</option>
-
- <option value="//api/name/dataNoCopyForColumn:">- dataNoCopyForColumn:</option>
-
- <option value="//api/name/dataNoCopyForColumnIndex:">- dataNoCopyForColumnIndex:</option>
-
- <option value="//api/name/dateForColumn:">- dateForColumn:</option>
-
- <option value="//api/name/dateForColumnIndex:">- dateForColumnIndex:</option>
-
- <option value="//api/name/doubleForColumn:">- doubleForColumn:</option>
-
- <option value="//api/name/doubleForColumnIndex:">- doubleForColumnIndex:</option>
-
- <option value="//api/name/hasAnotherRow">- hasAnotherRow</option>
-
- <option value="//api/name/intForColumn:">- intForColumn:</option>
-
- <option value="//api/name/intForColumnIndex:">- intForColumnIndex:</option>
-
- <option value="//api/name/kvcMagic:">- kvcMagic:</option>
-
- <option value="//api/name/longForColumn:">- longForColumn:</option>
-
- <option value="//api/name/longForColumnIndex:">- longForColumnIndex:</option>
-
- <option value="//api/name/longLongIntForColumn:">- longLongIntForColumn:</option>
-
- <option value="//api/name/longLongIntForColumnIndex:">- longLongIntForColumnIndex:</option>
-
- <option value="//api/name/next">- next</option>
-
- <option value="//api/name/nextWithError:">- nextWithError:</option>
-
- <option value="//api/name/objectAtIndexedSubscript:">- objectAtIndexedSubscript:</option>
-
- <option value="//api/name/objectForColumn:">- objectForColumn:</option>
-
- <option value="//api/name/objectForColumnIndex:">- objectForColumnIndex:</option>
-
- <option value="//api/name/objectForKeyedSubscript:">- objectForKeyedSubscript:</option>
-
- <option value="//api/name/resultDict">- resultDict</option>
-
- <option value="//api/name/stringForColumn:">- stringForColumn:</option>
-
- <option value="//api/name/stringForColumnIndex:">- stringForColumnIndex:</option>
-
- <option value="//api/name/unsignedLongLongIntForColumn:">- unsignedLongLongIntForColumn:</option>
-
- <option value="//api/name/unsignedLongLongIntForColumnIndex:">- unsignedLongLongIntForColumnIndex:</option>
-
- </optgroup>
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMResultSet Class Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Inherits from</th>
- <td>NSObject</td>
-</tr><tr>
- <th>Declared in</th>
- <td>FMResultSet.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
- <div class="section section-overview">
- <a title="Overview" name="overview"></a>
- <h2 class="subtitle subtitle-overview">Overview</h2>
- <p>Represents the results of executing a query on an <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a>.</p>
-
-<h3>See also</h3>
+<html lang="en">
+ <head>
+ <title>FMResultSet Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMResultSet" class="dashAnchor"></a>
+ <a title="FMResultSet Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMResultSet Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMResultSet</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMResultSet</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>Represents the results of executing a query on an <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> .</p>
+
+<p>See also</p>
<ul>
-<li><a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a></li>
+<li><code><a href="../Classes/FMDatabase.html">FMDatabase</a></code></li>
</ul>
- </div>
-
-
-
-
-
- <div class="section section-tasks">
- <a title="Tasks" name="tasks"></a>
-
-
- <a title="Properties" name="task_Properties"></a>
- <h2 class="task-title">Properties</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/query" title="query"></a>
- <h3 class="method-title"><code><a href="#//api/name/query">&nbsp;&nbsp;query</a></code>
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)parentDB"></a>
+ <a name="//apple_ref/objc/Property/parentDB" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)parentDB">parentDB</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">parentDB</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">parentDB</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Properties"></a>
+ <a name="//apple_ref/objc/Section/Properties" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Properties"></a>
+ <h3 class="section-name"><p>Properties</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Executed query</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, retain, nullable) NSString *query</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Executed query</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/columnNameToIndexMap" title="columnNameToIndexMap"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnNameToIndexMap">&nbsp;&nbsp;columnNameToIndexMap</a></code>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)query"></a>
+ <a name="//apple_ref/objc/Property/query" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)query">query</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Executed query</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">query</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">query</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)columnNameToIndexMap"></a>
+ <a name="//apple_ref/objc/Property/columnNameToIndexMap" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)columnNameToIndexMap">columnNameToIndexMap</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p><code>NSMutableDictionary</code> mapping column names to numeric index</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">)</span> <span class="n">NSMutableDictionary</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">columnNameToIndexMap</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">columnNameToIndexMap</span><span class="p">:</span> <span class="kt">NSMutableDictionary</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)statement"></a>
+ <a name="//apple_ref/objc/Property/statement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)statement">statement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p><code><a href="../Classes/FMStatement.html">FMStatement</a></code> used by result set.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n"><a href="../Classes/FMStatement.html">FMStatement</a></span> <span class="o">*</span><span class="n">statement</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">statement</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMStatement.html">FMStatement</a></span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Creating%20and%20closing%20a%20result%20set"></a>
+ <a name="//apple_ref/objc/Section/Creating and closing a result set" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Creating%20and%20closing%20a%20result%20set"></a>
+ <h3 class="section-name"><p>Creating and closing a result set</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p><code>NSMutableDictionary</code> mapping column names to numeric index</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (readonly) NSMutableDictionary *columnNameToIndexMap</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p><code>NSMutableDictionary</code> mapping column names to numeric index</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/statement" title="statement"></a>
- <h3 class="method-title"><code><a href="#//api/name/statement">&nbsp;&nbsp;statement</a></code>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close result set</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Iterating%20through%20the%20result%20set"></a>
+ <a name="//apple_ref/objc/Section/Iterating through the result set" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Iterating%20through%20the%20result%20set"></a>
+ <h3 class="section-name"><p>Iterating through the result set</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)next"></a>
+ <a name="//apple_ref/objc/Method/-next" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)next">-next</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve next row for result set.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p><code>FMStatement</code> used by result set.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, retain, nullable) FMStatement *statement</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p><code>FMStatement</code> used by result set.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div>
- </div>
-
-
- <a title="Creating and closing database" name="task_Creating and closing database"></a>
- <h2 class="task-title">Creating and closing database</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/resultSetWithStatement:usingParentDatabase:" title="resultSetWithStatement:usingParentDatabase:"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultSetWithStatement:usingParentDatabase:">+&nbsp;resultSetWithStatement:usingParentDatabase:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Create result set from <a href="../Classes/FMStatement.html"><code>FMStatement</code></a></p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>+ (instancetype)resultSetWithStatement:(FMStatement *)<em>statement</em> usingParentDatabase:(FMDatabase *)<em>aDB</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>statement</code></th>
- <td><p>A <a href="../Classes/FMStatement.html"><code>FMStatement</code></a> to be performed</p></td>
- </tr>
-
- <tr>
- <th scope="row" class="argument-name"><code>aDB</code></th>
- <td><p>A <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a> to be used</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>A <code>FMResultSet</code> on success; <code>nil</code> on failure</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Create result set from <a href="../Classes/FMStatement.html"><code>FMStatement</code></a></p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/close" title="close"></a>
- <h3 class="method-title"><code><a href="#//api/name/close">&ndash;&nbsp;close</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Close result set</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)close</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Close result set</p>
- </div>
-
-
-
-
-
+<p>You must always invoke <code>next</code> or <code>nextWithError</code> before attempting to access the values returned in a query, even if you&rsquo;re only expecting one.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
-
- <a title="Iterating through the result set" name="task_Iterating through the result set"></a>
- <h2 class="task-title">Iterating through the result set</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/next" title="next"></a>
- <h3 class="method-title"><code><a href="#//api/name/next">&ndash;&nbsp;next</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Retrieve next row for result set.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)next</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if row successfully retrieved; <code>NO</code> if end of result set reached</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Retrieve next row for result set.</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">next</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">next</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if row successfully retrieved; <code>NO</code> if end of result set reached</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)nextWithError:"></a>
+ <a name="//apple_ref/objc/Method/-nextWithError:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)nextWithError:">-nextWithError:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve next row for result set.</p>
<p>You must always invoke <code>next</code> or <code>nextWithError</code> before attempting to access the values returned in a query, even if you&rsquo;re only expecting one.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/hasAnotherRow">- hasAnotherRow</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/nextWithError:" title="nextWithError:"></a>
- <h3 class="method-title"><code><a href="#//api/name/nextWithError:">&ndash;&nbsp;nextWithError:</a></code>
-</h3>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Retrieve next row for result set.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)nextWithError:(NSError *_Nullable *)<em>outErr</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>outErr</code></th>
- <td><p>A &lsquo;NSError&rsquo; object to receive any error object (if any).</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>&lsquo;YES&rsquo; if row successfully retrieved; &lsquo;NO&rsquo; if end of result set reached</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Retrieve next row for result set.</p>
-
-<p> You must always invoke <code>next</code> or <code>nextWithError</code> before attempting to access the values returned in a query, even if you&rsquo;re only expecting one.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/hasAnotherRow">- hasAnotherRow</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/hasAnotherRow" title="hasAnotherRow"></a>
- <h3 class="method-title"><code><a href="#//api/name/hasAnotherRow">&ndash;&nbsp;hasAnotherRow</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Did the last call to <a href="#//api/name/next"><code>next</code></a> succeed in retrieving another row?</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)hasAnotherRow</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if the last call to <a href="#//api/name/next"><code>next</code></a> succeeded in retrieving another record; <code>NO</code> if not.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Did the last call to <a href="#//api/name/next"><code>next</code></a> succeed in retrieving another row?</p><div class="warning"><p><strong>Warning:</strong> The <code>hasAnotherRow</code> method must follow a call to <a href="#//api/name/next"><code>next</code></a>. If the previous database interaction was something other than a call to <code>next</code>, then this method may return <code>NO</code>, whether there is another row of data or not.</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/next">- next</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
-
- <a title="Retrieving information from result set" name="task_Retrieving information from result set"></a>
- <h2 class="task-title">Retrieving information from result set</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/columnCount" title="columnCount"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnCount">&nbsp;&nbsp;columnCount</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>How many columns in result set</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly) int columnCount</code></div>
-
-
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Integer value of the number of columns.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>How many columns in result set</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/columnIndexForName:" title="columnIndexForName:"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnIndexForName:">&ndash;&nbsp;columnIndexForName:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Column index for column name</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (int)columnIndexForName:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Zero-based index for column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Column index for column name</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/columnNameForIndex:" title="columnNameForIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnNameForIndex:">&ndash;&nbsp;columnNameForIndex:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Column name for column index</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSString *_Nullable)columnNameForIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>columnName <code>NSString</code> value of the name of the column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Column name for column index</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/intForColumn:" title="intForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/intForColumn:">&ndash;&nbsp;intForColumn:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set integer value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (int)intForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>int</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set integer value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/intForColumnIndex:" title="intForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/intForColumnIndex:">&ndash;&nbsp;intForColumnIndex:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set integer value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (int)intForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>int</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set integer value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/longForColumn:" title="longForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/longForColumn:">&ndash;&nbsp;longForColumn:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">nextWithError</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">nextWithError</span><span class="p">()</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A &lsquo;NSError&rsquo; object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if row successfully retrieved; &lsquo;NO&rsquo; if end of result set reached</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)step"></a>
+ <a name="//apple_ref/objc/Method/-step" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)step">-step</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Perform SQL statement.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>long</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (long)longForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>long</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>long</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/longForColumnIndex:" title="longForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/longForColumnIndex:">&ndash;&nbsp;longForColumnIndex:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set long value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (long)longForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>long</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set long value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/longLongIntForColumn:" title="longLongIntForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/longLongIntForColumn:">&ndash;&nbsp;longLongIntForColumn:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>long long int</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (long long int)longLongIntForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>long long int</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>long long int</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/longLongIntForColumnIndex:" title="longLongIntForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/longLongIntForColumnIndex:">&ndash;&nbsp;longLongIntForColumnIndex:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>long long int</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (long long int)longLongIntForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>long long int</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>long long int</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/unsignedLongLongIntForColumn:" title="unsignedLongLongIntForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/unsignedLongLongIntForColumn:">&ndash;&nbsp;unsignedLongLongIntForColumn:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>unsigned long long int</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (unsigned long long int)unsignedLongLongIntForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>unsigned long long int</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>unsigned long long int</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/unsignedLongLongIntForColumnIndex:" title="unsignedLongLongIntForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/unsignedLongLongIntForColumnIndex:">&ndash;&nbsp;unsignedLongLongIntForColumnIndex:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>unsigned long long int</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (unsigned long long int)unsignedLongLongIntForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>unsigned long long int</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>unsigned long long int</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/boolForColumn:" title="boolForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/boolForColumn:">&ndash;&nbsp;boolForColumn:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>BOOL</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)boolForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>BOOL</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>BOOL</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/boolForColumnIndex:" title="boolForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/boolForColumnIndex:">&ndash;&nbsp;boolForColumnIndex:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>BOOL</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)boolForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>BOOL</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>BOOL</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/doubleForColumn:" title="doubleForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/doubleForColumn:">&ndash;&nbsp;doubleForColumn:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>double</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (double)doubleForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>double</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>double</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/doubleForColumnIndex:" title="doubleForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/doubleForColumnIndex:">&ndash;&nbsp;doubleForColumnIndex:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">step</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">step</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if successful; &lsquo;NO&rsquo; if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)stepWithError:"></a>
+ <a name="//apple_ref/objc/Method/-stepWithError:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)stepWithError:">-stepWithError:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Perform SQL statement.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>double</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (double)doubleForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>double</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>double</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/stringForColumn:" title="stringForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/stringForColumn:">&ndash;&nbsp;stringForColumn:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSString</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSString *_Nullable)stringForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>String value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSString</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/stringForColumnIndex:" title="stringForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/stringForColumnIndex:">&ndash;&nbsp;stringForColumnIndex:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">stepWithError</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">stepWithError</span><span class="p">()</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A &lsquo;NSError&rsquo; object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if successful; &lsquo;NO&rsquo; if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)hasAnotherRow"></a>
+ <a name="//apple_ref/objc/Method/-hasAnotherRow" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)hasAnotherRow">-hasAnotherRow</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Did the last call to <code>&lt;next&gt;</code> succeed in retrieving another row?</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>next</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>The <code>hasAnotherRow</code> method must follow a call to <code>&lt;next&gt;</code>. If the previous database interaction was something other than a call to <code>next</code>, then this method may return <code>NO,</code> whether there is another row of data or not.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSString</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSString *_Nullable)stringForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>String value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSString</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dateForColumn:" title="dateForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dateForColumn:">&ndash;&nbsp;dateForColumn:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSDate</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSDate *_Nullable)dateForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Date value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSDate</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dateForColumnIndex:" title="dateForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dateForColumnIndex:">&ndash;&nbsp;dateForColumnIndex:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSDate</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSDate *_Nullable)dateForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Date value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSDate</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dataForColumn:" title="dataForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dataForColumn:">&ndash;&nbsp;dataForColumn:</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">hasAnotherRow</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">hasAnotherRow</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if there is another row; &lsquo;NO&rsquo; if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Retrieving%20information%20from%20result%20set"></a>
+ <a name="//apple_ref/objc/Section/Retrieving information from result set" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Retrieving%20information%20from%20result%20set"></a>
+ <h3 class="section-name"><p>Retrieving information from result set</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSData</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSData *_Nullable)dataForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Data value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSData</code> value for column.</p>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)columnCount"></a>
+ <a name="//apple_ref/objc/Property/columnCount" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)columnCount">columnCount</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>How many columns in result set</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">columnCount</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">columnCount</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Integer value of the number of columns.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnIndexForName:"></a>
+ <a name="//apple_ref/objc/Method/-columnIndexForName:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnIndexForName:">-columnIndexForName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Column index for column name</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">columnIndexForName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnIndex</span><span class="p">(</span><span class="n">forName</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Zero-based index for column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnNameForIndex:"></a>
+ <a name="//apple_ref/objc/Method/-columnNameForIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnNameForIndex:">-columnNameForIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Column name for column index</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">columnNameForIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnName</span><span class="p">(</span><span class="k">for</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>columnName <code>NSString</code> value of the name of the column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)intForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-intForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)intForColumn:">-intForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set integer value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">intForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">int</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)intForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-intForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)intForColumnIndex:">-intForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set integer value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">intForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">int</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-longForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longForColumn:">-longForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>long</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span><span class="p">)</span><span class="nf">longForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">long</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-longForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longForColumnIndex:">-longForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set long value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span><span class="p">)</span><span class="nf">longForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">long</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longLongIntForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-longLongIntForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longLongIntForColumn:">-longLongIntForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">longLongIntForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">longLongInt</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longLongIntForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-longLongIntForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longLongIntForColumnIndex:">-longLongIntForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">longLongIntForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">longLongInt</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-unsignedLongLongIntForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumn:">-unsignedLongLongIntForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>unsigned long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">unsigned</span> <span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">unsignedLongLongIntForColumn</span><span class="p">:</span>
+ <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">unsignedLongLongInt</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UInt64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>unsigned long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-unsignedLongLongIntForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumnIndex:">-unsignedLongLongIntForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>unsigned long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">unsigned</span> <span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">unsignedLongLongIntForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">unsignedLongLongInt</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UInt64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>unsigned long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)boolForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-boolForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)boolForColumn:">-boolForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>BOOL</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">boolForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bool</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>BOOL</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)boolForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-boolForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)boolForColumnIndex:">-boolForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>BOOL</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">boolForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bool</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>BOOL</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)doubleForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-doubleForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)doubleForColumn:">-doubleForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>double</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">doubleForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">double</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>double</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)doubleForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-doubleForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)doubleForColumnIndex:">-doubleForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>double</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">doubleForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">double</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>double</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)stringForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-stringForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)stringForColumn:">-stringForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSString</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">string</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>String value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)stringForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-stringForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)stringForColumnIndex:">-stringForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSString</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">string</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>String value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dateForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-dateForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dateForColumn:">-dateForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSDate</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">date</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Date</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Date value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dateForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-dateForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dateForColumnIndex:">-dateForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSDate</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">date</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Date</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Date value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-dataForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataForColumn:">-dataForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
<p>This is useful when storing binary data in table (such as image or the like).</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dataForColumnIndex:" title="dataForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dataForColumnIndex:">&ndash;&nbsp;dataForColumnIndex:</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSData</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSData *_Nullable)dataForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Data value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSData</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/UTF8StringForColumn:" title="UTF8StringForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/UTF8StringForColumn:">&ndash;&nbsp;UTF8StringForColumn:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">data</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-dataForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataForColumnIndex:">-dataForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">data</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)UTF8StringForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-UTF8StringForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)UTF8StringForColumn:">-UTF8StringForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>(const unsigned char *)</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">UTF8StringForColumn</span><span class="p">:</span>
+ <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">utf8String</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UnsafePointer</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>(const unsigned char *)</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)UTF8StringForColumnName:"></a>
+ <a name="//apple_ref/objc/Method/-UTF8StringForColumnName:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMResultSet(im)UTF8StringForColumnName:">-UTF8StringForColumnName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use UTF8StringForColumn instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="o">*</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">UTF8StringForColumnName</span><span class="p">:(</span><span class="n">NSString</span><span class="o">*</span><span class="p">)</span><span class="nv">columnName</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use UTF8StringForColumn instead"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">utf8String</span><span class="p">(</span><span class="n">forColumnName</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UnsafePointer</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)UTF8StringForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-UTF8StringForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)UTF8StringForColumnIndex:">-UTF8StringForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>(const unsigned char *)</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">UTF8StringForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">utf8String</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UnsafePointer</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>(const unsigned char *)</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-objectForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectForColumn:">-objectForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>objectForKeyedSubscript:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>(const unsigned char *)</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (const unsigned char *_Nullable)UTF8StringForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>(const unsigned char *)</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>(const unsigned char *)</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/UTF8StringForColumnIndex:" title="UTF8StringForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/UTF8StringForColumnIndex:">&ndash;&nbsp;UTF8StringForColumnIndex:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>(const unsigned char *)</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (const unsigned char *_Nullable)UTF8StringForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>(const unsigned char *)</code> value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>(const unsigned char *)</code> value for column.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/objectForColumn:" title="objectForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/objectForColumn:">&ndash;&nbsp;objectForColumn:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">object</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForColumnName:"></a>
+ <a name="//apple_ref/objc/Method/-objectForColumnName:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMResultSet(im)objectForColumnName:">-objectForColumnName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use objectForColumn instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForColumnName</span><span class="p">:(</span><span class="n">NSString</span><span class="o">*</span><span class="p">)</span><span class="nv">columnName</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use objectForColumn instead"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">object</span><span class="p">(</span><span class="n">forColumnName</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-objectForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectForColumnIndex:">-objectForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>objectAtIndexedSubscript:</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set object for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (id _Nullable)objectForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p>Name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Either <code>NSNumber</code>, <code>NSString</code>, <code>NSData</code>, or <code>NSNull</code>. If the column was <code>NULL</code>, this returns <code>[NSNull null]</code> object.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set object for column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/objectForKeyedSubscript:">- objectForKeyedSubscript:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/objectForColumnIndex:" title="objectForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/objectForColumnIndex:">&ndash;&nbsp;objectForColumnIndex:</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set object for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (id _Nullable)objectForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Either <code>NSNumber</code>, <code>NSString</code>, <code>NSData</code>, or <code>NSNull</code>. If the column was <code>NULL</code>, this returns <code>[NSNull null]</code> object.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set object for column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/objectAtIndexedSubscript:">- objectAtIndexedSubscript:</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/objectForKeyedSubscript:" title="objectForKeyedSubscript:"></a>
- <h3 class="method-title"><code><a href="#//api/name/objectForKeyedSubscript:">&ndash;&nbsp;objectForKeyedSubscript:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set object for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (id _Nullable)objectForKeyedSubscript:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Either <code>NSNumber</code>, <code>NSString</code>, <code>NSData</code>, or <code>NSNull</code>. If the column was <code>NULL</code>, this returns <code>[NSNull null]</code> object.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set object for column.</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">object</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForKeyedSubscript:"></a>
+ <a name="//apple_ref/objc/Method/-objectForKeyedSubscript:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectForKeyedSubscript:">-objectForKeyedSubscript:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
<p>This method allows the use of the &ldquo;boxed&rdquo; syntax supported in Modern Objective-C. For example, by defining this method, the following syntax is now supported:</p>
-
-<pre><code>id result = rs[@"employee_name"];
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="n">rs</span><span class="p">[</span><span class="s">@"employee_name"</span><span class="p">];</span>
</code></pre>
<p>This simplified syntax is equivalent to calling:</p>
-
-<pre><code>id result = [rs objectForKeyedSubscript:@"employee_name"];
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForKeyedSubscript</span><span class="p">:</span><span class="s">@"employee_name"</span><span class="p">];</span>
</code></pre>
<p>which is, it turns out, equivalent to calling:</p>
-
-<pre><code>id result = [rs objectForColumnName:@"employee_name"];
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForColumnName</span><span class="p">:</span><span class="s">@"employee_name"</span><span class="p">];</span>
</code></pre>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/objectAtIndexedSubscript:" title="objectAtIndexedSubscript:"></a>
- <h3 class="method-title"><code><a href="#//api/name/objectAtIndexedSubscript:">&ndash;&nbsp;objectAtIndexedSubscript:</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set object for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (id _Nullable)objectAtIndexedSubscript:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Either <code>NSNumber</code>, <code>NSString</code>, <code>NSData</code>, or <code>NSNull</code>. If the column was <code>NULL</code>, this returns <code>[NSNull null]</code> object.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set object for column.</p>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForKeyedSubscript</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">subscript</span><span class="p">(</span><span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectAtIndexedSubscript:"></a>
+ <a name="//apple_ref/objc/Method/-objectAtIndexedSubscript:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectAtIndexedSubscript:">-objectAtIndexedSubscript:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
<p>This method allows the use of the &ldquo;boxed&rdquo; syntax supported in Modern Objective-C. For example, by defining this method, the following syntax is now supported:</p>
-
-<pre><code>id result = rs[0];
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="n">rs</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
</code></pre>
<p>This simplified syntax is equivalent to calling:</p>
-
-<pre><code>id result = [rs objectForKeyedSubscript:0];
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForKeyedSubscript</span><span class="p">:</span><span class="mi">0</span><span class="p">];</span>
</code></pre>
<p>which is, it turns out, equivalent to calling:</p>
-
-<pre><code>id result = [rs objectForColumnName:0];
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForColumnName</span><span class="p">:</span><span class="mi">0</span><span class="p">];</span>
</code></pre>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dataNoCopyForColumn:" title="dataNoCopyForColumn:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dataNoCopyForColumn:">&ndash;&nbsp;dataNoCopyForColumn:</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSData</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSData *_Nullable)dataNoCopyForColumn:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Data value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSData</code> value for column.</p><div class="warning"><p><strong>Warning:</strong> If you are going to use this data after you iterate over the next row, or after you close the
-result set, make sure to make a copy of the data first (or just use <a href="#//api/name/dataForColumn:"><code>dataForColumn:</code></a>/<a href="#//api/name/dataForColumnIndex:"><code>dataForColumnIndex:</code></a>)
-If you don&rsquo;t, you&rsquo;re going to be in a world of hurt when you try and use the data.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/dataNoCopyForColumnIndex:" title="dataNoCopyForColumnIndex:"></a>
- <h3 class="method-title"><code><a href="#//api/name/dataNoCopyForColumnIndex:">&ndash;&nbsp;dataNoCopyForColumnIndex:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectAtIndexedSubscript</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">subscript</span><span class="p">(</span><span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataNoCopyForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-dataNoCopyForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataNoCopyForColumn:">-dataNoCopyForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>If you are going to use this data after you iterate over the next row, or after you close the
+result set, make sure to make a copy of the data first (or just use <code>&lt;dataForColumn:&gt;</code>/<code>&lt;dataForColumnIndex:&gt;</code>)
+If you don&rsquo;t, you&rsquo;re going to be in a world of hurt when you try and use the data.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Result set <code>NSData</code> value for column.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSData *_Nullable)dataNoCopyForColumnIndex:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p>Data value of the result set&rsquo;s column.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Result set <code>NSData</code> value for column.</p><div class="warning"><p><strong>Warning:</strong> If you are going to use this data after you iterate over the next row, or after you close the
-result set, make sure to make a copy of the data first (or just use <a href="#//api/name/dataForColumn:"><code>dataForColumn:</code></a>/<a href="#//api/name/dataForColumnIndex:"><code>dataForColumnIndex:</code></a>)
-If you don&rsquo;t, you&rsquo;re going to be in a world of hurt when you try and use the data.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/columnIndexIsNull:" title="columnIndexIsNull:"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnIndexIsNull:">&ndash;&nbsp;columnIndexIsNull:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Is the column <code>NULL</code>?</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)columnIndexIsNull:(int)<em>columnIdx</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnIdx</code></th>
- <td><p>Zero-based index for column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if column is <code>NULL</code>; <code>NO</code> if not <code>NULL</code>.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Is the column <code>NULL</code>?</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/columnIsNull:" title="columnIsNull:"></a>
- <h3 class="method-title"><code><a href="#//api/name/columnIsNull:">&ndash;&nbsp;columnIsNull:</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataNoCopyForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">dataNoCopy</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataNoCopyForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-dataNoCopyForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataNoCopyForColumnIndex:">-dataNoCopyForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>If you are going to use this data after you iterate over the next row, or after you close the
+result set, make sure to make a copy of the data first (or just use <code>&lt;dataForColumn:&gt;</code>/<code>&lt;dataForColumnIndex:&gt;</code>)
+If you don&rsquo;t, you&rsquo;re going to be in a world of hurt when you try and use the data.</p>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Is the column <code>NULL</code>?</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (BOOL)columnIsNull:(NSString *)<em>columnName</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>columnName</code></th>
- <td><p><code>NSString</code> value of the name of the column.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
- <div class="method-subsection return">
- <h4 class="method-subtitle parameter-title">Return Value</h4>
- <p><code>YES</code> if column is <code>NULL</code>; <code>NO</code> if not <code>NULL</code>.</p>
- </div>
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Is the column <code>NULL</code>?</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultDictionary" title="resultDictionary"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultDictionary">&nbsp;&nbsp;resultDictionary</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Returns a dictionary of the row results mapped to case sensitive keys of the column names.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (nonatomic, readonly, nullable) NSDictionary *resultDictionary</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Returns a dictionary of the row results mapped to case sensitive keys of the column names.</p><div class="warning"><p><strong>Warning:</strong> The keys to the dictionary are case sensitive of the column names.</p></div>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/resultDict" title="resultDict"></a>
- <h3 class="method-title"><code><a href="#//api/name/resultDict">&ndash;&nbsp;resultDict</a></code>
-</h3>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataNoCopyForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">dataNoCopy</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnIndexIsNull:"></a>
+ <a name="//apple_ref/objc/Method/-columnIndexIsNull:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnIndexIsNull:">-columnIndexIsNull:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Is the column <code>NULL</code> ?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnIndexIsNull</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnIndexIsNull</span><span class="p">(</span><span class="n">_</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column is <code>NULL</code> ; <code>NO</code> if not <code>NULL</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnIsNull:"></a>
+ <a name="//apple_ref/objc/Method/-columnIsNull:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnIsNull:">-columnIsNull:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Is the column <code>NULL</code> ?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnIsNull</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnIsNull</span><span class="p">(</span><span class="n">_</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column is <code>NULL</code> ; <code>NO</code> if not <code>NULL</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)resultDictionary"></a>
+ <a name="//apple_ref/objc/Property/resultDictionary" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)resultDictionary">resultDictionary</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Returns a dictionary of the row results mapped to case sensitive keys of the column names. </p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ The keys to the dictionary are case sensitive of the column names.
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Returns a dictionary of the row results</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (NSDictionary *_Nullable)resultDict</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Returns a dictionary of the row results</p><div class="warning"><p><strong>Warning:</strong> <strong>Deprecated</strong>: Please use <a href="#//api/name/resultDictionary"><code>resultDictionary</code></a> instead. Also, beware that <a href="#//api/name/resultDictionary"><code>resultDictionary</code></a> is case sensitive!</p></div>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="#//api/name/resultDictionary">@property resultDictionary</a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
- <a title="Key value coding magic" name="task_Key value coding magic"></a>
- <h2 class="task-title">Key value coding magic</h2>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSDictionary</span> <span class="o">*</span><span class="n">resultDictionary</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">resultDictionary</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)resultDict"></a>
+ <a name="//apple_ref/objc/Method/-resultDict" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMResultSet(im)resultDict">-resultDict</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use resultDictionary instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Returns a dictionary of the row results</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>resultDictionary</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p><strong>Deprecated</strong>: Please use <code>&lt;resultDictionary&gt;</code> instead. Also, beware that <code>&lt;resultDictionary&gt;</code> is case sensitive!</p>
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/kvcMagic:" title="kvcMagic:"></a>
- <h3 class="method-title"><code><a href="#//api/name/kvcMagic:">&ndash;&nbsp;kvcMagic:</a></code>
-</h3>
+</div>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Performs <code>setValue</code> to yield support for key value observing.</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)kvcMagic:(id)<em>object</em></code></div>
-
-
-
- <div class="method-subsection arguments-section parameters">
- <h4 class="method-subtitle parameter-title">Parameters</h4>
- <table class="argument-def parameter-def">
-
- <tr>
- <th scope="row" class="argument-name"><code>object</code></th>
- <td><p>The object for which the values will be set. This is the key-value-coding compliant object that you might, for example, observe.</p></td>
- </tr>
-
- </table>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Performs <code>setValue</code> to yield support for key value observing.</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMResultSet.h</code></p>
- </div>
-
-
- </div>
- </div>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="n">resultDict</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultDict</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Key%20value%20coding%20magic"></a>
+ <a name="//apple_ref/objc/Section/Key value coding magic" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Key%20value%20coding%20magic"></a>
+ <h3 class="section-name"><p>Key value coding magic</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)kvcMagic:"></a>
+ <a name="//apple_ref/objc/Method/-kvcMagic:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)kvcMagic:">-kvcMagic:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs <code>setValue</code> to yield support for key value observing.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">kvcMagic</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">id</span><span class="p">)</span><span class="nv">object</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">kvcMagic</span><span class="p">(</span><span class="n">_</span> <span class="nv">object</span><span class="p">:</span> <span class="kt">Any</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>object</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The object for which the values will be set. This is the key-value-coding compliant object that you might, for example, observe.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Binding%20values"></a>
+ <a name="//apple_ref/objc/Section/Binding values" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Binding%20values"></a>
+ <h3 class="section-name"><p>Binding values</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)bindWithArray:"></a>
+ <a name="//apple_ref/objc/Method/-bindWithArray:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)bindWithArray:">-bindWithArray:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Bind array of values to prepared statement.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">bindWithArray</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">array</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bind</span><span class="p">(</span><span class="n">with</span> <span class="nv">array</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>array</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Array of values to bind to SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)bindWithDictionary:"></a>
+ <a name="//apple_ref/objc/Method/-bindWithDictionary:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)bindWithDictionary:">-bindWithDictionary:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Bind dictionary of values to prepared statement.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">bindWithDictionary</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSDictionary</span> <span class="o">*</span><span class="p">)</span><span class="nv">dictionary</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bind</span><span class="p">(</span><span class="n">with</span> <span class="nv">dictionary</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>dictionary</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Dictionary of values to bind to SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
</div>
- </div>
-
- </div>
-
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
+</html>
diff --git a/html/Classes/FMStatement.html b/html/Classes/FMStatement.html
index 5796db1..618c4b1 100644
--- a/html/Classes/FMStatement.html
+++ b/html/Classes/FMStatement.html
@@ -1,460 +1,465 @@
<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMStatement Class Reference</title>
-
- <link rel="stylesheet" href="../css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="../index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="../index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="../index.html">Index</a></li>
-<li><a href="../hierarchy.html">Hierarchy</a></li>
-
- <li id="on-this-page" role="navigation">
- <label>
- On This Page
-
- <div class="chevron">
- <div class="chevy chevron-left"></div>
- <div class="chevy chevron-right"></div>
- </div>
-
- <select id="jump-to">
- <option value="top">Jump To&#133;</option>
-
- <option value="overview">Overview</option>
-
-
-
-
- <option value="tasks">Tasks</option>
-
-
-
-
-
- <optgroup label="Properties">
-
- <option value="//api/name/inUse">inUse</option>
-
- <option value="//api/name/query">query</option>
-
- <option value="//api/name/statement">statement</option>
-
- <option value="//api/name/useCount">useCount</option>
-
- </optgroup>
-
-
-
-
-
- <optgroup label="Instance Methods">
-
- <option value="//api/name/close">- close</option>
-
- <option value="//api/name/reset">- reset</option>
-
- </optgroup>
-
-
-</select>
- </label>
- </li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview_contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMStatement Class Reference</h1>
-
-
- <div class="section section-specification"><table cellspacing="0"><tbody>
- <tr>
- <th>Inherits from</th>
- <td>NSObject</td>
-</tr><tr>
- <th>Declared in</th>
- <td>FMDatabase.h</td>
-</tr>
- </tbody></table></div>
-
-
-
-
- <div class="section section-overview">
- <a title="Overview" name="overview"></a>
- <h2 class="subtitle subtitle-overview">Overview</h2>
- <p>Objective-C wrapper for <code>sqlite3_stmt</code></p>
-
-<p>This is a wrapper for a SQLite <code>sqlite3_stmt</code>. Generally when using FMDB you will not need to interact directly with <code>FMStatement</code>, but rather with <a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a> and <a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a> only.</p>
-
-<h3>See also</h3>
+<html lang="en">
+ <head>
+ <title>FMStatement Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMStatement" class="dashAnchor"></a>
+ <a title="FMStatement Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMStatement Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMStatement</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMStatement</span> <span class="p">:</span> <span class="nc">NSObject</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="o">*</span><span class="n">_statement</span><span class="p">;</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">_query</span><span class="p">;</span>
+ <span class="kt">long</span> <span class="n">_useCount</span><span class="p">;</span>
+ <span class="n">BOOL</span> <span class="n">_inUse</span><span class="p">;</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <p>Objective-C wrapper for <code>sqlite3_stmt</code></p>
+
+<p>This is a wrapper for a SQLite <code>sqlite3_stmt</code> . Generally when using FMDB you will not need to interact directly with <code>FMStatement</code>, but rather with <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> and <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> only.</p>
+
+<p>See also</p>
<ul>
-<li><a href="../Classes/FMDatabase.html"><code>FMDatabase</code></a></li>
-<li><a href="../Classes/FMResultSet.html"><code>FMResultSet</code></a></li>
-<li><a href="http://www.sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code></a></li>
+<li><code><a href="../Classes/FMDatabase.html">FMDatabase</a></code></li>
+<li><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code></li>
+<li><a href="https://sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code> </a></li>
</ul>
- </div>
-
-
-
-
-
- <div class="section section-tasks">
- <a title="Tasks" name="tasks"></a>
-
-
- <a title="Properties" name="task_Properties"></a>
- <h2 class="task-title">Properties</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/useCount" title="useCount"></a>
- <h3 class="method-title"><code><a href="#//api/name/useCount">&nbsp;&nbsp;useCount</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Usage count</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) long useCount</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Usage count</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/query" title="query"></a>
- <h3 class="method-title"><code><a href="#//api/name/query">&nbsp;&nbsp;query</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>SQL statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, retain) NSString *query</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>SQL statement</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/statement" title="statement"></a>
- <h3 class="method-title"><code><a href="#//api/name/statement">&nbsp;&nbsp;statement</a></code>
-</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>SQLite sqlite3_stmt</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) void *statement</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>SQLite sqlite3_stmt</p>
- </div>
-
-
-
-
-
- <div class="method-subsection see-also-section">
- <h4 class="method-subtitle">See Also</h4>
- <ul>
-
- <li><code><p><a href="http://www.sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code></a></p></code></li>
-
- </ul>
- </div>
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/inUse" title="inUse"></a>
- <h3 class="method-title"><code><a href="#//api/name/inUse">&nbsp;&nbsp;inUse</a></code>
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_statement"></a>
+ <a name="//apple_ref/objc/Ivar/_statement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_statement">_statement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="kt">void</span> <span class="o">*</span><span class="n">_statement</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_query"></a>
+ <a name="//apple_ref/objc/Ivar/_query" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_query">_query</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">NSString</span> <span class="o">*</span><span class="n">_query</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_useCount"></a>
+ <a name="//apple_ref/objc/Ivar/_useCount" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_useCount">_useCount</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="kt">long</span> <span class="n">_useCount</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_inUse"></a>
+ <a name="//apple_ref/objc/Ivar/_inUse" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_inUse">_inUse</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">BOOL</span> <span class="n">_inUse</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Properties"></a>
+ <a name="//apple_ref/objc/Section/Properties" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Properties"></a>
+ <h3 class="section-name"><p>Properties</p>
</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)useCount"></a>
+ <a name="//apple_ref/objc/Property/useCount" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)useCount">useCount</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Usage count</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="kt">long</span> <span class="n">useCount</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">useCount</span><span class="p">:</span> <span class="kt">Int</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)query"></a>
+ <a name="//apple_ref/objc/Property/query" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)query">query</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>SQL statement</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">query</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">query</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)statement"></a>
+ <a name="//apple_ref/objc/Property/statement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)statement">statement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>SQLite sqlite3_stmt</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <a href="https://sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code> </a>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Indication of whether the statement is in use</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>@property (atomic, assign) BOOL inUse</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Indication of whether the statement is in use</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
</div>
- </div>
-
-
- <a title="Closing and Resetting" name="task_Closing and Resetting"></a>
- <h2 class="task-title">Closing and Resetting</h2>
-
- <div class="task-list">
- <div class="section-method">
- <a name="//api/name/close" title="close"></a>
- <h3 class="method-title"><code><a href="#//api/name/close">&ndash;&nbsp;close</a></code>
-</h3>
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Close statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)close</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Close statement</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
-</div><div class="section-method">
- <a name="//api/name/reset" title="reset"></a>
- <h3 class="method-title"><code><a href="#//api/name/reset">&ndash;&nbsp;reset</a></code>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">statement</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">statement</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)inUse"></a>
+ <a name="//apple_ref/objc/Property/inUse" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)inUse">inUse</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Indication of whether the statement is in use</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">inUse</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">inUse</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Closing%20and%20Resetting"></a>
+ <a name="//apple_ref/objc/Section/Closing and Resetting" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Closing%20and%20Resetting"></a>
+ <h3 class="section-name"><p>Closing and Resetting</p>
</h3>
-
- <div class="method-info">
- <div class="pointy-thing"></div>
-
- <div class="method-info-container">
-
-
- <div class="method-subsection brief-description">
- <p>Reset statement</p>
- </div>
-
-
-
- <div class="method-subsection method-declaration"><code>- (void)reset</code></div>
-
-
-
-
-
-
-
-
-
- <div class="method-subsection discussion-section">
- <h4 class="method-subtitle">Discussion</h4>
- <p>Reset statement</p>
- </div>
-
-
-
-
-
-
-
- <div class="method-subsection declared-in-section">
- <h4 class="method-subtitle">Declared In</h4>
- <p><code class="declared-in-ref">FMDatabase.h</code></p>
- </div>
-
-
- </div>
- </div>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close statement</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(im)reset"></a>
+ <a name="//apple_ref/objc/Method/-reset" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(im)reset">-reset</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Reset statement</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">reset</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">reset</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
</div>
- </div>
-
- </div>
-
-
-
-
-
-
- </main>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </div>
- </div>
- </article>
-
- <script src="../js/script.js"></script>
-</body>
-</html> \ No newline at end of file
+</html>
diff --git a/html/Constants.html b/html/Constants.html
new file mode 100644
index 0000000..3471234
--- /dev/null
+++ b/html/Constants.html
@@ -0,0 +1,172 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Constants Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Constants" class="dashAnchor"></a>
+ <a title="Constants Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Constants Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Constants</h1>
+ <p>The following constants are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@FMDBVersionNumber"></a>
+ <a name="//apple_ref/objc/Constant/FMDBVersionNumber" class="dashAnchor"></a>
+ <a class="token" href="#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FOUNDATION_EXPORT</span> <span class="kt">double</span> <span class="n">FMDBVersionNumber</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">FMDBVersionNumber</span><span class="p">:</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@FMDBVersionString"></a>
+ <a name="//apple_ref/objc/Constant/FMDBVersionString" class="dashAnchor"></a>
+ <a class="token" href="#/c:@FMDBVersionString">FMDBVersionString</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FOUNDATION_EXPORT</span> <span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="n">FMDBVersionString</span><span class="p">[]</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/Enums.html b/html/Enums.html
new file mode 100644
index 0000000..6da8b95
--- /dev/null
+++ b/html/Enums.html
@@ -0,0 +1,185 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Enumerations Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Enumerations" class="dashAnchor"></a>
+ <a title="Enumerations Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Enumerations Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Enumerations</h1>
+ <p>The following enumerations are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode"></a>
+ <a name="//apple_ref/objc/Enum/FMDBCheckpointMode" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode">FMDBCheckpointMode</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Enumeration used in checkpoint methods.</p>
+
+ <a href="Enums/FMDBCheckpointMode.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">enum</span> <span class="n">FMDBCheckpointMode</span> <span class="p">{}</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">enum</span> <span class="kt">FMDBCheckpointMode</span> <span class="p">:</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType"></a>
+ <a name="//apple_ref/objc/Enum/SqliteValueType" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType">SqliteValueType</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ <a href="Enums/SqliteValueType.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">NS_ENUM</span><span class="p">(</span><span class="kt">int</span><span class="p">,</span> <span class="n">SqliteValueType</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">SqliteValueTypeInteger</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeFloat</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeText</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeBlob</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeNull</span> <span class="o">=</span> <span class="mi">5</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">enum</span> <span class="kt">SqliteValueType</span> <span class="p">:</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/Enums/FMDBCheckpointMode.html b/html/Enums/FMDBCheckpointMode.html
new file mode 100644
index 0000000..afc4e2c
--- /dev/null
+++ b/html/Enums/FMDBCheckpointMode.html
@@ -0,0 +1,247 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMDBCheckpointMode Enumeration Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Enum/FMDBCheckpointMode" class="dashAnchor"></a>
+ <a title="FMDBCheckpointMode Enumeration Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDBCheckpointMode Enumeration Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDBCheckpointMode</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">enum</span> <span class="n">FMDBCheckpointMode</span> <span class="p">{}</span></code></pre>
+
+ </div>
+ </div>
+ <p>Enumeration used in checkpoint methods.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModePassive"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModePassive" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModePassive">FMDBCheckpointModePassive</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModePassive</span> <span class="o">=</span> <span class="mi">0</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">passive</span> <span class="o">=</span> <span class="mi">0</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModeFull"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModeFull" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeFull">FMDBCheckpointModeFull</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModeFull</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">full</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModeRestart"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModeRestart" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeRestart">FMDBCheckpointModeRestart</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModeRestart</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">restart</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModeTruncate"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModeTruncate" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeTruncate">FMDBCheckpointModeTruncate</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModeTruncate</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">truncate</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/Enums/SqliteValueType.html b/html/Enums/SqliteValueType.html
new file mode 100644
index 0000000..cf5fd14
--- /dev/null
+++ b/html/Enums/SqliteValueType.html
@@ -0,0 +1,285 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>SqliteValueType Enumeration Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Enum/SqliteValueType" class="dashAnchor"></a>
+ <a title="SqliteValueType Enumeration Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ SqliteValueType Enumeration Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>SqliteValueType</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="n">NS_ENUM</span><span class="p">(</span><span class="kt">int</span><span class="p">,</span> <span class="n">SqliteValueType</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">SqliteValueTypeInteger</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeFloat</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeText</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeBlob</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeNull</span> <span class="o">=</span> <span class="mi">5</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <p>Undocumented</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeInteger"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeInteger" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeInteger">SqliteValueTypeInteger</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeInteger</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">integer</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeFloat"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeFloat" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeFloat">SqliteValueTypeFloat</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeFloat</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">float</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeText"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeText" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeText">SqliteValueTypeText</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeText</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">text</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeBlob"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeBlob" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeBlob">SqliteValueTypeBlob</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeBlob</span> <span class="o">=</span> <span class="mi">4</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">blob</span> <span class="o">=</span> <span class="mi">4</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeNull"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeNull" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeNull">SqliteValueTypeNull</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeNull</span> <span class="o">=</span> <span class="mi">5</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">null</span> <span class="o">=</span> <span class="mi">5</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/Type Definitions.html b/html/Type Definitions.html
new file mode 100644
index 0000000..c81400f
--- /dev/null
+++ b/html/Type Definitions.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Type Definitions Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Type Definitions" class="dashAnchor"></a>
+ <a title="Type Definitions Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Type Definitions Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Type Definitions</h1>
+ <p>The following type definitions are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock"></a>
+ <a name="//apple_ref/objc/Type/FMDBExecuteStatementsCallbackBlock" class="dashAnchor"></a>
+ <a class="token" href="#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Callback block used by <code>executeStatements:withResultBlock:</code></p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">typedef</span> <span class="kt">int</span> <span class="p">(</span><span class="o">^</span><span class="n">FMDBExecuteStatementsCallbackBlock</span><span class="p">)(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">)</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">typealias</span> <span class="kt">FMDBExecuteStatementsCallbackBlock</span> <span class="o">=</span> <span class="p">([</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/badge.svg b/html/badge.svg
new file mode 100644
index 0000000..b28dab6
--- /dev/null
+++ b/html/badge.svg
@@ -0,0 +1,28 @@
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="20">
+ <linearGradient id="b" x2="0" y2="100%">
+ <stop offset="0" stop-color="#bbb" stop-opacity=".1"/>
+ <stop offset="1" stop-opacity=".1"/>
+ </linearGradient>
+ <clipPath id="a">
+ <rect width="128" height="20" rx="3" fill="#fff"/>
+ </clipPath>
+ <g clip-path="url(#a)">
+ <path fill="#555" d="M0 0h93v20H0z"/>
+ <path fill="#97CA00" d="M93 0h35v20H93z"/>
+ <path fill="url(#b)" d="M0 0h128v20H0z"/>
+ </g>
+ <g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="110">
+ <text x="475" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="830">
+ documentation
+ </text>
+ <text x="475" y="140" transform="scale(.1)" textLength="830">
+ documentation
+ </text>
+ <text x="1095" y="150" fill="#010101" fill-opacity=".3" transform="scale(.1)" textLength="250">
+ 89%
+ </text>
+ <text x="1095" y="140" transform="scale(.1)" textLength="250">
+ 89%
+ </text>
+ </g>
+</svg>
diff --git a/html/css/highlight.css b/html/css/highlight.css
new file mode 100644
index 0000000..d0db0e1
--- /dev/null
+++ b/html/css/highlight.css
@@ -0,0 +1,200 @@
+/* Credit to https://gist.github.com/wataru420/2048287 */
+.highlight {
+ /* Comment */
+ /* Error */
+ /* Keyword */
+ /* Operator */
+ /* Comment.Multiline */
+ /* Comment.Preproc */
+ /* Comment.Single */
+ /* Comment.Special */
+ /* Generic.Deleted */
+ /* Generic.Deleted.Specific */
+ /* Generic.Emph */
+ /* Generic.Error */
+ /* Generic.Heading */
+ /* Generic.Inserted */
+ /* Generic.Inserted.Specific */
+ /* Generic.Output */
+ /* Generic.Prompt */
+ /* Generic.Strong */
+ /* Generic.Subheading */
+ /* Generic.Traceback */
+ /* Keyword.Constant */
+ /* Keyword.Declaration */
+ /* Keyword.Pseudo */
+ /* Keyword.Reserved */
+ /* Keyword.Type */
+ /* Literal.Number */
+ /* Literal.String */
+ /* Name.Attribute */
+ /* Name.Builtin */
+ /* Name.Class */
+ /* Name.Constant */
+ /* Name.Entity */
+ /* Name.Exception */
+ /* Name.Function */
+ /* Name.Namespace */
+ /* Name.Tag */
+ /* Name.Variable */
+ /* Operator.Word */
+ /* Text.Whitespace */
+ /* Literal.Number.Float */
+ /* Literal.Number.Hex */
+ /* Literal.Number.Integer */
+ /* Literal.Number.Oct */
+ /* Literal.String.Backtick */
+ /* Literal.String.Char */
+ /* Literal.String.Doc */
+ /* Literal.String.Double */
+ /* Literal.String.Escape */
+ /* Literal.String.Heredoc */
+ /* Literal.String.Interpol */
+ /* Literal.String.Other */
+ /* Literal.String.Regex */
+ /* Literal.String.Single */
+ /* Literal.String.Symbol */
+ /* Name.Builtin.Pseudo */
+ /* Name.Variable.Class */
+ /* Name.Variable.Global */
+ /* Name.Variable.Instance */
+ /* Literal.Number.Integer.Long */ }
+ .highlight .c {
+ color: #999988;
+ font-style: italic; }
+ .highlight .err {
+ color: #a61717;
+ background-color: #e3d2d2; }
+ .highlight .k {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .o {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .cm {
+ color: #999988;
+ font-style: italic; }
+ .highlight .cp {
+ color: #999999;
+ font-weight: bold; }
+ .highlight .c1 {
+ color: #999988;
+ font-style: italic; }
+ .highlight .cs {
+ color: #999999;
+ font-weight: bold;
+ font-style: italic; }
+ .highlight .gd {
+ color: #000000;
+ background-color: #ffdddd; }
+ .highlight .gd .x {
+ color: #000000;
+ background-color: #ffaaaa; }
+ .highlight .ge {
+ color: #000000;
+ font-style: italic; }
+ .highlight .gr {
+ color: #aa0000; }
+ .highlight .gh {
+ color: #999999; }
+ .highlight .gi {
+ color: #000000;
+ background-color: #ddffdd; }
+ .highlight .gi .x {
+ color: #000000;
+ background-color: #aaffaa; }
+ .highlight .go {
+ color: #888888; }
+ .highlight .gp {
+ color: #555555; }
+ .highlight .gs {
+ font-weight: bold; }
+ .highlight .gu {
+ color: #aaaaaa; }
+ .highlight .gt {
+ color: #aa0000; }
+ .highlight .kc {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kd {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kp {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kr {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kt {
+ color: #445588; }
+ .highlight .m {
+ color: #009999; }
+ .highlight .s {
+ color: #d14; }
+ .highlight .na {
+ color: #008080; }
+ .highlight .nb {
+ color: #0086B3; }
+ .highlight .nc {
+ color: #445588;
+ font-weight: bold; }
+ .highlight .no {
+ color: #008080; }
+ .highlight .ni {
+ color: #800080; }
+ .highlight .ne {
+ color: #990000;
+ font-weight: bold; }
+ .highlight .nf {
+ color: #990000; }
+ .highlight .nn {
+ color: #555555; }
+ .highlight .nt {
+ color: #000080; }
+ .highlight .nv {
+ color: #008080; }
+ .highlight .ow {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .w {
+ color: #bbbbbb; }
+ .highlight .mf {
+ color: #009999; }
+ .highlight .mh {
+ color: #009999; }
+ .highlight .mi {
+ color: #009999; }
+ .highlight .mo {
+ color: #009999; }
+ .highlight .sb {
+ color: #d14; }
+ .highlight .sc {
+ color: #d14; }
+ .highlight .sd {
+ color: #d14; }
+ .highlight .s2 {
+ color: #d14; }
+ .highlight .se {
+ color: #d14; }
+ .highlight .sh {
+ color: #d14; }
+ .highlight .si {
+ color: #d14; }
+ .highlight .sx {
+ color: #d14; }
+ .highlight .sr {
+ color: #009926; }
+ .highlight .s1 {
+ color: #d14; }
+ .highlight .ss {
+ color: #990073; }
+ .highlight .bp {
+ color: #999999; }
+ .highlight .vc {
+ color: #008080; }
+ .highlight .vg {
+ color: #008080; }
+ .highlight .vi {
+ color: #008080; }
+ .highlight .il {
+ color: #009999; }
diff --git a/html/css/jazzy.css b/html/css/jazzy.css
new file mode 100644
index 0000000..c3090c0
--- /dev/null
+++ b/html/css/jazzy.css
@@ -0,0 +1,374 @@
+html, body, div, span, h1, h3, h4, p, a, code, em, img, ul, li, table, tbody, tr, td {
+ background: transparent;
+ border: 0;
+ margin: 0;
+ outline: 0;
+ padding: 0;
+ vertical-align: baseline; }
+
+body {
+ background-color: #f2f2f2;
+ font-family: Helvetica, freesans, Arial, sans-serif;
+ font-size: 14px;
+ -webkit-font-smoothing: subpixel-antialiased;
+ word-wrap: break-word; }
+
+h1, h2, h3 {
+ margin-top: 0.8em;
+ margin-bottom: 0.3em;
+ font-weight: 100;
+ color: black; }
+
+h1 {
+ font-size: 2.5em; }
+
+h2 {
+ font-size: 2em;
+ border-bottom: 1px solid #e2e2e2; }
+
+h4 {
+ font-size: 13px;
+ line-height: 1.5;
+ margin-top: 21px; }
+
+h5 {
+ font-size: 1.1em; }
+
+h6 {
+ font-size: 1.1em;
+ color: #777; }
+
+.section-name {
+ color: gray;
+ display: block;
+ font-family: Helvetica;
+ font-size: 22px;
+ font-weight: 100;
+ margin-bottom: 15px; }
+
+pre, code {
+ font: 0.95em Menlo, monospace;
+ color: #777;
+ word-wrap: normal; }
+
+p code, li code {
+ background-color: #eee;
+ padding: 2px 4px;
+ border-radius: 4px; }
+
+a {
+ color: #0088cc;
+ text-decoration: none; }
+
+ul {
+ padding-left: 15px; }
+
+li {
+ line-height: 1.8em; }
+
+img {
+ max-width: 100%; }
+
+blockquote {
+ margin-left: 0;
+ padding: 0 10px;
+ border-left: 4px solid #ccc; }
+
+.content-wrapper {
+ margin: 0 auto;
+ width: 980px; }
+
+header {
+ font-size: 0.85em;
+ line-height: 26px;
+ background-color: #414141;
+ position: fixed;
+ width: 100%;
+ z-index: 2; }
+ header img {
+ padding-right: 6px;
+ vertical-align: -4px;
+ height: 16px; }
+ header a {
+ color: #fff; }
+ header p {
+ float: left;
+ color: #999; }
+ header .header-right {
+ float: right;
+ margin-left: 16px; }
+
+#breadcrumbs {
+ background-color: #f2f2f2;
+ height: 27px;
+ padding-top: 17px;
+ position: fixed;
+ width: 100%;
+ z-index: 2;
+ margin-top: 26px; }
+ #breadcrumbs #carat {
+ height: 10px;
+ margin: 0 5px; }
+
+.sidebar {
+ background-color: #f9f9f9;
+ border: 1px solid #e2e2e2;
+ overflow-y: auto;
+ overflow-x: hidden;
+ position: fixed;
+ top: 70px;
+ bottom: 0;
+ width: 230px;
+ word-wrap: normal; }
+
+.nav-groups {
+ list-style-type: none;
+ background: #fff;
+ padding-left: 0; }
+
+.nav-group-name {
+ border-bottom: 1px solid #e2e2e2;
+ font-size: 1.1em;
+ font-weight: 100;
+ padding: 15px 0 15px 20px; }
+ .nav-group-name > a {
+ color: #333; }
+
+.nav-group-tasks {
+ margin-top: 5px; }
+
+.nav-group-task {
+ font-size: 0.9em;
+ list-style-type: none;
+ white-space: nowrap; }
+ .nav-group-task a {
+ color: #888; }
+
+.main-content {
+ background-color: #fff;
+ border: 1px solid #e2e2e2;
+ margin-left: 246px;
+ position: absolute;
+ overflow: hidden;
+ padding-bottom: 20px;
+ top: 70px;
+ width: 734px; }
+ .main-content p, .main-content a, .main-content code, .main-content em, .main-content ul, .main-content table, .main-content blockquote {
+ margin-bottom: 1em; }
+ .main-content p {
+ line-height: 1.8em; }
+ .main-content section .section:first-child {
+ margin-top: 0;
+ padding-top: 0; }
+ .main-content section .task-group-section .task-group:first-of-type {
+ padding-top: 10px; }
+ .main-content section .task-group-section .task-group:first-of-type .section-name {
+ padding-top: 15px; }
+ .main-content section .heading:before {
+ content: "";
+ display: block;
+ padding-top: 70px;
+ margin: -70px 0 0; }
+ .main-content .section-name p {
+ margin-bottom: inherit;
+ line-height: inherit; }
+ .main-content .section-name code {
+ background-color: inherit;
+ padding: inherit;
+ color: inherit; }
+
+.section {
+ padding: 0 25px; }
+
+.highlight {
+ background-color: #eee;
+ padding: 10px 12px;
+ border: 1px solid #e2e2e2;
+ border-radius: 4px;
+ overflow-x: auto; }
+
+.declaration .highlight {
+ overflow-x: initial;
+ padding: 0 40px 40px 0;
+ margin-bottom: -25px;
+ background-color: transparent;
+ border: none; }
+
+.section-name {
+ margin: 0;
+ margin-left: 18px; }
+
+.task-group-section {
+ padding-left: 6px;
+ border-top: 1px solid #e2e2e2; }
+
+.task-group {
+ padding-top: 0px; }
+
+.task-name-container a[name]:before {
+ content: "";
+ display: block;
+ padding-top: 70px;
+ margin: -70px 0 0; }
+
+.section-name-container {
+ position: relative;
+ display: inline-block; }
+ .section-name-container .section-name-link {
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ margin-bottom: 0; }
+ .section-name-container .section-name {
+ position: relative;
+ pointer-events: none;
+ z-index: 1; }
+ .section-name-container .section-name a {
+ pointer-events: auto; }
+
+.item {
+ padding-top: 8px;
+ width: 100%;
+ list-style-type: none; }
+ .item a[name]:before {
+ content: "";
+ display: block;
+ padding-top: 70px;
+ margin: -70px 0 0; }
+ .item code {
+ background-color: transparent;
+ padding: 0; }
+ .item .token, .item .direct-link {
+ display: inline-block;
+ text-indent: -20px;
+ padding-left: 3px;
+ margin-left: 35px;
+ font-size: 11.9px;
+ transition: all 300ms; }
+ .item .token-open {
+ margin-left: 20px; }
+ .item .discouraged {
+ text-decoration: line-through; }
+ .item .declaration-note {
+ font-size: .85em;
+ color: gray;
+ font-style: italic; }
+
+.pointer-container {
+ border-bottom: 1px solid #e2e2e2;
+ left: -23px;
+ padding-bottom: 13px;
+ position: relative;
+ width: 110%; }
+
+.pointer {
+ background: #f9f9f9;
+ border-left: 1px solid #e2e2e2;
+ border-top: 1px solid #e2e2e2;
+ height: 12px;
+ left: 21px;
+ top: -7px;
+ -webkit-transform: rotate(45deg);
+ -moz-transform: rotate(45deg);
+ -o-transform: rotate(45deg);
+ transform: rotate(45deg);
+ position: absolute;
+ width: 12px; }
+
+.height-container {
+ display: none;
+ left: -25px;
+ padding: 0 25px;
+ position: relative;
+ width: 100%;
+ overflow: hidden; }
+ .height-container .section {
+ background: #f9f9f9;
+ border-bottom: 1px solid #e2e2e2;
+ left: -25px;
+ position: relative;
+ width: 100%;
+ padding-top: 10px;
+ padding-bottom: 5px; }
+
+.aside, .language {
+ padding: 6px 12px;
+ margin: 12px 0;
+ border-left: 5px solid #dddddd;
+ overflow-y: hidden; }
+ .aside .aside-title, .language .aside-title {
+ font-size: 9px;
+ letter-spacing: 2px;
+ text-transform: uppercase;
+ padding-bottom: 0;
+ margin: 0;
+ color: #aaa;
+ -webkit-user-select: none; }
+ .aside p:last-child, .language p:last-child {
+ margin-bottom: 0; }
+
+.language {
+ border-left: 5px solid #cde9f4; }
+ .language .aside-title {
+ color: #4b8afb; }
+
+.aside-warning, .aside-deprecated, .aside-unavailable {
+ border-left: 5px solid #ff6666; }
+ .aside-warning .aside-title, .aside-deprecated .aside-title, .aside-unavailable .aside-title {
+ color: #ff0000; }
+
+.graybox {
+ border-collapse: collapse;
+ width: 100%; }
+ .graybox p {
+ margin: 0;
+ word-break: break-word;
+ min-width: 50px; }
+ .graybox td {
+ border: 1px solid #e2e2e2;
+ padding: 5px 25px 5px 10px;
+ vertical-align: middle; }
+ .graybox tr td:first-of-type {
+ text-align: right;
+ padding: 7px;
+ vertical-align: top;
+ word-break: normal;
+ width: 40px; }
+
+.slightly-smaller {
+ font-size: 0.9em; }
+
+#footer {
+ position: relative;
+ top: 10px;
+ bottom: 0px;
+ margin-left: 25px; }
+ #footer p {
+ margin: 0;
+ color: #aaa;
+ font-size: 0.8em; }
+
+html.dash header, html.dash #breadcrumbs, html.dash .sidebar {
+ display: none; }
+
+html.dash .main-content {
+ width: 980px;
+ margin-left: 0;
+ border: none;
+ width: 100%;
+ top: 0;
+ padding-bottom: 0; }
+
+html.dash .height-container {
+ display: block; }
+
+html.dash .item .token {
+ margin-left: 0; }
+
+html.dash .content-wrapper {
+ width: auto; }
+
+html.dash #footer {
+ position: static; }
diff --git a/html/css/scss/_index.scss b/html/css/scss/_index.scss
deleted file mode 100644
index 6a57ec5..0000000
--- a/html/css/scss/_index.scss
+++ /dev/null
@@ -1,17 +0,0 @@
-.index-container {
- -webkit-flex-direction: column;
- flex-direction: column;
-
- @media (min-width: $desktop-min-width) {
- display: flex;
- -webkit-flex-direction: row;
- flex-direction: row;
- -webkit-flex-wrap: wrap;
- flex-wrap: wrap;
- }
-
- .index-column {
- -webkit-flex: 1 1 33%;
- flex: 1 1 33%;
- }
-}
diff --git a/html/css/scss/_layout.scss b/html/css/scss/_layout.scss
deleted file mode 100644
index da46aef..0000000
--- a/html/css/scss/_layout.scss
+++ /dev/null
@@ -1,302 +0,0 @@
-* {
- box-sizing: border-box;
-}
-
-.clear {
- clear: both;
-}
-
-.clearfix {
- &:before, &:after {
- clear: both;
- display: table;
- content: "";
- }
-}
-
-.xcode .hide-in-xcode {
- display: none;
-}
-
-body {
- font: 62.5% $body-font;
- background: $body-background;
-
- @media (max-width: $mobile-max-width) {
- background-color: $content-background;
- }
-}
-
-h1, h2, h3 {
- font-weight: 300;
- color: #808080;
-}
-
-h1 {
- font-size: 2em;
- color: #000;
-}
-
-h4 {
- font-size: 13px;
- line-height: 1.5;
- margin: 21px 0 0 0;
-}
-
-a {
- color: $tint-color;
- text-decoration: none;
-}
-
-pre, code {
- font-family: $code-font;
- word-wrap: break-word;
-}
-
-pre > code, .method-declaration code {
- display: inline-block;
- font-size: .85em;
- padding: 4px 0 4px 10px;
- border-left: 5px solid rgba(0, 155, 51, .2);
-
- &:before {
- content: "Objective-C";
- display: block;
-
- font: 9px/1 $body-font;
- color: #009b33;
- text-transform: uppercase;
- letter-spacing: 2px;
- padding-bottom: 6px;
- }
-}
-
-pre > code {
- font-size: inherit;
-}
-
-table, th, td {
- border: 1px solid #e9e9e9;
-}
-
-table {
- width: 100%;
-}
-
-th, td {
- padding: 7px;
-
- > :first-child {
- margin-top: 0;
- }
-
- > :last-child {
- margin-bottom: 0;
- }
-}
-
-.container {
- @extend .clearfix;
-
- max-width: 980px;
- padding: 0 10px;
- margin: 0 auto;
-
- @media (max-width: $mobile-max-width) {
- padding: 0;
- }
-}
-
-header {
- position: fixed;
- top: 0;
- left: 0;
- width: 100%;
- z-index: 2;
-
- background: #414141;
- color: #fff;
- font-size: 1.1em;
- line-height: 25px;
- letter-spacing: .05em;
-
- #library-title {
- float: left;
- }
-
- #developer-home {
- float: right;
- }
-
- h1 {
- font-size: inherit;
- font-weight: inherit;
- margin: 0;
- }
-
- p {
- margin: 0;
- }
-
- h1, a {
- color: inherit;
- }
-
- @media (max-width: $mobile-max-width) {
- .container {
- padding: 0 10px;
- }
- }
-}
-
-aside {
- position: fixed;
- top: 25px;
- left: 0;
- width: 100%;
- height: 25px;
- z-index: 2;
-
- font-size: 1.1em;
-
- #header-buttons {
- background: rgba(255, 255, 255, .8);
- margin: 0 1px;
- padding: 0;
- list-style: none;
- text-align: right;
- line-height: 32px;
-
- li {
- display: inline-block;
- cursor: pointer;
- padding: 0 10px;
- }
-
- label, select {
- cursor: inherit;
- }
-
- #on-this-page {
- position: relative;
-
- .chevron {
- display: inline-block;
- width: 14px;
- height: 4px;
- position: relative;
-
- .chevy {
- background: #878787;
- height: 2px;
- position: absolute;
- width: 10px;
-
- &.chevron-left {
- left: 0;
- transform: rotateZ(45deg) scale(0.6);
- }
-
- &.chevron-right {
- right: 0;
- transform: rotateZ(-45deg) scale(0.6);
- }
- }
- }
-
- #jump-to {
- opacity: 0;
- font-size: 16px;
-
- position: absolute;
- top: 5px;
- left: 0;
- width: 100%;
- height: 100%;
- }
- }
- }
-}
-
-article {
- margin-top: 25px;
-
- #content {
- @extend .clearfix;
-
- background: $content-background;
- border: 1px solid $content-border;
- padding: 15px 25px 30px 25px;
-
- font-size: 1.4em;
- line-height: 1.45;
-
- position: relative;
-
- @media (max-width: $mobile-max-width) {
- padding: 15px 10px 20px 10px;
- border: none;
- }
-
- .navigation-top {
- position: absolute;
- top: 15px;
- right: 25px;
- }
-
- .title {
- margin: 21px 0 0 0;
- padding: 15px 0;
- }
-
- p {
- color: #414141;
- margin: 0 0 15px 0;
- }
-
- th, td {
- p:last-child {
- margin-bottom: 0;
- }
- }
-
- main {
- ul {
- list-style: none;
- margin-left: 24px;
- margin-bottom: 12px;
- padding: 0;
-
- li {
- position: relative;
- padding-left: 1.3em;
-
- &:before {
- content: "\02022";
-
- color: #414141;
- font-size: 1.08em;
- line-height: 1;
-
- position: absolute;
- left: 0;
- padding-top: 2px;
- }
- }
- }
- }
-
- footer {
- @extend .clearfix;
-
- .footer-copyright {
- margin: 70px 25px 10px 0;
- }
-
- p {
- font-size: .71em;
- color: #a0a0a0;
- }
- }
- }
-}
diff --git a/html/css/scss/_normalize.scss b/html/css/scss/_normalize.scss
deleted file mode 100644
index 9b8848a..0000000
--- a/html/css/scss/_normalize.scss
+++ /dev/null
@@ -1,581 +0,0 @@
-/* ==========================================================================
- Normalize.scss settings
- ========================================================================== */
-/**
- * Includes legacy browser support IE6/7
- *
- * Set to false if you want to drop support for IE6 and IE7
- */
-
-$legacy_browser_support: false !default;
-
-/* Base
- ========================================================================== */
-
-/**
- * 1. Set default font family to sans-serif.
- * 2. Prevent iOS text size adjust after orientation change, without disabling
- * user zoom.
- * 3. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
- * `em` units.
- */
-
-html {
- font-family: sans-serif; /* 1 */
- -ms-text-size-adjust: 100%; /* 2 */
- -webkit-text-size-adjust: 100%; /* 2 */
- @if $legacy_browser_support {
- *font-size: 100%; /* 3 */
- }
-}
-
-/**
- * Remove default margin.
- */
-
-body {
- margin: 0;
-}
-
-/* HTML5 display definitions
- ========================================================================== */
-
-/**
- * Correct `block` display not defined for any HTML5 element in IE 8/9.
- * Correct `block` display not defined for `details` or `summary` in IE 10/11
- * and Firefox.
- * Correct `block` display not defined for `main` in IE 11.
- */
-
-article,
-aside,
-details,
-figcaption,
-figure,
-footer,
-header,
-hgroup,
-main,
-menu,
-nav,
-section,
-summary {
- display: block;
-}
-
-/**
- * 1. Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
- * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
- */
-
-audio,
-canvas,
-progress,
-video {
- display: inline-block; /* 1 */
- vertical-align: baseline; /* 2 */
- @if $legacy_browser_support {
- *display: inline;
- *zoom: 1;
- }
-}
-
-/**
- * Prevents modern browsers from displaying `audio` without controls.
- * Remove excess height in iOS 5 devices.
- */
-
-audio:not([controls]) {
- display: none;
- height: 0;
-}
-
-/**
- * Address `[hidden]` styling not present in IE 8/9/10.
- * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
- */
-
-[hidden],
-template {
- display: none;
-}
-
-/* Links
- ========================================================================== */
-
-/**
- * Remove the gray background color from active links in IE 10.
- */
-
-a {
- background-color: transparent;
-}
-
-/**
- * Improve readability when focused and also mouse hovered in all browsers.
- */
-
-a {
- &:active, &:hover {
- outline: 0;
- };
-}
-
-/* Text-level semantics
- ========================================================================== */
-
-/**
- * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
- */
-
-abbr[title] {
- border-bottom: 1px dotted;
-}
-
-/**
- * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
- */
-
-b,
-strong {
- font-weight: bold;
-}
-
-@if $legacy_browser_support {
- blockquote {
- margin: 1em 40px;
- }
-}
-
-/**
- * Address styling not present in Safari and Chrome.
- */
-
-dfn {
- font-style: italic;
-}
-
-/**
- * Address variable `h1` font-size and margin within `section` and `article`
- * contexts in Firefox 4+, Safari, and Chrome.
- */
-
-h1 {
- font-size: 2em;
- margin: 0.67em 0;
-}
-
-@if $legacy_browser_support {
- h2 {
- font-size: 1.5em;
- margin: 0.83em 0;
- }
-
- h3 {
- font-size: 1.17em;
- margin: 1em 0;
- }
-
- h4 {
- font-size: 1em;
- margin: 1.33em 0;
- }
-
- h5 {
- font-size: 0.83em;
- margin: 1.67em 0;
- }
-
- h6 {
- font-size: 0.67em;
- margin: 2.33em 0;
- }
-}
-
-/**
- * Addresses styling not present in IE 8/9.
- */
-
-mark {
- background: #ff0;
- color: #000;
-}
-
-@if $legacy_browser_support {
-
- /**
- * Addresses margins set differently in IE 6/7.
- */
-
- p,
- pre {
- *margin: 1em 0;
- }
-
- /*
- * Addresses CSS quotes not supported in IE 6/7.
- */
-
- q {
- *quotes: none;
- }
-
- /*
- * Addresses `quotes` property not supported in Safari 4.
- */
-
- q:before,
- q:after {
- content: '';
- content: none;
- }
-}
-
-/**
- * Address inconsistent and variable font size in all browsers.
- */
-
-small {
- font-size: 80%;
-}
-
-/**
- * Prevent `sub` and `sup` affecting `line-height` in all browsers.
- */
-
-sub,
-sup {
- font-size: 75%;
- line-height: 0;
- position: relative;
- vertical-align: baseline;
-}
-
-sup {
- top: -0.5em;
-}
-
-sub {
- bottom: -0.25em;
-}
-
-@if $legacy_browser_support {
-
- /* ==========================================================================
- Lists
- ========================================================================== */
-
- /*
- * Addresses margins set differently in IE 6/7.
- */
-
- dl,
- menu,
- ol,
- ul {
- *margin: 1em 0;
- }
-
- dd {
- *margin: 0 0 0 40px;
- }
-
- /*
- * Addresses paddings set differently in IE 6/7.
- */
-
- menu,
- ol,
- ul {
- *padding: 0 0 0 40px;
- }
-
- /*
- * Corrects list images handled incorrectly in IE 7.
- */
-
- nav ul,
- nav ol {
- *list-style: none;
- *list-style-image: none;
- }
-
-}
-
-/* Embedded content
- ========================================================================== */
-
-/**
- * 1. Remove border when inside `a` element in IE 8/9/10.
- * 2. Improves image quality when scaled in IE 7.
- */
-
-img {
- border: 0;
- @if $legacy_browser_support {
- *-ms-interpolation-mode: bicubic; /* 2 */
- }
-}
-
-/**
- * Correct overflow not hidden in IE 9/10/11.
- */
-
-svg:not(:root) {
- overflow: hidden;
-}
-
-/* Grouping content
- ========================================================================== */
-
-/**
- * Address margin not present in IE 8/9 and Safari.
- */
-
-figure {
- margin: 1em 40px;
-}
-
-/**
- * Address differences between Firefox and other browsers.
- */
-
-hr {
- -moz-box-sizing: content-box;
- box-sizing: content-box;
- height: 0;
-}
-
-/**
- * Contain overflow in all browsers.
- */
-
-pre {
- overflow: auto;
-}
-
-/**
- * Address odd `em`-unit font size rendering in all browsers.
- * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
- */
-
-code,
-kbd,
-pre,
-samp {
- font-family: monospace, monospace;
- @if $legacy_browser_support {
- _font-family: 'courier new', monospace;
- }
- font-size: 1em;
-}
-
-/* Forms
- ========================================================================== */
-
-/**
- * Known limitation: by default, Chrome and Safari on OS X allow very limited
- * styling of `select`, unless a `border` property is set.
- */
-
-/**
- * 1. Correct color not being inherited.
- * Known issue: affects color of disabled elements.
- * 2. Correct font properties not being inherited.
- * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
- * 4. Improves appearance and consistency in all browsers.
- */
-
-button,
-input,
-optgroup,
-select,
-textarea {
- color: inherit; /* 1 */
- font: inherit; /* 2 */
- margin: 0; /* 3 */
- @if $legacy_browser_support {
- vertical-align: baseline; /* 3 */
- *vertical-align: middle; /* 3 */
- }
-}
-
-/**
- * Address `overflow` set to `hidden` in IE 8/9/10/11.
- */
-
-button {
- overflow: visible;
-}
-
-/**
- * Address inconsistent `text-transform` inheritance for `button` and `select`.
- * All other form control elements do not inherit `text-transform` values.
- * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
- * Correct `select` style inheritance in Firefox.
- */
-
-button,
-select {
- text-transform: none;
-}
-
-/**
- * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
- * and `video` controls.
- * 2. Correct inability to style clickable `input` types in iOS.
- * 3. Improve usability and consistency of cursor style between image-type
- * `input` and others.
- * 4. Removes inner spacing in IE 7 without affecting normal text inputs.
- * Known issue: inner spacing remains in IE 6.
- */
-
-button,
-html input[type="button"], /* 1 */
-input[type="reset"],
-input[type="submit"] {
- -webkit-appearance: button; /* 2 */
- cursor: pointer; /* 3 */
- @if $legacy_browser_support {
- *overflow: visible; /* 4 */
- }
-}
-
-/**
- * Re-set default cursor for disabled elements.
- */
-
-button[disabled],
-html input[disabled] {
- cursor: default;
-}
-
-/**
- * Remove inner padding and border in Firefox 4+.
- */
-
-button::-moz-focus-inner,
-input::-moz-focus-inner {
- border: 0;
- padding: 0;
-}
-
-/**
- * Address Firefox 4+ setting `line-height` on `input` using `!important` in
- * the UA stylesheet.
- */
-
-input {
- line-height: normal;
-}
-
-/**
- * 1. Address box sizing set to `content-box` in IE 8/9/10.
- * 2. Remove excess padding in IE 8/9/10.
- * Known issue: excess padding remains in IE 6.
- */
-
-input[type="checkbox"],
-input[type="radio"] {
- box-sizing: border-box; /* 1 */
- padding: 0; /* 2 */
- @if $legacy_browser_support {
- *height: 13px; /* 3 */
- *width: 13px; /* 3 */
- }
-}
-
-/**
- * Fix the cursor style for Chrome's increment/decrement buttons. For certain
- * `font-size` values of the `input`, it causes the cursor style of the
- * decrement button to change from `default` to `text`.
- */
-
-input[type="number"]::-webkit-inner-spin-button,
-input[type="number"]::-webkit-outer-spin-button {
- height: auto;
-}
-
-/**
- * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
- * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
- * (include `-moz` to future-proof).
- */
-
-input[type="search"] {
- -webkit-appearance: textfield; /* 1 */
- -moz-box-sizing: content-box;
- -webkit-box-sizing: content-box; /* 2 */
- box-sizing: content-box;
-}
-
-/**
- * Remove inner padding and search cancel button in Safari and Chrome on OS X.
- * Safari (but not Chrome) clips the cancel button when the search input has
- * padding (and `textfield` appearance).
- */
-
-input[type="search"]::-webkit-search-cancel-button,
-input[type="search"]::-webkit-search-decoration {
- -webkit-appearance: none;
-}
-
-/**
- * Define consistent border, margin, and padding.
- */
-
-fieldset {
- border: 1px solid #c0c0c0;
- margin: 0 2px;
- padding: 0.35em 0.625em 0.75em;
-}
-
-/**
- * 1. Correct `color` not being inherited in IE 8/9/10/11.
- * 2. Remove padding so people aren't caught out if they zero out fieldsets.
- * 3. Corrects text not wrapping in Firefox 3.
- * 4. Corrects alignment displayed oddly in IE 6/7.
- */
-
-legend {
- border: 0; /* 1 */
- padding: 0; /* 2 */
- @if $legacy_browser_support {
- white-space: normal; /* 3 */
- *margin-left: -7px; /* 4 */
- }
-}
-
-/**
- * Remove default vertical scrollbar in IE 8/9/10/11.
- */
-
-textarea {
- overflow: auto;
-}
-
-/**
- * Don't inherit the `font-weight` (applied by a rule above).
- * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
- */
-
-optgroup {
- font-weight: bold;
-}
-
-/* Tables
- ========================================================================== */
-
-/**
- * Remove most spacing between table cells.
- */
-
-table {
- border-collapse: collapse;
- border-spacing: 0;
-}
-
-td,
-th {
- padding: 0;
-}
diff --git a/html/css/scss/_object.scss b/html/css/scss/_object.scss
deleted file mode 100644
index 22eebd8..0000000
--- a/html/css/scss/_object.scss
+++ /dev/null
@@ -1,89 +0,0 @@
-.section-specification {
- table {
- width: auto;
-
- th {
- text-align: left;
- }
- }
-}
-
-.method-title {
- margin-left: -15px;
- margin-bottom: 8px;
- transition: margin-left .3s ease-out;
-
- .section-method.hide & {
- margin-left: 0;
- }
-
- code {
- font-weight: 400;
- font-size: .85em;
- }
-}
-
-.method-info {
- background: $object-background;
- border-bottom: 1px solid $object-border;
- margin: 0 -25px;
- padding: 20px 25px 0 25px;
- transition: height .3s ease-out;
-
- position: relative;
-
- .pointy-thing {
- background: $content-background;
- height: 10px;
- border-bottom: 1px solid $object-border;
- margin: -20px -25px 16px -25px;
-
- &:before {
- display: inline-block;
- content: "";
-
- background: $object-background;
- border: 1px solid $object-border;
- border-bottom: 0;
- border-right: 0;
-
- position: absolute;
- left: 21px;
- top: 3px;
- width: 12px;
- height: 12px;
- transform: rotate(45deg);
- }
- }
-
- .method-subsection {
- margin-bottom: 15px;
-
- .argument-name {
- width: 1px;
- text-align: right;
-
- code {
- color: #808080;
- font-style: italic;
- font-weight: 400;
- }
- }
- }
-}
-
-.section-method {
- &.hide .method-info {
- height: 0 !important;
- overflow: hidden;
- display: none;
- }
-
- &.hide.animating .method-info {
- display: block;
- }
-
- &.animating .method-info {
- overflow: hidden;
- }
-}
diff --git a/html/css/scss/_print.scss b/html/css/scss/_print.scss
deleted file mode 100644
index 61bdf99..0000000
--- a/html/css/scss/_print.scss
+++ /dev/null
@@ -1,42 +0,0 @@
-@media print {
- body {
- background: #fff;
- padding: 8px;
- }
-
- header {
- position: static;
- background: #fff;
- color: #000;
- }
-
- aside {
- display: none;
- }
-
- .container {
- max-width: none;
- padding: 0;
- }
-
- article {
- margin-top: 0;
-
- #content {
- border: 0;
- background: #fff;
- padding: 15px 0 0 0;
-
- .title {
- margin-top: 0;
- padding-top: 0;
- }
- }
- }
-
- .method-info {
- &, & .pointy-thing {
- background: #fff;
- }
- }
-}
diff --git a/html/css/scss/_variables.scss b/html/css/scss/_variables.scss
deleted file mode 100644
index 38e072d..0000000
--- a/html/css/scss/_variables.scss
+++ /dev/null
@@ -1,12 +0,0 @@
-$body-font: -apple-system-font, "Helvetica Neue", Helvetica, sans-serif;
-$code-font: "Source Code Pro", Monaco, Menlo, Consolas, monospace;
-
-$body-background: #f2f2f2;
-$content-background: #fff;
-$content-border: #e9e9e9;
-$tint-color: #08c;
-$object-background: #f9f9f9;
-$object-border: #e9e9e9;
-
-$mobile-max-width: 650px;
-$desktop-min-width: 768px; \ No newline at end of file
diff --git a/html/css/scss/_xcode.scss b/html/css/scss/_xcode.scss
deleted file mode 100644
index 340b1f6..0000000
--- a/html/css/scss/_xcode.scss
+++ /dev/null
@@ -1,29 +0,0 @@
-.xcode {
- header, aside {
- display: none;
- }
-
- .container {
- padding: 0;
- }
-
- article {
- margin-top: 0;
-
- #content {
- border: 0;
- margin: 0;
- }
- }
-
- .method-info {
- &, .section-method.hide & {
- max-height: auto;
- overflow: visible;
-
- &.hiding {
- display: block;
- }
- }
- }
-}
diff --git a/html/css/scss/style.scss b/html/css/scss/style.scss
deleted file mode 100644
index 648a608..0000000
--- a/html/css/scss/style.scss
+++ /dev/null
@@ -1 +0,0 @@
-@import "variables", "normalize", "layout", "index", "object", "print", "xcode";
diff --git a/html/css/style.css b/html/css/style.css
deleted file mode 100644
index d9d59dd..0000000
--- a/html/css/style.css
+++ /dev/null
@@ -1,2 +0,0 @@
-html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box}.clear{clear:both}.clearfix:before,.container:before,article #content:before,article #content footer:before,.clearfix:after,.container:after,article #content:after,article #content footer:after{clear:both;display:table;content:""}.xcode .hide-in-xcode{display:none}body{font:62.5% -apple-system-font,"Helvetica Neue",Helvetica,sans-serif;background:#f2f2f2}@media (max-width: 650px){body{background-color:#fff}}h1,h2,h3{font-weight:300;color:#808080}h1{font-size:2em;color:#000}h4{font-size:13px;line-height:1.5;margin:21px 0 0 0}a{color:#08c;text-decoration:none}pre,code{font-family:"Source Code Pro",Monaco,Menlo,Consolas,monospace;word-wrap:break-word}pre>code,.method-declaration code{display:inline-block;font-size:.85em;padding:4px 0 4px 10px;border-left:5px solid rgba(0,155,51,0.2)}pre>code:before,.method-declaration code:before{content:"Objective-C";display:block;font:9px/1 -apple-system-font,"Helvetica Neue",Helvetica,sans-serif;color:#009b33;text-transform:uppercase;letter-spacing:2px;padding-bottom:6px}pre>code{font-size:inherit}table,th,td{border:1px solid #e9e9e9}table{width:100%}th,td{padding:7px}th>:first-child,td>:first-child{margin-top:0}th>:last-child,td>:last-child{margin-bottom:0}.container{max-width:980px;padding:0 10px;margin:0 auto}@media (max-width: 650px){.container{padding:0}}header{position:fixed;top:0;left:0;width:100%;z-index:2;background:#414141;color:#fff;font-size:1.1em;line-height:25px;letter-spacing:.05em}header #library-title{float:left}header #developer-home{float:right}header h1{font-size:inherit;font-weight:inherit;margin:0}header p{margin:0}header h1,header a{color:inherit}@media (max-width: 650px){header .container{padding:0 10px}}aside{position:fixed;top:25px;left:0;width:100%;height:25px;z-index:2;font-size:1.1em}aside #header-buttons{background:rgba(255,255,255,0.8);margin:0 1px;padding:0;list-style:none;text-align:right;line-height:32px}aside #header-buttons li{display:inline-block;cursor:pointer;padding:0 10px}aside #header-buttons label,aside #header-buttons select{cursor:inherit}aside #header-buttons #on-this-page{position:relative}aside #header-buttons #on-this-page .chevron{display:inline-block;width:14px;height:4px;position:relative}aside #header-buttons #on-this-page .chevron .chevy{background:#878787;height:2px;position:absolute;width:10px}aside #header-buttons #on-this-page .chevron .chevy.chevron-left{left:0;transform:rotateZ(45deg) scale(0.6)}aside #header-buttons #on-this-page .chevron .chevy.chevron-right{right:0;transform:rotateZ(-45deg) scale(0.6)}aside #header-buttons #on-this-page #jump-to{opacity:0;font-size:16px;position:absolute;top:5px;left:0;width:100%;height:100%}article{margin-top:25px}article #content{background:#fff;border:1px solid #e9e9e9;padding:15px 25px 30px 25px;font-size:1.4em;line-height:1.45;position:relative}@media (max-width: 650px){article #content{padding:15px 10px 20px 10px;border:none}}article #content .navigation-top{position:absolute;top:15px;right:25px}article #content .title{margin:21px 0 0 0;padding:15px 0}article #content p{color:#414141;margin:0 0 15px 0}article #content th p:last-child,article #content td p:last-child{margin-bottom:0}article #content main ul{list-style:none;margin-left:24px;margin-bottom:12px;padding:0}article #content main ul li{position:relative;padding-left:1.3em}article #content main ul li:before{content:"\02022";color:#414141;font-size:1.08em;line-height:1;position:absolute;left:0;padding-top:2px}article #content footer .footer-copyright{margin:70px 25px 10px 0}article #content footer p{font-size:.71em;color:#a0a0a0}.index-container{-webkit-flex-direction:column;flex-direction:column}@media (min-width: 768px){.index-container{display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;flex-wrap:wrap}}.index-container .index-column{-webkit-flex:1 1 33%;flex:1 1 33%}.section-specification table{width:auto}.section-specification table th{text-align:left}.method-title{margin-left:-15px;margin-bottom:8px;transition:margin-left .3s ease-out}.section-method.hide .method-title{margin-left:0}.method-title code{font-weight:400;font-size:.85em}.method-info{background:#f9f9f9;border-bottom:1px solid #e9e9e9;margin:0 -25px;padding:20px 25px 0 25px;transition:height .3s ease-out;position:relative}.method-info .pointy-thing{background:#fff;height:10px;border-bottom:1px solid #e9e9e9;margin:-20px -25px 16px -25px}.method-info .pointy-thing:before{display:inline-block;content:"";background:#f9f9f9;border:1px solid #e9e9e9;border-bottom:0;border-right:0;position:absolute;left:21px;top:3px;width:12px;height:12px;-webkit-transform:rotate(45deg);transform:rotate(45deg) }.method-info .method-subsection{margin-bottom:15px}.method-info .method-subsection .argument-name{width:1px;text-align:right}.method-info .method-subsection .argument-name code{color:#808080;font-style:italic;font-weight:400}.section-method.hide .method-info{height:0 !important;overflow:hidden;display:none}.section-method.hide.animating .method-info{display:block}.section-method.animating .method-info{overflow:hidden}@media print{body{background:#fff;padding:8px}header{position:static;background:#fff;color:#000}aside{display:none}.container{max-width:none;padding:0}article{margin-top:0}article #content{border:0;background:#fff;padding:15px 0 0 0}article #content .title{margin-top:0;padding-top:0}.method-info,.method-info .pointy-thing{background:#fff}}.xcode header,.xcode aside{display:none}.xcode .container{padding:0}.xcode article{margin-top:0}.xcode article #content{border:0;margin:0}.xcode .method-info,.section-method.hide .xcode .method-info{max-height:auto;overflow:visible}.xcode .method-info.hiding,.section-method.hide .xcode .method-info.hiding{display:block}
-
diff --git a/html/docsets/FMDB.docset/Contents/Info.plist b/html/docsets/FMDB.docset/Contents/Info.plist
new file mode 100644
index 0000000..e3c0dea
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Info.plist
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+ <dict>
+ <key>CFBundleIdentifier</key>
+ <string>com.jazzy.fmdb</string>
+ <key>CFBundleName</key>
+ <string>FMDB</string>
+ <key>DocSetPlatformFamily</key>
+ <string>fmdb</string>
+ <key>isDashDocset</key>
+ <true/>
+ <key>dashIndexFilePath</key>
+ <string>index.html</string>
+ <key>isJavaScriptEnabled</key>
+ <true/>
+ <key>DashDocSetFamily</key>
+ <string>dashtoc</string>
+ </dict>
+</plist>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Categories.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Categories.html
new file mode 100644
index 0000000..041378a
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Categories.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Categories Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Categories" class="dashAnchor"></a>
+ <a title="Categories Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Categories Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Categories</h1>
+ <p>The following categories are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cy)NSObject@FMDatabasePoolDelegate"></a>
+ <a name="//apple_ref/objc/Extension/NSObject(FMDatabasePoolDelegate)" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cy)NSObject@FMDatabasePoolDelegate">NSObject(FMDatabasePoolDelegate)</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>FMDatabasePool delegate category</p>
+
+<p>This is a category that defines the protocol for the FMDatabasePool delegate</p>
+
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">NSObject</span> <span class="p">(</span><span class="nl">FMDatabasePoolDelegate</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Categories/NSObject(FMDatabasePoolDelegate).html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Categories/NSObject(FMDatabasePoolDelegate).html
new file mode 100644
index 0000000..5b3fe74
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Categories/NSObject(FMDatabasePoolDelegate).html
@@ -0,0 +1,253 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>NSObject(FMDatabasePoolDelegate) Category Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Extension/NSObject(FMDatabasePoolDelegate)" class="dashAnchor"></a>
+ <a title="NSObject(FMDatabasePoolDelegate) Category Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ NSObject(FMDatabasePoolDelegate) Category Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>NSObject(FMDatabasePoolDelegate)</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">NSObject</span> <span class="p">(</span><span class="nl">FMDatabasePoolDelegate</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <p>FMDatabasePool delegate category</p>
+
+<p>This is a category that defines the protocol for the FMDatabasePool delegate</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)NSObject(im)databasePool:shouldAddDatabaseToPool:"></a>
+ <a name="//apple_ref/objc/Method/-databasePool:shouldAddDatabaseToPool:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)NSObject(im)databasePool:shouldAddDatabaseToPool:">-databasePool:<wbr>shouldAddDatabaseToPool:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Asks the delegate whether database should be added to the pool. </p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">databasePool</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">pool</span>
+ <span class="nf">shouldAddDatabaseToPool</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">database</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">databasePool</span><span class="p">(</span><span class="n">_</span> <span class="nv">pool</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span><span class="p">,</span> <span class="n">shouldAddDatabaseToPool</span> <span class="nv">database</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>pool</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>database</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if it should add database to pool; <code>NO</code> if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)NSObject(im)databasePool:didAddDatabase:"></a>
+ <a name="//apple_ref/objc/Method/-databasePool:didAddDatabase:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)NSObject(im)databasePool:didAddDatabase:">-databasePool:<wbr>didAddDatabase:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Tells the delegate that database was added to the pool.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">databasePool</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">pool</span>
+ <span class="nf">didAddDatabase</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="p">)</span><span class="nv">database</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">databasePool</span><span class="p">(</span><span class="n">_</span> <span class="nv">pool</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></span><span class="p">,</span> <span class="n">didAdd</span> <span class="nv">database</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>pool</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>database</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes.html
new file mode 100644
index 0000000..a7b81e7
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes.html
@@ -0,0 +1,398 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Classes Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Classes" class="dashAnchor"></a>
+ <a title="Classes Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Classes Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Classes</h1>
+ <p>The following classes are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase"></a>
+ <a name="//apple_ref/objc/Class/FMDatabase" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase">FMDatabase</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>A SQLite (<a href="https://sqlite.org/">https://sqlite.org/</a>) Objective-C wrapper.</p>
+
+<p>Usage</p>
+
+<p>The three main classes in FMDB are:</p>
+
+<ul>
+<li><p><code>FMDatabase</code> - Represents a single SQLite database. Used for executing SQL statements.</p></li>
+<li><p><code><a href="Classes/FMResultSet.html">FMResultSet</a></code> - Represents the results of executing a query on an <code>FMDatabase</code> .</p></li>
+<li><p><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> - If you want to perform queries and updates on multiple threads, you&rsquo;ll want to use this class.</p></li>
+</ul>
+
+<p>See also</p>
+
+<ul>
+<li><p><code><a href="Classes/FMDatabasePool.html">FMDatabasePool</a></code> - A pool of <code>FMDatabase</code> objects</p></li>
+<li><p><code><a href="Classes/FMStatement.html">FMStatement</a></code> - A wrapper for <code>sqlite_stmt</code></p></li>
+</ul>
+
+<p>External links</p>
+
+<ul>
+<li><a href="https://github.com/ccgus/fmdb">FMDB on GitHub</a> including introductory documentation</li>
+<li><a href="https://sqlite.org/">SQLite web site</a></li>
+<li><a href="http://groups.google.com/group/fmdb">FMDB mailing list</a></li>
+<li><p><a href="https://sqlite.org/faq.html">SQLite FAQ</a></p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code>FMDatabase</code> object and use it across multiple threads. Instead, use <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> .</p>
+
+</div>
+
+ <a href="Classes/FMDatabase.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabase</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMDatabase</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement"></a>
+ <a name="//apple_ref/objc/Class/FMStatement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement">FMStatement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Objective-C wrapper for <code>sqlite3_stmt</code></p>
+
+<p>This is a wrapper for a SQLite <code>sqlite3_stmt</code> . Generally when using FMDB you will not need to interact directly with <code>FMStatement</code>, but rather with <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> and <code><a href="Classes/FMResultSet.html">FMResultSet</a></code> only.</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="Classes/FMDatabase.html">FMDatabase</a></code></li>
+<li><code><a href="Classes/FMResultSet.html">FMResultSet</a></code></li>
+<li><a href="https://sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code> </a></li>
+</ul>
+
+ <a href="Classes/FMStatement.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMStatement</span> <span class="p">:</span> <span class="nc">NSObject</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="o">*</span><span class="n">_statement</span><span class="p">;</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">_query</span><span class="p">;</span>
+ <span class="kt">long</span> <span class="n">_useCount</span><span class="p">;</span>
+ <span class="n">BOOL</span> <span class="n">_inUse</span><span class="p">;</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMStatement</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool"></a>
+ <a name="//apple_ref/objc/Class/FMDatabasePool" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool">FMDatabasePool</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Pool of <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> objects.</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></li>
+<li><p><code><a href="Classes/FMDatabase.html">FMDatabase</a></code> </p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Before using <code>FMDatabasePool</code> , please consider using <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> instead.</p>
+
+</div>
+
+<p>If you really really really know what you&rsquo;re doing and <code>FMDatabasePool</code> is what
+ you really really need (ie, you&rsquo;re using a read only database), OK you can use
+ it. But just be careful not to deadlock!</p>
+
+<p>For an example on deadlocking, search for:
+ <code>ONLY_USE_THE_POOL_IF_YOU_ARE_DOING_READS_OTHERWISE_YOULL_DEADLOCK_USE_FMDATABASEQUEUE_INSTEAD</code>
+ in the main.m file.</p>
+
+ <a href="Classes/FMDatabasePool.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabasePool</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMDatabasePool</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue"></a>
+ <a name="//apple_ref/objc/Class/FMDatabaseQueue" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue">FMDatabaseQueue</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>To perform queries and updates on multiple threads, you&rsquo;ll want to use <code>FMDatabaseQueue</code> .</p>
+
+<p>Using a single instance of <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> from multiple threads at once is a bad idea. It has always been OK to make a <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object <em>per thread</em>. Just don&rsquo;t share a single instance across threads, and definitely not across multiple threads at the same time.</p>
+
+<p>Instead, use <code>FMDatabaseQueue</code> . Here&rsquo;s how to use it:</p>
+
+<p>First, make your queue.</p>
+<pre class="highlight objective_c"><code><span class="n">FMDatabaseQueue</span> <span class="o">*</span><span class="n">queue</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabaseQueue</span> <span class="nf">databaseQueueWithPath</span><span class="p">:</span><span class="n">aPath</span><span class="p">];</span>
+</code></pre>
+
+<p>Then use it like so:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inDatabase</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"select * from foo"</span><span class="p">];</span>
+ <span class="k">while</span> <span class="p">([</span><span class="n">rs</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">//…
+</span> <span class="p">}</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p>An easy way to wrap things up in a transaction can be done like this:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inTransaction</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">,</span> <span class="n">BOOL</span> <span class="o">*</span><span class="n">rollback</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="c1">// if (whoopsSomethingWrongHappened) {
+</span> <span class="c1">// *rollback = YES;
+</span> <span class="c1">// return;
+</span> <span class="c1">// }
+</span>
+ <span class="c1">// etc…
+</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">4</span><span class="p">]];</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p><code>FMDatabaseQueue</code> will run the blocks on a serialized queue (hence the name of the class). So if you call <code>FMDatabaseQueue</code> &lsquo;s methods from multiple threads at the same time, they will be executed in the order they are received. This way queries and updates won&rsquo;t step on each other&rsquo;s toes, and every one is happy.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object and use it across multiple threads. Use <code>FMDatabaseQueue</code> instead.</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>The calls to <code>FMDatabaseQueue</code> &rsquo;s methods are blocking. So even though you are passing along blocks, they will <strong>not</strong> be run on another thread.</p>
+
+</div>
+
+<p>@sa FMDatabase</p>
+
+ <a href="Classes/FMDatabaseQueue.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabaseQueue</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMDatabaseQueue</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet"></a>
+ <a name="//apple_ref/objc/Class/FMResultSet" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet">FMResultSet</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Represents the results of executing a query on an <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> .</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="Classes/FMDatabase.html">FMDatabase</a></code></li>
+</ul>
+
+ <a href="Classes/FMResultSet.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMResultSet</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kt">FMResultSet</span> <span class="p">:</span> <span class="kt">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabase.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabase.html
new file mode 100644
index 0000000..f52eb9a
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabase.html
@@ -0,0 +1,6978 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMDatabase Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMDatabase" class="dashAnchor"></a>
+ <a title="FMDatabase Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDatabase Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDatabase</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabase</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>A SQLite (<a href="https://sqlite.org/">https://sqlite.org/</a>) Objective-C wrapper.</p>
+
+<p>Usage</p>
+
+<p>The three main classes in FMDB are:</p>
+
+<ul>
+<li><p><code>FMDatabase</code> - Represents a single SQLite database. Used for executing SQL statements.</p></li>
+<li><p><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> - Represents the results of executing a query on an <code>FMDatabase</code> .</p></li>
+<li><p><code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> - If you want to perform queries and updates on multiple threads, you&rsquo;ll want to use this class.</p></li>
+</ul>
+
+<p>See also</p>
+
+<ul>
+<li><p><code><a href="../Classes/FMDatabasePool.html">FMDatabasePool</a></code> - A pool of <code>FMDatabase</code> objects</p></li>
+<li><p><code><a href="../Classes/FMStatement.html">FMStatement</a></code> - A wrapper for <code>sqlite_stmt</code></p></li>
+</ul>
+
+<p>External links</p>
+
+<ul>
+<li><a href="https://github.com/ccgus/fmdb">FMDB on GitHub</a> including introductory documentation</li>
+<li><a href="https://sqlite.org/">SQLite web site</a></li>
+<li><a href="http://groups.google.com/group/fmdb">FMDB mailing list</a></li>
+<li><p><a href="https://sqlite.org/faq.html">SQLite FAQ</a></p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code>FMDatabase</code> object and use it across multiple threads. Instead, use <code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> .</p>
+
+</div>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Properties"></a>
+ <a name="//apple_ref/objc/Section/Properties" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Properties"></a>
+ <h3 class="section-name"><p>Properties</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)traceExecution"></a>
+ <a name="//apple_ref/objc/Property/traceExecution" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)traceExecution">traceExecution</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether should trace execution</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">traceExecution</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">traceExecution</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)checkedOut"></a>
+ <a name="//apple_ref/objc/Property/checkedOut" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)checkedOut">checkedOut</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether checked out or not</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">checkedOut</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">checkedOut</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)crashOnErrors"></a>
+ <a name="//apple_ref/objc/Property/crashOnErrors" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)crashOnErrors">crashOnErrors</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Crash on errors</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">crashOnErrors</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">crashOnErrors</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)logsErrors"></a>
+ <a name="//apple_ref/objc/Property/logsErrors" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)logsErrors">logsErrors</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Logs errors</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">logsErrors</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">logsErrors</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)cachedStatements"></a>
+ <a name="//apple_ref/objc/Property/cachedStatements" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)cachedStatements">cachedStatements</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Dictionary of cached statements</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSMutableDictionary</span> <span class="o">*</span><span class="n">cachedStatements</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">cachedStatements</span><span class="p">:</span> <span class="kt">NSMutableDictionary</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Initialization"></a>
+ <a name="//apple_ref/objc/Section/Initialization" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Initialization"></a>
+ <h3 class="section-name"><p>Initialization</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)databaseWithPath:"></a>
+ <a name="//apple_ref/objc/Method/+databaseWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)databaseWithPath:">+databaseWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
+
+<ol>
+<li><p>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p>An zero-length string. An empty database is created at a temporary location. This database is deleted with the <code>FMDatabase</code> connection is closed.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
+</ol>
+
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code><span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+<span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+<span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">databaseWithPath</span><span class="p">:</span><span class="n">fileURL</span><span class="p">.</span><span class="n">path</span><span class="p">];</span>
+</code></pre>
+
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">inPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>inPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Path of database file</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)databaseWithURL:"></a>
+ <a name="//apple_ref/objc/Method/+databaseWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)databaseWithURL:">+databaseWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
+
+<ol>
+<li><p>A file system URL. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
+</ol>
+
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code><span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+<span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+<span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">databaseWithURL</span><span class="p">:</span><span class="n">fileURL</span><span class="p">];</span>
+</code></pre>
+
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The local file URL (not remote URL) of database file</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)initWithPath:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)initWithPath:">-initWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Initialize a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
+
+<ol>
+<li><p>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p>A zero-length string. An empty database is created at a temporary location. This database is deleted with the <code>FMDatabase</code> connection is closed.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
+</ol>
+
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code> <span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+ <span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+ <span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">alloc</span><span class="p">]</span> <span class="nf">initWithPath</span><span class="p">:</span><span class="n">fileURL</span><span class="p">.</span><span class="n">path</span><span class="p">];</span>
+</code></pre>
+
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">path</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">path</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>path</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Path of database file.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)initWithURL:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)initWithURL:">-initWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Initialize a <code>FMDatabase</code> object.</p>
+
+<p>An <code>FMDatabase</code> is created with a local file URL to a SQLite database file. This path can be one of these three:</p>
+
+<ol>
+<li><p>A file system URL. The file does not have to exist on disk. If it does not exist, it is created for you.</p></li>
+<li><p><code>nil</code> . An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</p></li>
+</ol>
+
+<p>For example, to open a database in the app&rsquo;s “Application Support” directory:</p>
+<pre class="highlight objective_c"><code> <span class="n">NSURL</span> <span class="o">*</span><span class="n">folder</span> <span class="o">=</span> <span class="p">[[</span><span class="n">NSFileManager</span> <span class="nf">defaultManager</span><span class="p">]</span> <span class="nf">URLForDirectory</span><span class="p">:</span><span class="n">NSApplicationSupportDirectory</span> <span class="nf">inDomain</span><span class="p">:</span><span class="n">NSUserDomainMask</span> <span class="n">appropriateForURL</span><span class="o">:</span><span class="nb">nil</span> <span class="n">create</span><span class="o">:</span><span class="nb">true</span> <span class="n">error</span><span class="o">:&amp;</span><span class="n">error</span><span class="p">];</span>
+ <span class="n">NSURL</span> <span class="o">*</span><span class="n">fileURL</span> <span class="o">=</span> <span class="p">[</span><span class="n">folder</span> <span class="nf">URLByAppendingPathComponent</span><span class="p">:</span><span class="s">@"test.db"</span><span class="p">];</span>
+ <span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">alloc</span><span class="p">]</span> <span class="nf">initWithURL</span><span class="p">:</span><span class="n">fileURL</span><span class="p">];</span>
+</code></pre>
+
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://sqlite.org/inmemorydb.html">https://sqlite.org/inmemorydb.html</a>)</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of database file.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>FMDatabase</code> object if successful; <code>nil</code> if failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Opening%20and%20closing%20database"></a>
+ <a name="//apple_ref/objc/Section/Opening and closing database" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Opening%20and%20closing%20database"></a>
+ <h3 class="section-name"><p>Opening and closing database</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)isOpen"></a>
+ <a name="//apple_ref/objc/Property/isOpen" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)isOpen">isOpen</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Is the database open or not?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">isOpen</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">isOpen</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)open"></a>
+ <a name="//apple_ref/objc/Method/-open" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)open">-open</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Opening a new database connection</p>
+
+<p>The database is opened for reading and writing, and is created if it does not already exist.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/open.html">sqlite3_open()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>openWithFlags:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>close</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">open</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">open</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if successful, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)openWithFlags:"></a>
+ <a name="//apple_ref/objc/Method/-openWithFlags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)openWithFlags:">-openWithFlags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READONLY</span>
+</code></pre>
+
+<p>The database is opened in read-only mode. If the database does not already exist, an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span>
+</code></pre>
+
+<p>The database is opened for reading and writing if possible, or reading only if the file is write protected by the operating system. In either case the database must already exist, otherwise an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span> <span class="o">|</span> <span class="n">SQLITE_OPEN_CREATE</span>
+</code></pre>
+
+<p>The database is opened for reading and writing, and is created if it does not already exist. This is the behavior that is always used for <code>open</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/open.html">sqlite3_open_v2()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>open</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>close</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">openWithFlags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">flags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">open</span><span class="p">(</span><span class="n">withFlags</span> <span class="nv">flags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>flags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>One of the following three values, optionally combined with the <code>SQLITE_OPEN_NOMUTEX</code> , <code>SQLITE_OPEN_FULLMUTEX</code> , <code>SQLITE_OPEN_SHAREDCACHE</code> , <code>SQLITE_OPEN_PRIVATECACHE</code> , and/or <code>SQLITE_OPEN_URI</code> flags:</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if successful, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)openWithFlags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-openWithFlags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)openWithFlags:vfs:">-openWithFlags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READONLY</span>
+</code></pre>
+
+<p>The database is opened in read-only mode. If the database does not already exist, an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span>
+</code></pre>
+
+<p>The database is opened for reading and writing if possible, or reading only if the file is write protected by the operating system. In either case the database must already exist, otherwise an error is returned.</p>
+<pre class="highlight objective_c"><code><span class="n">SQLITE_OPEN_READWRITE</span> <span class="o">|</span> <span class="n">SQLITE_OPEN_CREATE</span>
+</code></pre>
+
+<p>The database is opened for reading and writing, and is created if it does not already exist. This is the behavior that is always used for <code>open</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/open.html">sqlite3_open_v2()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>open</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>close</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">openWithFlags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">flags</span> <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">open</span><span class="p">(</span><span class="n">withFlags</span> <span class="nv">flags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>flags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>One of the following three values, optionally combined with the <code>SQLITE_OPEN_NOMUTEX</code> , <code>SQLITE_OPEN_FULLMUTEX</code>, <code>SQLITE_OPEN_SHAREDCACHE</code>, <code>SQLITE_OPEN_PRIVATECACHE</code> , and/or <code>SQLITE_OPEN_URI</code> flags:</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If vfs is given the value is passed to the vfs parameter of sqlite3_open_v2.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if successful, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Closing a database connection</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/close.html">sqlite3_close()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>open</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>openWithFlags:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)goodConnection"></a>
+ <a name="//apple_ref/objc/Property/goodConnection" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)goodConnection">goodConnection</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test to see if we have a good connection to the database.</p>
+
+<p>This will confirm whether:</p>
+
+<ul>
+<li><p>is database open</p></li>
+<li><p>if open, it will try a simple <code>SELECT</code> statement and confirm that it succeeds.</p></li>
+</ul>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">goodConnection</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">goodConnection</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if everything succeeds, <code>NO</code> on failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Perform%20updates"></a>
+ <a name="//apple_ref/objc/Section/Perform updates" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Perform%20updates"></a>
+ <h3 class="section-name"><p>Perform updates</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withErrorAndBindings:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withErrorAndBindings:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withErrorAndBindings:">-executeUpdate:<wbr>withErrorAndBindings:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a>, <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> to bind values to <code>?</code> placeholders in the SQL with the optional list of parameters, and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withErrorAndBindings</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders. This can be followed by iptional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code> , <code>NSNumber</code> , etc.), not fundamental C data types (e.g. <code>int</code> , etc.).</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A reference to the <code>NSError</code> pointer to be updated with an auto released <code>NSError</code> object if an error if an error occurs. If <code>nil</code> , no <code>NSError</code> object will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)update:withErrorAndBindings:"></a>
+ <a name="//apple_ref/objc/Method/-update:withErrorAndBindings:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)update:withErrorAndBindings:">-update:<wbr>withErrorAndBindings:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use executeUpdate:withErrorAndBindings: instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeUpdate:withErrorAndBindings:</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p><strong>Deprecated</strong>: Please use <code>&lt;executeUpdate:withErrorAndBindings&gt;</code> instead.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">update</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withErrorAndBindings</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:">-executeUpdate:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a>, <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> to bind values to <code>?</code> placeholders in the SQL with the optional list of parameters, and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This technique supports the use of <code>?</code> placeholders in the SQL, automatically binding any supplied value parameters to those placeholders. This approach is more robust than techniques that entail using <code>stringWithFormat</code> to manually build SQL statements, which can be problematic if the values happened to include any characters that needed to be quoted.</p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>You cannot use this method from Swift due to incompatibilities between Swift and Objective-C variadic implementations. Consider using <code>&lt;executeUpdate:values:&gt;</code> instead.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders, followed by optional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code> , <code>NSNumber</code> , etc.), not fundamental C data types (e.g. <code>int</code> , etc.).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdateWithFormat:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdateWithFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdateWithFormat:">-executeUpdateWithFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL. Do not use <code>?</code> placeholders in the SQL if you use this method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeUpdate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This method does not technically perform a traditional printf-style replacement. What this method actually does is replace the printf-style percent sequences with a SQLite <code>?</code> placeholder, and then bind values to that placeholder. Thus the following command</p>
+
+</div>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdateWithFormat</span><span class="p">:</span><span class="s">@"INSERT INTO test (name) VALUES (%@)"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
+
+<p>is actually replacing the <code>%@</code> with <code>?</code> placeholder, and then performing something equivalent to <code>&lt;executeUpdate:&gt;</code></p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO test (name) VALUES (?)"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
+
+<p>There are two reasons why this distinction is important. First, the printf-style escape sequences can only be used where it is permissible to use a SQLite <code>?</code> placeholder. You can use it only for values in SQL statements, but not for table names or column names or any other non-value context. This method also cannot be used in conjunction with <code>pragma</code> statements and the like. Second, note the lack of quotation marks in the SQL. The <code>VALUES</code> clause was <em>not</em> <code>VALUES (&#39;%@&#39;)</code> (like you might have to do if you built a SQL statement using <code>NSString</code> method <code>stringWithFormat</code> ), but rather simply <code>VALUES (%@)</code>.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdateWithFormat</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">format</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with <code>printf</code>-style escape sequences, followed by optional parameters to bind to use in conjunction with the <code>printf</code>-style escape sequences in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withArgumentsInArray:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withArgumentsInArray:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withArgumentsInArray:">-executeUpdate:<wbr>withArgumentsInArray:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> binding any <code>?</code> placeholders in the SQL with the optional list of parameters.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeUpdate:values:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withArgumentsInArray</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withArgumentsIn</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:values:error:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:values:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:values:error:">-executeUpdate:<wbr>values:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> binding any <code>?</code> placeholders in the SQL with the optional list of parameters.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+
+<p>This is similar to <code>executeUpdate:withArgumentsInArray:</code> , except that this also accepts a pointer to a <code>NSError</code> pointer, so that errors can be returned.</p>
+
+<p>In Swift, this throws errors, as if it were defined as follows:</p>
+<pre class="highlight objective_c"><code><span class="n">func</span> <span class="n">executeUpdate</span><span class="p">(</span><span class="n">sql</span><span class="o">:</span> <span class="n">String</span><span class="p">,</span> <span class="n">values</span><span class="o">:</span> <span class="p">[</span><span class="nf">Any</span><span class="p">]?)</span> <span class="n">throws</span> <span class="o">-&gt;</span> <span class="n">Bool</span> <span class="err">{</span> <span class="err">}</span>
+</code></pre>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">values</span><span class="p">:(</span><span class="n">NSArray</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">values</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">]?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>values</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withParameterDictionary:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withParameterDictionary:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withParameterDictionary:">-executeUpdate:<wbr>withParameterDictionary:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withParameterDictionary</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSDictionary</span> <span class="o">*</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withParameterDictionary</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSDictionary</code> of objects keyed by column names that will be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeUpdate:withVAList:"></a>
+ <a name="//apple_ref/objc/Method/-executeUpdate:withVAList:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeUpdate:withVAList:">-executeUpdate:<wbr>withVAList:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute single update statement</p>
+
+<p>This method executes a single SQL update statement (i.e. any SQL that does not return results, such as <code>UPDATE</code> , <code>INSERT</code> , or <code>DELETE</code> . This method employs <a href="https://sqlite.org/c3ref/prepare.html"><code>sqlite3_prepare_v2</code></a> and <a href="https://sqlite.org/c3ref/step.html"><code>sqlite_step</code></a> to perform the update. Unlike the other <code>executeUpdate</code> methods, this uses printf-style formatters (e.g. <code>%s</code>, <code>%d</code>, etc.) to build the SQL.</p>
+
+<p>The optional values provided to this method should be objects (e.g. <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects), not fundamental data types (e.g. <code>int</code> , <code>long</code> , <code>NSInteger</code> , etc.). This method automatically handles the aforementioned object types, and all other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeUpdate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withVAList</span><span class="p">:(</span><span class="k">struct</span> <span class="n">__va_list_tag</span> <span class="o">*</span><span class="p">)</span><span class="nv">args</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeUpdate</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withVAList</span> <span class="nv">args</span><span class="p">:</span> <span class="kt">CVaListPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>args</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>va_list</code> of arguments.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeStatements:"></a>
+ <a name="//apple_ref/objc/Method/-executeStatements:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeStatements:">-executeStatements:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute multiple SQL statements</p>
+
+<p>This executes a series of SQL statements that are combined in a single string (e.g. the SQL generated by the <code>sqlite3</code> command line <code>.dump</code> command). This accepts no value parameters, but rather simply expects a single string with multiple SQL statements, each terminated with a semicolon. This uses <code>sqlite3_exec</code> .</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeStatements:withResultBlock:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/exec.html">sqlite3_exec()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeStatements</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeStatements</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeStatements:withResultBlock:"></a>
+ <a name="//apple_ref/objc/Method/-executeStatements:withResultBlock:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeStatements:withResultBlock:">-executeStatements:<wbr>withResultBlock:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute multiple SQL statements with callback handler</p>
+
+<p>This executes a series of SQL statements that are combined in a single string (e.g. the SQL generated by the <code>sqlite3</code> command line <code>.dump</code> command). This accepts no value parameters, but rather simply expects a single string with multiple SQL statements, each terminated with a semicolon. This uses <code>sqlite3_exec</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeStatements:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/exec.html">sqlite3_exec()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">executeStatements</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withResultBlock</span><span class="p">:(</span><span class="n"><a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a></span> <span class="n">_Nullable</span><span class="p">)</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeStatements</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withResultBlock</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(([</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Int32</span><span class="p">)?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A block that will be called for any result sets returned by any SQL statements.
+ Note, if you supply this block, it must return integer value, zero upon success (this would be a good opportunity to use <code>SQLITE_OK</code> ),
+ non-zero value upon failure (which will stop the bulk execution of the SQL). If a statement returns values, the block will be called with the results from the query in NSDictionary *resultsDictionary.
+ This may be <code>nil</code> if you don&rsquo;t care to receive any results.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> upon success; <code>NO</code> upon failure. If failed, you can call <code>lastError</code> ,
+ <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)lastInsertRowId"></a>
+ <a name="//apple_ref/objc/Property/lastInsertRowId" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)lastInsertRowId">lastInsertRowId</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last insert rowid</p>
+
+<p>Each entry in an SQLite table has a unique 64-bit signed integer key called the &ldquo;rowid&rdquo;. The rowid is always available as an undeclared column named <code>ROWID</code>, <code>OID</code>, or <code>_ROWID_</code> as long as those names are not also used by explicitly declared columns. If the table has a column of type <code>INTEGER PRIMARY KEY</code> then that column is another alias for the rowid.</p>
+
+<p>This routine returns the rowid of the most recent successful <code>INSERT</code> into the database from the database connection in the first argument. As of SQLite version 3.7.7, this routines records the last insert rowid of both ordinary tables and virtual tables. If no successful <code>INSERT</code> statements have ever occurred on that database connection, zero is returned.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/last_insert_rowid.html">sqlite3_last_insert_rowid()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">int64_t</span> <span class="n">lastInsertRowId</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">lastInsertRowId</span><span class="p">:</span> <span class="kt">Int64</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The rowid of the last inserted row.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)changes"></a>
+ <a name="//apple_ref/objc/Property/changes" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)changes">changes</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The number of rows changed by prior SQL statement.</p>
+
+<p>This function returns the number of database rows that were changed or inserted or deleted by the most recently completed SQL statement on the database connection specified by the first parameter. Only changes that are directly specified by the <code>INSERT</code> , <code>UPDATE</code> , or <code>DELETE</code> statement are counted.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/changes.html">sqlite3_changes()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">changes</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">changes</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The number of rows changed by prior SQL statement.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Retrieving%20results"></a>
+ <a name="//apple_ref/objc/Section/Retrieving results" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Retrieving%20results"></a>
+ <h3 class="section-name"><p>Retrieving results</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:">-executeQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+
+<p>This method employs <a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a> for any optional value parameters. This properly escapes any characters that need escape sequences (e.g. quotation marks), which eliminates simple SQL errors as well as protects against SQL injection attacks. This method natively handles <code>NSString</code> , <code>NSNumber</code> , <code>NSNull</code> , <code>NSDate</code> , and <code>NSData</code> objects. All other object types will be interpreted as text values using the object&rsquo;s <code>description</code> method.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/bind_blob.html"><code>sqlite3_bind</code></a></p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>You cannot use this method from Swift due to incompatibilities between Swift and Objective-C variadic implementations. Consider using <code>&lt;executeQuery:values:&gt;</code> instead.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders, followed by optional parameters to bind to <code>?</code> placeholders in the SQL statement. These should be Objective-C objects (e.g. <code>NSString</code> , <code>NSNumber</code> , etc.), not fundamental C data types (e.g. <code>int</code> , etc.).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQueryWithFormat:"></a>
+ <a name="//apple_ref/objc/Method/-executeQueryWithFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQueryWithFormat:">-executeQueryWithFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>executeQuery:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This method does not technically perform a traditional printf-style replacement. What this method actually does is replace the printf-style percent sequences with a SQLite <code>?</code> placeholder, and then bind values to that placeholder. Thus the following command</p>
+
+</div>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeQueryWithFormat</span><span class="p">:</span><span class="s">@"SELECT * FROM test WHERE name=%@"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
+
+<p>is actually replacing the <code>%@</code> with <code>?</code> placeholder, and then performing something equivalent to <code>&lt;executeQuery:&gt;</code></p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT * FROM test WHERE name=?"</span><span class="p">,</span> <span class="s">@"Gus"</span><span class="p">];</span>
+</code></pre>
+
+<p>There are two reasons why this distinction is important. First, the printf-style escape sequences can only be used where it is permissible to use a SQLite <code>?</code> placeholder. You can use it only for values in SQL statements, but not for table names or column names or any other non-value context. This method also cannot be used in conjunction with <code>pragma</code> statements and the like. Second, note the lack of quotation marks in the SQL. The <code>WHERE</code> clause was <em>not</em> <code>WHERE name=&#39;%@&#39;</code> (like you might have to do if you built a SQL statement using <code>NSString</code> method <code>stringWithFormat</code> ), but rather simply <code>WHERE name=%@</code>.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQueryWithFormat</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">format</span><span class="p">,</span>
+ <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL to be performed, with <code>printf</code>-style escape sequences, followed by ptional parameters to bind to use in conjunction with the <code>printf</code>-style escape sequences in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:withArgumentsInArray:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:withArgumentsInArray:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:withArgumentsInArray:">-executeQuery:<wbr>withArgumentsInArray:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>-executeQuery:values:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withArgumentsInArray</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withArgumentsIn</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:values:error:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:values:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:values:error:">-executeQuery:<wbr>values:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+
+<p>This is similar to <code>&lt;executeQuery:withArgumentsInArray:&gt;</code>, except that this also accepts a pointer to a <code>NSError</code> pointer, so that errors can be returned.</p>
+
+<p>In Swift, this throws errors, as if it were defined as follows:</p>
+
+<p><code>func executeQuery(sql: String, values: [Any]?) throws -&gt; FMResultSet!</code></p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
+
+</div><div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>When called from Swift, only use the first two parameters, <code>sql</code> and <code>values</code>. This but throws the error.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">values</span><span class="p">:(</span><span class="n">NSArray</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">values</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">]?)</span> <span class="k">throws</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>values</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSArray</code> of objects to be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:withParameterDictionary:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:withParameterDictionary:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:withParameterDictionary:">-executeQuery:<wbr>withParameterDictionary:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Execute select statement</p>
+
+<p>Executing queries returns an <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>lastErrorMessage</code> and <code>lastErrorMessage</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; (via <code>&lt;[FMResultSet next]&gt;</code>) from one record to the other.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>FMResultSet</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="%5BFMResultSet%20next%5D"><code>FMResultSet next</code></a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">withParameterDictionary</span><span class="p">:(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">arguments</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withParameterDictionary</span> <span class="nv">arguments</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]?)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SELECT statement to be performed, with optional <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSDictionary</code> of objects keyed by column names that will be used when binding values to the <code>?</code> placeholders in the SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> for the result set upon success; <code>nil</code> upon failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)executeQuery:withVAList:"></a>
+ <a name="//apple_ref/objc/Method/-executeQuery:withVAList:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)executeQuery:withVAList:">-executeQuery:<wbr>withVAList:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">executeQuery</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span> <span class="nf">withVAList</span><span class="p">:(</span><span class="kt">va_list</span><span class="p">)</span><span class="nv">args</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">executeQuery</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">withVAList</span> <span class="nv">args</span><span class="p">:</span> <span class="kt">CVaListPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)prepare:"></a>
+ <a name="//apple_ref/objc/Method/-prepare:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)prepare:">-prepare:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Prepare SQL statement.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="p">)</span><span class="nf">prepare</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">prepare</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>SQL statement to prepare, generally with <code>?</code> placeholders.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Transactions"></a>
+ <a name="//apple_ref/objc/Section/Transactions" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Transactions"></a>
+ <h3 class="section-name"><p>Transactions</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginTransaction">-beginTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin a transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginDeferredTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Unlike SQLite&rsquo;s <code>BEGIN TRANSACTION</code>, this method currently performs
+ an exclusive transaction, not a deferred transaction. This behavior
+ is likely to change in future versions of FMDB, whereby this method
+ will likely eventually adopt standard SQLite behavior and perform
+ deferred transactions. If you really need exclusive tranaction, it is
+ recommended that you use <code>beginExclusiveTransaction,</code> instead, not
+ only to make your intent explicit, but also to future-proof your code.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginDeferredTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginDeferredTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginDeferredTransaction">-beginDeferredTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin a deferred transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginDeferredTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginDeferredTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginImmediateTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginImmediateTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginImmediateTransaction">-beginImmediateTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin an immediate transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginImmediateTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginImmediateTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)beginExclusiveTransaction"></a>
+ <a name="//apple_ref/objc/Method/-beginExclusiveTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)beginExclusiveTransaction">-beginExclusiveTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Begin an exclusive transaction</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">beginExclusiveTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">beginExclusiveTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)commit"></a>
+ <a name="//apple_ref/objc/Method/-commit" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)commit">-commit</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Commit a transaction</p>
+
+<p>Commit a transaction that was initiated with either <code>&lt;beginTransaction&gt;</code> or with <code>&lt;beginDeferredTransaction&gt;</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginDeferredTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollback</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">commit</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">commit</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rollback"></a>
+ <a name="//apple_ref/objc/Method/-rollback" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rollback">-rollback</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Rollback a transaction</p>
+
+<p>Rollback a transaction that was initiated with either <code>&lt;beginTransaction&gt;</code> or with <code>&lt;beginDeferredTransaction&gt;</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>beginDeferredTransaction</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>commit</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>isInTransaction</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">rollback</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rollback</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)isInTransaction"></a>
+ <a name="//apple_ref/objc/Property/isInTransaction" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)isInTransaction">isInTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Identify whether currently in a transaction or not</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ beginTransaction
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ beginDeferredTransaction
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ commit
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ rollback
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">isInTransaction</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">isInTransaction</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)inTransaction"></a>
+ <a name="//apple_ref/objc/Method/-inTransaction" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)inTransaction">-inTransaction</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use isInTransaction property instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">inTransaction</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use isInTransaction property instead"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inTransaction</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Cached%20statements%20and%20result%20sets"></a>
+ <a name="//apple_ref/objc/Section/Cached statements and result sets" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Cached%20statements%20and%20result%20sets"></a>
+ <h3 class="section-name"><p>Cached statements and result sets</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)clearCachedStatements"></a>
+ <a name="//apple_ref/objc/Method/-clearCachedStatements" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)clearCachedStatements">-clearCachedStatements</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Clear cached statements</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">clearCachedStatements</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">clearCachedStatements</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)closeOpenResultSets"></a>
+ <a name="//apple_ref/objc/Method/-closeOpenResultSets" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)closeOpenResultSets">-closeOpenResultSets</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close all open result sets</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">closeOpenResultSets</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">closeOpenResultSets</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)hasOpenResultSets"></a>
+ <a name="//apple_ref/objc/Property/hasOpenResultSets" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)hasOpenResultSets">hasOpenResultSets</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether database has any open result sets</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">hasOpenResultSets</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">hasOpenResultSets</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if there are open result sets; <code>NO</code> if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)shouldCacheStatements"></a>
+ <a name="//apple_ref/objc/Property/shouldCacheStatements" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)shouldCacheStatements">shouldCacheStatements</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Whether should cache statements or not</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="n">BOOL</span> <span class="n">shouldCacheStatements</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">shouldCacheStatements</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)interrupt"></a>
+ <a name="//apple_ref/objc/Method/-interrupt" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)interrupt">-interrupt</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Interupt pending database operation</p>
+
+<p>This method causes any pending database operation to abort and return at its earliest opportunity</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">interrupt</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">interrupt</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Encryption%20methods"></a>
+ <a name="//apple_ref/objc/Section/Encryption methods" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Encryption%20methods"></a>
+ <h3 class="section-name"><p>Encryption methods</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)setKey:"></a>
+ <a name="//apple_ref/objc/Method/-setKey:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)setKey:">-setKey:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Set encryption key.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">setKey</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">key</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">setKey</span><span class="p">(</span><span class="n">_</span> <span class="nv">key</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>key</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The key to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rekey:"></a>
+ <a name="//apple_ref/objc/Method/-rekey:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rekey:">-rekey:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Reset encryption key</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">rekey</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">key</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rekey</span><span class="p">(</span><span class="n">_</span> <span class="nv">key</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>key</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The key to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)setKeyWithData:"></a>
+ <a name="//apple_ref/objc/Method/-setKeyWithData:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)setKeyWithData:">-setKeyWithData:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Set encryption key using <code>keyData</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">setKeyWithData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">keyData</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">setKeyWith</span><span class="p">(</span><span class="n">_</span> <span class="nv">keyData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>keyData</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSData</code> to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rekeyWithData:"></a>
+ <a name="//apple_ref/objc/Method/-rekeyWithData:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rekeyWithData:">-rekeyWithData:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Reset encryption key using <code>keyData</code>.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://www.zetetic.net/sqlcipher/">https://www.zetetic.net/sqlcipher/</a></p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You need to have purchased the sqlite encryption extensions for this method to work.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">rekeyWithData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">keyData</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rekey</span><span class="p">(</span><span class="n">with</span> <span class="nv">keyData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>keyData</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSData</code> to be used.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if success, <code>NO</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/General%20inquiry%20methods"></a>
+ <a name="//apple_ref/objc/Section/General inquiry methods" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/General%20inquiry%20methods"></a>
+ <h3 class="section-name"><p>General inquiry methods</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)databasePath"></a>
+ <a name="//apple_ref/objc/Property/databasePath" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)databasePath">databasePath</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The path of the database file.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">databasePath</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">databasePath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)databaseURL"></a>
+ <a name="//apple_ref/objc/Property/databaseURL" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)databaseURL">databaseURL</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The file URL of the database file.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSURL</span> <span class="o">*</span><span class="n">databaseURL</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">databaseURL</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)sqliteHandle"></a>
+ <a name="//apple_ref/objc/Property/sqliteHandle" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)sqliteHandle">sqliteHandle</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The underlying SQLite handle .</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">sqliteHandle</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">sqliteHandle</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>sqlite3</code> pointer.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Retrieving%20error%20codes"></a>
+ <a name="//apple_ref/objc/Section/Retrieving error codes" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Retrieving%20error%20codes"></a>
+ <h3 class="section-name"><p>Retrieving error codes</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastErrorMessage"></a>
+ <a name="//apple_ref/objc/Method/-lastErrorMessage" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastErrorMessage">-lastErrorMessage</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last error message</p>
+
+<p>Returns the English-language text that describes the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/errcode.html">sqlite3_errmsg()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="n">lastErrorMessage</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastErrorMessage</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">String</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSString</code> of the last error message.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastErrorCode"></a>
+ <a name="//apple_ref/objc/Method/-lastErrorCode" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastErrorCode">-lastErrorCode</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last error code</p>
+
+<p>Returns the numeric result code or extended result code for the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/errcode.html">sqlite3_errcode()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="n">lastErrorCode</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastErrorCode</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Integer value of the last error code.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastExtendedErrorCode"></a>
+ <a name="//apple_ref/objc/Method/-lastExtendedErrorCode" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastExtendedErrorCode">-lastExtendedErrorCode</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last extended error code</p>
+
+<p>Returns the numeric extended result code for the most recent failed SQLite API call associated with a database connection. If a prior API call failed but the most recent API call succeeded, this return value is undefined.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/errcode.html">sqlite3_errcode()</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/rescode.html#primary_result_codes_versus_extended_result_codes">2. Primary Result Codes versus Extended Result Codes</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/rescode.html#extrc">5. Extended Result Code List</a></p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="n">lastExtendedErrorCode</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastExtendedErrorCode</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Integer value of the last extended error code.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)hadError"></a>
+ <a name="//apple_ref/objc/Method/-hadError" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)hadError">-hadError</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Had error</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastError</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">hadError</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">hadError</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if there was an error, <code>NO</code> if no error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)lastError"></a>
+ <a name="//apple_ref/objc/Method/-lastError" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)lastError">-lastError</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Last error</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorCode</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>lastErrorMessage</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSError</span> <span class="o">*</span><span class="p">)</span><span class="n">lastError</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">lastError</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Error</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSError</code> representing the last error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)maxBusyRetryTimeInterval"></a>
+ <a name="//apple_ref/objc/Property/maxBusyRetryTimeInterval" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)maxBusyRetryTimeInterval">maxBusyRetryTimeInterval</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="n">NSTimeInterval</span> <span class="n">maxBusyRetryTimeInterval</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">maxBusyRetryTimeInterval</span><span class="p">:</span> <span class="kt">TimeInterval</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Save%20points"></a>
+ <a name="//apple_ref/objc/Section/Save points" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Save%20points"></a>
+ <h3 class="section-name"><p>Save points</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)startSavePointWithName:error:"></a>
+ <a name="//apple_ref/objc/Method/-startSavePointWithName:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)startSavePointWithName:error:">-startSavePointWithName:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Start save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>releaseSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollbackToSavePointWithName:error:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">startSavePointWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">startSavePoint</span><span class="p">(</span><span class="n">withName</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of save point.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)releaseSavePointWithName:error:"></a>
+ <a name="//apple_ref/objc/Method/-releaseSavePointWithName:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)releaseSavePointWithName:error:">-releaseSavePointWithName:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Release save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>startSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollbackToSavePointWithName:error:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">releaseSavePointWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">releaseSavePoint</span><span class="p">(</span><span class="n">withName</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of save point.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)rollbackToSavePointWithName:error:"></a>
+ <a name="//apple_ref/objc/Method/-rollbackToSavePointWithName:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)rollbackToSavePointWithName:error:">-rollbackToSavePointWithName:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Roll back to save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>startSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>releaseSavePointWithName:error:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">rollbackToSavePointWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">rollbackToSavePoint</span><span class="p">(</span><span class="n">withName</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of save point.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A <code>NSError</code> object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success; <code>NO</code> on failure. If failed, you can call <code>lastError</code> , <code>lastErrorCode</code> , or <code>lastErrorMessage</code> for diagnostic information regarding the failure.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)inSavePoint:"></a>
+ <a name="//apple_ref/objc/Method/-inSavePoint:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)inSavePoint:">-inSavePoint:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Start save point</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>startSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>releaseSavePointWithName:error:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>rollbackToSavePointWithName:error:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">inSavePoint</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inSavePoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Error</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Block of code to perform from within save point.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The NSError corresponding to the error, if any. If no error, returns <code>nil</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Checkpoint"></a>
+ <a name="//apple_ref/objc/Section/Checkpoint" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Checkpoint"></a>
+ <h3 class="section-name"><p>Checkpoint</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)checkpoint:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)checkpoint:error:">-checkpoint:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for <code>sqlite3_wal_checkpoint_v2</code></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSError</code> corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success, otherwise <code>NO</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)checkpoint:name:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)checkpoint:name:error:">-checkpoint:<wbr>name:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for <code>sqlite3_wal_checkpoint_v2</code></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for <code>sqlite3_wal_checkpoint_v2</code></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSError</code> corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success, otherwise <code>NO</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)checkpoint:name:logFrameCount:checkpointCount:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:logFrameCount:checkpointCount:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)checkpoint:name:logFrameCount:checkpointCount:error:">-checkpoint:<wbr>name:<wbr>logFrameCount:<wbr>checkpointCount:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">logFrameCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">logFrameCount</span>
+ <span class="nf">checkpointCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">checkpointCount</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">logFrameCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?,</span> <span class="nv">checkpointCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>logFrameCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not <code>NULL</code> , then this is set to the total number of frames in the log file or to -1 if the checkpoint could not run because of an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not <code>NULL</code> , then this is set to the total number of checkpointed frames in the log file (including any that were already checkpointed before the function was called) or to -1 if the checkpoint could not run due to an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> on success, otherwise <code>NO</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/SQLite%20library%20status"></a>
+ <a name="//apple_ref/objc/Section/SQLite library status" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/SQLite%20library%20status"></a>
+ <h3 class="section-name"><p>SQLite library status</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)isSQLiteThreadSafe"></a>
+ <a name="//apple_ref/objc/Method/+isSQLiteThreadSafe" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)isSQLiteThreadSafe">+isSQLiteThreadSafe</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test to see if the library is threadsafe</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/threadsafe.html">sqlite3_threadsafe()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">isSQLiteThreadSafe</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">isSQLiteThreadSafe</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NO</code> if and only if SQLite was compiled with mutexing code omitted due to the <code>SQLITE_THREADSAFE</code> compile-time option being set to 0.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)limitFor:value:"></a>
+ <a name="//apple_ref/objc/Method/-limitFor:value:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)limitFor:value:">-limitFor:<wbr>value:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Examine/set limits</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/limit.html">sqlite3_limit()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">limitFor</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">type</span> <span class="nf">value</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">newLimit</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">limit</span><span class="p">(</span><span class="k">for</span> <span class="nv">type</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">value</span> <span class="nv">newLimit</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>type</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The type of limit. See <a href="https://sqlite.org/c3ref/c_limit_attached.html">https://sqlite.org/c3ref/c_limit_attached.html</a></p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>newLimit</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The new limit value. Use -1 if you don&rsquo;t want to change the limit, but rather only want to check it.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Regardless, returns previous value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)sqliteLibVersion"></a>
+ <a name="//apple_ref/objc/Method/+sqliteLibVersion" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)sqliteLibVersion">+sqliteLibVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Run-time library version numbers</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/libversion.html">sqlite3_libversion()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="n">sqliteLibVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">sqliteLibVersion</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">String</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The sqlite library version string.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)FMDBUserVersion"></a>
+ <a name="//apple_ref/objc/Method/+FMDBUserVersion" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)FMDBUserVersion">+FMDBUserVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The FMDB version number as a string in the form of <code>&quot;2.7.7&quot;</code> .</p>
+
+<p>If you want to compare version number strings, you can use NSNumericSearch option:</p>
+<pre class="highlight objective_c"><code><span class="n">NSComparisonResult</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">FMDBUserVersion</span><span class="p">]</span> <span class="nf">compare</span><span class="p">:</span><span class="s">@"2.11.0"</span> <span class="nf">options</span><span class="p">:</span><span class="n">NSNumericSearch</span><span class="p">];</span>
+</code></pre>
+
+<p>@returns The version number string.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="n">FMDBUserVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">fmdbUserVersion</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">String</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)FMDBVersion"></a>
+ <a name="//apple_ref/objc/Method/+FMDBVersion" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(cm)FMDBVersion">+FMDBVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use FMDBUserVersion instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>The FMDB version</p>
+
+<p>This returns the FMDB as hexadecimal value, e.g., <code>0x0243</code> for version 2.4.3.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ This routine will not work if any component of the version number exceeds 15.
+ For example, if it is version <code>2.17.3</code> , this will max out at <code>0x2f3.</code>
+ For this reason, we would recommend using <code>FMDBUserVersion</code> and with <code>NSNumericSearch</code> option, e.g.
+
+</div>
+<pre class="highlight objective_c"><code> <span class="n">NSComparisonResult</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[[</span><span class="n">FMDatabase</span> <span class="nf">FMDBUserVersion</span><span class="p">]</span> <span class="nf">compare</span><span class="p">:</span><span class="s">@"2.11.0"</span> <span class="nf">options</span><span class="p">:</span><span class="n">NSNumericSearch</span><span class="p">];</span>
+</code></pre>
+
+<p>@returns The version number in hexadecimal, e.g., <code>0x0243</code> for version 2.4.3. If any component exceeds what can be
+ can be represented in four bits, we&rsquo;ll max it out at <code>0xf</code> .</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">SInt32</span><span class="p">)</span><span class="n">FMDBVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">fmdbVersion</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Make%20SQL%20function"></a>
+ <a name="//apple_ref/objc/Section/Make SQL function" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Make%20SQL%20function"></a>
+ <h3 class="section-name"><p>Make SQL function</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)makeFunctionNamed:arguments:block:"></a>
+ <a name="//apple_ref/objc/Method/-makeFunctionNamed:arguments:block:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)makeFunctionNamed:arguments:block:">-makeFunctionNamed:<wbr>arguments:<wbr>block:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Adds SQL functions or aggregates or to redefine the behavior of existing SQL functions or aggregates.</p>
+
+<p>For example:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">makeFunctionNamed</span><span class="p">:</span><span class="s">@"RemoveDiacritics"</span> <span class="nf">arguments</span><span class="p">:</span><span class="mi">1</span> <span class="n">block</span><span class="o">:^</span><span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="n">context</span><span class="p">,</span> <span class="kt">int</span> <span class="n">argc</span><span class="p">,</span> <span class="kt">void</span> <span class="o">**</span><span class="n">argv</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">SqliteValueType</span> <span class="n">type</span> <span class="o">=</span> <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">valueType</span><span class="p">:</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">]];</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">type</span> <span class="o">==</span> <span class="n">SqliteValueTypeNull</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">resultNullInContext</span><span class="p">:</span><span class="n">context</span><span class="p">];</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">type</span> <span class="o">!=</span> <span class="n">SqliteValueTypeText</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">resultError</span><span class="p">:</span><span class="s">@"Expected text"</span> <span class="nf">context</span><span class="p">:</span><span class="n">context</span><span class="p">];</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">string</span> <span class="o">=</span> <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">valueString</span><span class="p">:</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">]];</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">string</span> <span class="nf">stringByFoldingWithOptions</span><span class="p">:</span><span class="n">NSDiacriticInsensitiveSearch</span> <span class="nf">locale</span><span class="p">:</span><span class="nb">nil</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">resultString</span><span class="p">:</span><span class="n">result</span> <span class="nf">context</span><span class="p">:</span><span class="n">context</span><span class="p">];</span>
+<span class="p">}];</span>
+
+<span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT * FROM employees WHERE RemoveDiacritics(first_name) LIKE 'jose'"</span><span class="p">];</span>
+<span class="n">NSAssert</span><span class="p">(</span><span class="n">rs</span><span class="p">,</span> <span class="s">@"Error %@"</span><span class="p">,</span> <span class="p">[</span><span class="n">db</span> <span class="nf">lastErrorMessage</span><span class="p">]);</span>
+</code></pre>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/c3ref/create_function.html">sqlite3_create_function()</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">makeFunctionNamed</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">arguments</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">arguments</span>
+ <span class="nf">block</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span> <span class="kt">int</span><span class="p">,</span>
+ <span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">makeFunctionNamed</span><span class="p">(</span><span class="n">_</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">arguments</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="nv">block</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="kt">UnsafeMutableRawPointer</span><span class="p">,</span> <span class="kt">Int32</span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">UnsafeMutableRawPointer</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of function.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>arguments</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Maximum number of parameters.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The block of code for the function.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)makeFunctionNamed:maximumArguments:withBlock:"></a>
+ <a name="//apple_ref/objc/Method/-makeFunctionNamed:maximumArguments:withBlock:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)makeFunctionNamed:maximumArguments:withBlock:">-makeFunctionNamed:<wbr>maximumArguments:<wbr>withBlock:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use makeFunctionNamed:arguments:block:</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">makeFunctionNamed</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">name</span> <span class="nf">maximumArguments</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">count</span> <span class="nf">withBlock</span><span class="p">:(</span><span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="kt">void</span> <span class="o">*</span><span class="n">context</span><span class="p">,</span> <span class="kt">int</span> <span class="n">argc</span><span class="p">,</span> <span class="kt">void</span> <span class="o">*</span> <span class="n">_Nonnull</span> <span class="o">*</span> <span class="n">_Nonnull</span> <span class="n">argv</span><span class="p">))</span><span class="nv">block</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use makeFunctionNamed:arguments:block:"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">makeFunctionNamed</span><span class="p">(</span><span class="n">_</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">maximumArguments</span> <span class="nv">count</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">with</span> <span class="nv">block</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="kt">UnsafeMutableRawPointer</span><span class="p">,</span> <span class="kt">Int32</span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">UnsafeMutableRawPointer</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueType:"></a>
+ <a name="//apple_ref/objc/Method/-valueType:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueType:">-valueType:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Enums/SqliteValueType.html">SqliteValueType</a></span><span class="p">)</span><span class="nf">valueType</span><span class="p">:(</span><span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">argv</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueType</span><span class="p">(</span><span class="n">_</span> <span class="nv">argv</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Enums/SqliteValueType.html">SqliteValueType</a></span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueInt:"></a>
+ <a name="//apple_ref/objc/Method/-valueInt:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueInt:">-valueInt:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get integer value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">valueInt</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueInt</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The integer value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueLong:"></a>
+ <a name="//apple_ref/objc/Method/-valueLong:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueLong:">-valueLong:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get long value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">valueLong</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueLong</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The long value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueDouble:"></a>
+ <a name="//apple_ref/objc/Method/-valueDouble:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueDouble:">-valueDouble:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get double value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">valueDouble</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueDouble</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The double value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueData:"></a>
+ <a name="//apple_ref/objc/Method/-valueData:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueData:">-valueData:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get <code>NSData</code> value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">valueData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueData</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The data object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)valueString:"></a>
+ <a name="//apple_ref/objc/Method/-valueString:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)valueString:">-valueString:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Get string value of parameter in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">valueString</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">valueString</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The argument whose value to return.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The string value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultNullInContext:"></a>
+ <a name="//apple_ref/objc/Method/-resultNullInContext:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultNullInContext:">-resultNullInContext:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return null value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultNullInContext</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultNull</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the null value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultInt:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultInt:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultInt:context:">-resultInt:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return integer value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultInt</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultInt</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The integer value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultLong:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultLong:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultLong:context:">-resultLong:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return long value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultLong</span><span class="p">:(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultLong</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Int64</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The long value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultDouble:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultDouble:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultDouble:context:">-resultDouble:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return double value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultDouble</span><span class="p">:(</span><span class="kt">double</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultDouble</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Double</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The double value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultData:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultData:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultData:context:">-resultData:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSData</code> object from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultData</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSData</span> <span class="o">*</span><span class="p">)</span><span class="nv">data</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultData</span><span class="p">(</span><span class="n">_</span> <span class="nv">data</span><span class="p">:</span> <span class="kt">Data</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>data</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The <code>NSData</code> object to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultString:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultString:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultString:context:">-resultString:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return string value from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultString</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">value</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultString</span><span class="p">(</span><span class="n">_</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>value</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The string value to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the value will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultError:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultError:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultError:context:">-resultError:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return error string from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultError</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">error</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultError</span><span class="p">(</span><span class="n">_</span> <span class="nv">error</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The error string to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultErrorCode:context:"></a>
+ <a name="//apple_ref/objc/Method/-resultErrorCode:context:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultErrorCode:context:">-resultErrorCode:<wbr>context:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return error code from custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultErrorCode</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">errorCode</span> <span class="nf">context</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultErrorCode</span><span class="p">(</span><span class="n">_</span> <span class="nv">errorCode</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>errorCode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The integer error code to be returned.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultErrorNoMemoryInContext:"></a>
+ <a name="//apple_ref/objc/Method/-resultErrorNoMemoryInContext:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultErrorNoMemoryInContext:">-resultErrorNoMemoryInContext:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Report memory error in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultErrorNoMemoryInContext</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultErrorNoMemory</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)resultErrorTooBigInContext:"></a>
+ <a name="//apple_ref/objc/Method/-resultErrorTooBigInContext:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)resultErrorTooBigInContext:">-resultErrorTooBigInContext:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Report that string or BLOB is too long to represent in custom function.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>makeFunctionNamed:arguments:block:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">resultErrorTooBigInContext</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="nv">context</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultErrorTooBig</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>context</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The context to which the error will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Date%20formatter"></a>
+ <a name="//apple_ref/objc/Section/Date formatter" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Date%20formatter"></a>
+ <h3 class="section-name"><p>Date formatter</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(cm)storeableDateFormat:"></a>
+ <a name="//apple_ref/objc/Method/+storeableDateFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(cm)storeableDateFormat:">+storeableDateFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Generate an <code>NSDateFormatter</code> that won&rsquo;t be broken by permutations of timezones or locales.</p>
+
+<p>Use this method to generate values to set the dateFormat property.</p>
+
+<p>Example:</p>
+<pre class="highlight objective_c"><code><span class="n">myDB</span><span class="p">.</span><span class="n">dateFormat</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">storeableDateFormat</span><span class="p">:</span><span class="s">@"yyyy-MM-dd HH:mm:ss"</span><span class="p">];</span>
+</code></pre>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Note that <code>NSDateFormatter</code> is not thread-safe, so the formatter generated by this method should be assigned to only one FMDB instance and should not be used for other purposes.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSDateFormatter</span> <span class="o">*</span><span class="p">)</span><span class="nf">storeableDateFormat</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">format</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">storeableDateFormat</span><span class="p">(</span><span class="n">_</span> <span class="nv">format</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">DateFormatter</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A valid NSDateFormatter format string.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>A <code>NSDateFormatter</code> that can be used for converting dates to strings and vice versa.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)hasDateFormatter"></a>
+ <a name="//apple_ref/objc/Method/-hasDateFormatter" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)hasDateFormatter">-hasDateFormatter</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test whether the database has a date formatter assigned.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">hasDateFormatter</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">hasDateFormatter</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if there is a date formatter; <code>NO</code> if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)setDateFormat:"></a>
+ <a name="//apple_ref/objc/Method/-setDateFormat:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)setDateFormat:">-setDateFormat:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Set to a date formatter to use string dates with sqlite instead of the default UNIX timestamps.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Note there is no direct getter for the <code>NSDateFormatter</code> , and you should not use the formatter you pass to FMDB for other purposes, as <code>NSDateFormatter</code> is not thread-safe.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">setDateFormat</span><span class="p">:(</span><span class="n">NSDateFormatter</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">format</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">setDateFormat</span><span class="p">(</span><span class="n">_</span> <span class="nv">format</span><span class="p">:</span> <span class="kt">DateFormatter</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>format</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Set to nil to use UNIX timestamps. Defaults to nil. Should be set using a formatter generated using <code>FMDatabase:storeableDateFormat</code> .</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)dateFromString:"></a>
+ <a name="//apple_ref/objc/Method/-dateFromString:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)dateFromString:">-dateFromString:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Convert the supplied NSString to NSDate, using the current database formatter.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateFromString</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">s</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">date</span><span class="p">(</span><span class="n">from</span> <span class="nv">s</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Date</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>s</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> to convert to <code>NSDate</code> .</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>NSDate</code> object; or <code>nil</code> if no formatter is set.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)stringFromDate:"></a>
+ <a name="//apple_ref/objc/Method/-stringFromDate:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)stringFromDate:">-stringFromDate:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Convert the supplied NSDate to NSString, using the current database formatter.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasDateFormatter</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setDateFormat:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>dateFromString:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>stringFromDate:</p>
+
+</div><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>storeableDateFormat:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringFromDate</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSDate</span> <span class="o">*</span><span class="p">)</span><span class="nv">date</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">string</span><span class="p">(</span><span class="n">from</span> <span class="nv">date</span><span class="p">:</span> <span class="kt">Date</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>date</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSDate</code> of date to convert to <code>NSString</code> .</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>NSString</code> representation of the date; <code>nil</code> if no formatter is set.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Return%20results%20of%20SQL%20to%20variable"></a>
+ <a name="//apple_ref/objc/Section/Return results of SQL to variable" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Return%20results%20of%20SQL%20to%20variable"></a>
+ <h3 class="section-name"><p>Return results of SQL to variable</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)intForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-intForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)intForQuery:">-intForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>int</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">intForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>int</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)longForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-longForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)longForQuery:">-longForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>long</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span><span class="p">)</span><span class="nf">longForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)boolForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-boolForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)boolForQuery:">-boolForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>BOOL</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">boolForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>BOOL</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)doubleForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-doubleForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)doubleForQuery:">-doubleForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>double</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">doubleForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>double</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)stringForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-stringForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)stringForQuery:">-stringForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSString</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSString</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)dataForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-dataForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)dataForQuery:">-dataForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSData</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSData</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)dateForQuery:"></a>
+ <a name="//apple_ref/objc/Method/-dateForQuery:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)dateForQuery:">-dateForQuery:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Return <code>NSDate</code> value for query</p>
+<div class="aside aside-note">
+ <p class="aside-title">Note</p>
+ <p>This is not available from Swift.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateForQuery</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">query</span><span class="p">,</span> <span class="p">...;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>query</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL query to be performed, followed by a list of parameters that will be bound to the <code>?</code> placeholders in the SQL query.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSDate</code> value.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Schema%20related%20operations"></a>
+ <a name="//apple_ref/objc/Section/Schema related operations" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Schema%20related%20operations"></a>
+ <h3 class="section-name"><p>Schema related operations</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)tableExists:"></a>
+ <a name="//apple_ref/objc/Method/-tableExists:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)tableExists:">-tableExists:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Does table exist in database?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">tableExists</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">tableExists</span><span class="p">(</span><span class="n">_</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table being looked for.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if table found; <code>NO</code> if not found.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)getSchema"></a>
+ <a name="//apple_ref/objc/Method/-getSchema" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)getSchema">-getSchema</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The schema of the database.</p>
+
+<p>This will be the schema for the entire database. For each entity, each row of the result set will include the following fields:</p>
+
+<ul>
+<li><code>type</code> - The type of entity (e.g. table, index, view, or trigger)</li>
+<li><code>name</code> - The name of the object</li>
+<li><code>tbl_name</code> - The name of the table to which the object references</li>
+<li><code>rootpage</code> - The page number of the root b-tree page for tables and indices</li>
+<li><p><code>sql</code> - The SQL that created the entity</p></li>
+</ul><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/fileformat.html">SQLite File Format</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="n">getSchema</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">getSchema</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> of schema; <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)getTableSchema:"></a>
+ <a name="//apple_ref/objc/Method/-getTableSchema:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)getTableSchema:">-getTableSchema:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>The schema of the database.</p>
+
+<p>This will be the schema for a particular table as report by SQLite <code>PRAGMA</code>, for example:</p>
+<pre class="highlight objective_c"><code><span class="n">PRAGMA</span> <span class="n">table_info</span><span class="p">(</span><span class="err">'</span><span class="n">employees</span><span class="err">'</span><span class="p">)</span>
+</code></pre>
+
+<p>This will report:</p>
+
+<ul>
+<li><code>cid</code> - The column ID number</li>
+<li><code>name</code> - The name of the column</li>
+<li><code>type</code> - The data type specified for the column</li>
+<li><code>notnull</code> - whether the field is defined as NOT NULL (i.e. values required)</li>
+<li><code>dflt_value</code> - The default value for the column</li>
+<li><p><code>pk</code> - Whether the field is part of the primary key of the table</p></li>
+</ul><div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p><a href="https://sqlite.org/pragma.html#pragma_table_info">table_info</a></p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n"><a href="../Classes/FMResultSet.html">FMResultSet</a></span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">getTableSchema</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">getTableSchema</span><span class="p">(</span><span class="n">_</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/FMResultSet.html">FMResultSet</a></span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table for whom the schema will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> of schema; <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)columnExists:inTableWithName:"></a>
+ <a name="//apple_ref/objc/Method/-columnExists:inTableWithName:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)columnExists:inTableWithName:">-columnExists:<wbr>inTableWithName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Test to see if particular column exists for particular table in database</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnExists</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span>
+ <span class="nf">inTableWithName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnExists</span><span class="p">(</span><span class="n">_</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="n">inTableWithName</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column exists in table in question; <code>NO</code> otherwise.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)columnExists:columnName:"></a>
+ <a name="//apple_ref/objc/Method/-columnExists:columnName:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMDatabase(im)columnExists:columnName:">-columnExists:<wbr>columnName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use columnExists:inTableWithName: instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Test to see if particular column exists for particular table in database</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>columnExists:inTableWithName:</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Deprecated - use <code>&lt;columnExists:inTableWithName:&gt;</code> instead.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnExists</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">tableName</span>
+ <span class="nf">columnName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnExists</span><span class="p">(</span><span class="n">_</span> <span class="nv">tableName</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>tableName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of the table.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column exists in table in question; <code>NO</code> otherwise.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(im)validateSQL:error:"></a>
+ <a name="//apple_ref/objc/Method/-validateSQL:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(im)validateSQL:error:">-validateSQL:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Validate SQL statement</p>
+
+<p>This validates SQL statement by performing <code>sqlite3_prepare_v2</code>, but not returning the results, but instead immediately calling <code>sqlite3_finalize</code>.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">validateSQL</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">sql</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">validateSQL</span><span class="p">(</span><span class="n">_</span> <span class="nv">sql</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>sql</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The SQL statement being validated.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>This is a pointer to a <code>NSError</code> object that will receive the autoreleased <code>NSError</code> object if there was any error. If this is <code>nil</code> , no <code>NSError</code> result will be returned.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if validation succeeded without incident; <code>NO</code> otherwise.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Application%20identifier%20tasks"></a>
+ <a name="//apple_ref/objc/Section/Application identifier tasks" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Application%20identifier%20tasks"></a>
+ <h3 class="section-name"><p>Application identifier tasks</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)applicationID"></a>
+ <a name="//apple_ref/objc/Property/applicationID" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)applicationID">applicationID</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve application ID</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>setApplicationID:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="kt">uint32_t</span> <span class="n">applicationID</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">applicationID</span><span class="p">:</span> <span class="kt">UInt32</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>uint32_t</code> numeric value of the application ID.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)applicationIDString"></a>
+ <a name="//apple_ref/objc/Property/applicationIDString" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)applicationIDString">applicationIDString</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve application ID string</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ setApplicationIDString:
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">retain</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">applicationIDString</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">applicationIDString</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/user%20version%20identifier%20tasks"></a>
+ <a name="//apple_ref/objc/Section/user version identifier tasks" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/user%20version%20identifier%20tasks"></a>
+ <h3 class="section-name"><p>user version identifier tasks</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabase(py)userVersion"></a>
+ <a name="//apple_ref/objc/Property/userVersion" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabase(py)userVersion">userVersion</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve user version</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ setUserVersion:
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">)</span> <span class="kt">uint32_t</span> <span class="n">userVersion</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">userVersion</span><span class="p">:</span> <span class="kt">UInt32</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabasePool.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabasePool.html
new file mode 100644
index 0000000..81dac6a
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabasePool.html
@@ -0,0 +1,1467 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMDatabasePool Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMDatabasePool" class="dashAnchor"></a>
+ <a title="FMDatabasePool Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDatabasePool Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDatabasePool</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabasePool</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>Pool of <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> objects.</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></li>
+<li><p><code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> </p></li>
+</ul><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Before using <code>FMDatabasePool</code> , please consider using <code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> instead.</p>
+
+</div>
+
+<p>If you really really really know what you&rsquo;re doing and <code>FMDatabasePool</code> is what
+ you really really need (ie, you&rsquo;re using a read only database), OK you can use
+ it. But just be careful not to deadlock!</p>
+
+<p>For an example on deadlocking, search for:
+ <code>ONLY_USE_THE_POOL_IF_YOU_ARE_DOING_READS_OTHERWISE_YOULL_DEADLOCK_USE_FMDATABASEQUEUE_INSTEAD</code>
+ in the main.m file.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)path"></a>
+ <a name="//apple_ref/objc/Property/path" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)path">path</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Database path</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">copy</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">path</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">path</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)delegate"></a>
+ <a name="//apple_ref/objc/Property/delegate" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)delegate">delegate</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Delegate object</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nullable</span><span class="p">)</span> <span class="n">id</span> <span class="n">delegate</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">unowned(unsafe)</span> <span class="k">var</span> <span class="nv">delegate</span><span class="p">:</span> <span class="kt">AnyObject</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)maximumNumberOfDatabasesToCreate"></a>
+ <a name="//apple_ref/objc/Property/maximumNumberOfDatabasesToCreate" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)maximumNumberOfDatabasesToCreate">maximumNumberOfDatabasesToCreate</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Maximum number of databases to create</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">NSUInteger</span> <span class="n">maximumNumberOfDatabasesToCreate</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">maximumNumberOfDatabasesToCreate</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)openFlags"></a>
+ <a name="//apple_ref/objc/Property/openFlags" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)openFlags">openFlags</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Open flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)vfsName"></a>
+ <a name="//apple_ref/objc/Property/vfsName" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)vfsName">vfsName</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Custom virtual file system name</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">copy</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Initialization"></a>
+ <a name="//apple_ref/objc/Section/Initialization" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Initialization"></a>
+ <h3 class="section-name"><p>Initialization</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:">+databasePoolWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:">+databasePoolWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:flags:">+databasePoolWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path and specified flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databasePoolWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:flags:">+databasePoolWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL and specified flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databasePoolWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithPath:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithPath:">-initWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="n"><a href="../Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithURL:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithURL:">-initWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file `NSURL of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:">-initWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="n"><a href="../Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:">-initWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span> <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithPath:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:vfs:">-initWithPath:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="n"><a href="../Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)initWithURL:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:vfs:">-initWithURL:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create pool using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabasePool</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(cm)databaseClass"></a>
+ <a name="//apple_ref/objc/Method/+databaseClass" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(cm)databaseClass">+databaseClass</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+
+<p>Subclasses can override this method to return specified Class of &lsquo;FMDatabase&rsquo; subclass.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">Class</span><span class="p">)</span><span class="n">databaseClass</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">databaseClass</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">AnyClass</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Keeping%20track%20of%20checked%20in/out%20databases"></a>
+ <a name="//apple_ref/objc/Section/Keeping track of checked in/out databases" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Keeping%20track%20of%20checked%20in/out%20databases"></a>
+ <h3 class="section-name"><p>Keeping track of checked in/out databases</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)countOfCheckedInDatabases"></a>
+ <a name="//apple_ref/objc/Property/countOfCheckedInDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)countOfCheckedInDatabases">countOfCheckedInDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Number of checked-in databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">NSUInteger</span> <span class="n">countOfCheckedInDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">countOfCheckedInDatabases</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)countOfCheckedOutDatabases"></a>
+ <a name="//apple_ref/objc/Property/countOfCheckedOutDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)countOfCheckedOutDatabases">countOfCheckedOutDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Number of checked-out databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">NSUInteger</span> <span class="n">countOfCheckedOutDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">countOfCheckedOutDatabases</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(py)countOfOpenDatabases"></a>
+ <a name="//apple_ref/objc/Property/countOfOpenDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(py)countOfOpenDatabases">countOfOpenDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Total number of databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="n">NSUInteger</span> <span class="n">countOfOpenDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">countOfOpenDatabases</span><span class="p">:</span> <span class="kt">UInt</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)releaseAllDatabases"></a>
+ <a name="//apple_ref/objc/Method/-releaseAllDatabases" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)releaseAllDatabases">-releaseAllDatabases</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Release all databases in pool</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">releaseAllDatabases</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">releaseAllDatabases</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Perform%20database%20operations%20in%20pool"></a>
+ <a name="//apple_ref/objc/Section/Perform database operations in pool" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Perform%20database%20operations%20in%20pool"></a>
+ <h3 class="section-name"><p>Perform database operations in pool</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inDatabase:"></a>
+ <a name="//apple_ref/objc/Method/-inDatabase:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inDatabase:">-inDatabase:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDatabase</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDatabase</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inTransaction:">-inTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using transaction.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Unlike SQLite&rsquo;s <code>BEGIN TRANSACTION</code>, this method currently performs
+ an exclusive transaction, not a deferred transaction. This behavior
+ is likely to change in future versions of FMDB, whereby this method
+ will likely eventually adopt standard SQLite behavior and perform
+ deferred transactions. If you really need exclusive tranaction, it is
+ recommended that you use <code>inExclusiveTransaction</code>, instead, not only
+ to make your intent explicit, but also to future-proof your code.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inExclusiveTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inExclusiveTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inExclusiveTransaction:">-inExclusiveTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using exclusive transaction.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inExclusiveTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inExclusiveTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inDeferredTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inDeferredTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inDeferredTransaction:">-inDeferredTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using deferred transaction.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDeferredTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDeferredTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inImmediateTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inImmediateTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inImmediateTransaction:">-inImmediateTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using immediate transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inImmediateTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inImmediateTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code><a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabasePool(im)inSavePoint:"></a>
+ <a name="//apple_ref/objc/Method/-inSavePoint:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabasePool(im)inSavePoint:">-inSavePoint:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations in pool using save point.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>You can not nest these, since calling it will pull another database out of the pool and you&rsquo;ll get a deadlock. If you need to nest, use <code>startSavePointWithName:error:</code> instead.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">inSavePoint</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inSavePoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Error</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the <code>FMDatabasePool</code> pool.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>NSError</code> object if error; <code>nil</code> if successful.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabaseQueue.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabaseQueue.html
new file mode 100644
index 0000000..72a5805
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMDatabaseQueue.html
@@ -0,0 +1,1617 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMDatabaseQueue Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMDatabaseQueue" class="dashAnchor"></a>
+ <a title="FMDatabaseQueue Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDatabaseQueue Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDatabaseQueue</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMDatabaseQueue</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>To perform queries and updates on multiple threads, you&rsquo;ll want to use <code>FMDatabaseQueue</code> .</p>
+
+<p>Using a single instance of <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> from multiple threads at once is a bad idea. It has always been OK to make a <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object <em>per thread</em>. Just don&rsquo;t share a single instance across threads, and definitely not across multiple threads at the same time.</p>
+
+<p>Instead, use <code>FMDatabaseQueue</code> . Here&rsquo;s how to use it:</p>
+
+<p>First, make your queue.</p>
+<pre class="highlight objective_c"><code><span class="n">FMDatabaseQueue</span> <span class="o">*</span><span class="n">queue</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabaseQueue</span> <span class="nf">databaseQueueWithPath</span><span class="p">:</span><span class="n">aPath</span><span class="p">];</span>
+</code></pre>
+
+<p>Then use it like so:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inDatabase</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"select * from foo"</span><span class="p">];</span>
+ <span class="k">while</span> <span class="p">([</span><span class="n">rs</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">//…
+</span> <span class="p">}</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p>An easy way to wrap things up in a transaction can be done like this:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inTransaction</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">,</span> <span class="n">BOOL</span> <span class="o">*</span><span class="n">rollback</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">1</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">2</span><span class="p">]];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">3</span><span class="p">]];</span>
+
+ <span class="c1">// if (whoopsSomethingWrongHappened) {
+</span> <span class="c1">// *rollback = YES;
+</span> <span class="c1">// return;
+</span> <span class="c1">// }
+</span>
+ <span class="c1">// etc…
+</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="p">[</span><span class="n">NSNumber</span> <span class="nf">numberWithInt</span><span class="p">:</span><span class="mi">4</span><span class="p">]];</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p><code>FMDatabaseQueue</code> will run the blocks on a serialized queue (hence the name of the class). So if you call <code>FMDatabaseQueue</code> &lsquo;s methods from multiple threads at the same time, they will be executed in the order they are received. This way queries and updates won&rsquo;t step on each other&rsquo;s toes, and every one is happy.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Do not instantiate a single <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> object and use it across multiple threads. Use <code>FMDatabaseQueue</code> instead.</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>The calls to <code>FMDatabaseQueue</code> &rsquo;s methods are blocking. So even though you are passing along blocks, they will <strong>not</strong> be run on another thread.</p>
+
+</div>
+
+<p>@sa FMDatabase</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(py)path"></a>
+ <a name="//apple_ref/objc/Property/path" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(py)path">path</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Path of database</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">path</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">path</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(py)openFlags"></a>
+ <a name="//apple_ref/objc/Property/openFlags" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(py)openFlags">openFlags</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Open flags</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(py)vfsName"></a>
+ <a name="//apple_ref/objc/Property/vfsName" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(py)vfsName">vfsName</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Custom virtual file system name</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">copy</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Initialization,%20opening,%20and%20closing%20of%20queue"></a>
+ <a name="//apple_ref/objc/Section/Initialization, opening, and closing of queue" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Initialization,%20opening,%20and%20closing%20of%20queue"></a>
+ <h3 class="section-name"><p>Initialization, opening, and closing of queue</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:">+databaseQueueWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:">+databaseQueueWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:flags:">+databaseQueueWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/+databaseQueueWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:flags:">+databaseQueueWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">databaseQueueWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file <code>NSURL</code> of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithPath:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithPath:">-initWithPath:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="n"><a href="../Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithURL:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithURL:">-initWithURL:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file `NSURL of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:">-initWithPath:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="n"><a href="../Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:">-initWithURL:<wbr>flags:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span> <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithPath:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:vfs:">-initWithPath:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using path and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithPath</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">aPath</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="n"><a href="../Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path">path</a></span> <span class="nv">aPath</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>aPath</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file path of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:vfs:"></a>
+ <a name="//apple_ref/objc/Method/-initWithURL:flags:vfs:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:vfs:">-initWithURL:<wbr>flags:<wbr>vfs:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Create queue using file URL and specified flags.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nullable</span> <span class="n">instancetype</span><span class="p">)</span><span class="nf">initWithURL</span><span class="p">:(</span><span class="n">NSURL</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">url</span>
+ <span class="nf">flags</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">openFlags</span>
+ <span class="nf">vfs</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">vfsName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">init</span><span class="p">?(</span><span class="nv">url</span><span class="p">:</span> <span class="kt">URL</span><span class="p">?,</span> <span class="n">flags</span> <span class="nv">openFlags</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">,</span> <span class="n">vfs</span> <span class="nv">vfsName</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>url</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The file `NSURL of the database.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>openFlags</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Flags passed to the openWithFlags method of the database</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>vfsName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The name of a custom virtual file system</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The <code>FMDatabaseQueue</code> object. <code>nil</code> on error.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(cm)databaseClass"></a>
+ <a name="//apple_ref/objc/Method/+databaseClass" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(cm)databaseClass">+databaseClass</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+
+<p>Subclasses can override this method to return specified Class of &lsquo;FMDatabase&rsquo; subclass.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">+</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">Class</span><span class="p">)</span><span class="n">databaseClass</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">class</span> <span class="kd">func</span> <span class="nf">databaseClass</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">AnyClass</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>The Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close database used by queue.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)interrupt"></a>
+ <a name="//apple_ref/objc/Method/-interrupt" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)interrupt">-interrupt</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Interupt pending database operation.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">interrupt</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">interrupt</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Dispatching%20database%20operations%20to%20queue"></a>
+ <a name="//apple_ref/objc/Section/Dispatching database operations to queue" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Dispatching%20database%20operations%20to%20queue"></a>
+ <h3 class="section-name"><p>Dispatching database operations to queue</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inDatabase:"></a>
+ <a name="//apple_ref/objc/Method/-inDatabase:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inDatabase:">-inDatabase:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDatabase</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="nv">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDatabase</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inTransaction:">-inTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using transactions.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>Unlike SQLite&rsquo;s <code>BEGIN TRANSACTION</code>, this method currently performs
+ an exclusive transaction, not a deferred transaction. This behavior
+ is likely to change in future versions of FMDB, whereby this method
+ will likely eventually adopt standard SQLite behavior and perform
+ deferred transactions. If you really need exclusive tranaction, it is
+ recommended that you use <code>inExclusiveTransaction</code>, instead, not only
+ to make your intent explicit, but also to future-proof your code.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code> </p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inDeferredTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inDeferredTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inDeferredTransaction:">-inDeferredTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using deferred transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inDeferredTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inDeferredTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inExclusiveTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inExclusiveTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inExclusiveTransaction:">-inExclusiveTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using exclusive transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inExclusiveTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inExclusiveTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inImmediateTransaction:"></a>
+ <a name="//apple_ref/objc/Method/-inImmediateTransaction:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inImmediateTransaction:">-inImmediateTransaction:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations on queue, using immediate transactions.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">inImmediateTransaction</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inImmediateTransaction</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)inSavePoint:"></a>
+ <a name="//apple_ref/objc/Method/-inSavePoint:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)inSavePoint:">-inSavePoint:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Synchronously perform database operations using save point.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">inSavePoint</span><span class="p">:(</span><span class="n">nonnull</span> <span class="kt">void</span> <span class="p">(</span><span class="o">^</span><span class="p">)(</span><span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">,</span>
+ <span class="n">BOOL</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">))</span><span class="n">block</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">inSavePoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">block</span><span class="p">:</span> <span class="p">(</span><span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">,</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">ObjCBool</span><span class="o">&gt;</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Error</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>block</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The code to be run on the queue of <code>FMDatabaseQueue</code></p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Checkpoint"></a>
+ <a name="//apple_ref/objc/Section/Checkpoint" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Checkpoint"></a>
+ <h3 class="section-name"><p>Checkpoint</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)checkpoint:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)checkpoint:error:">-checkpoint:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>YES on success, otherwise NO.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:error:">-checkpoint:<wbr>name:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>YES on success, otherwise NO.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:logFrameCount:checkpointCount:error:"></a>
+ <a name="//apple_ref/objc/Method/-checkpoint:name:logFrameCount:checkpointCount:error:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:logFrameCount:checkpointCount:error:">-checkpoint:<wbr>name:<wbr>logFrameCount:<wbr>checkpointCount:<wbr>error:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs a WAL checkpoint</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">checkpoint</span><span class="p">:(</span><span class="n"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">)</span><span class="nv">checkpointMode</span>
+ <span class="nf">name</span><span class="p">:(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">name</span>
+ <span class="nf">logFrameCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">logFrameCount</span>
+ <span class="nf">checkpointCount</span><span class="p">:(</span><span class="kt">int</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">checkpointCount</span>
+ <span class="nf">error</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">error</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">checkpoint</span><span class="p">(</span><span class="n">_</span> <span class="nv">checkpointMode</span><span class="p">:</span> <span class="kt"><a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a></span><span class="p">,</span> <span class="nv">name</span><span class="p">:</span> <span class="kt">String</span><span class="p">?,</span> <span class="nv">logFrameCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?,</span> <span class="nv">checkpointCount</span><span class="p">:</span> <span class="kt">UnsafeMutablePointer</span><span class="o">&lt;</span><span class="kt">Int32</span><span class="o">&gt;</span><span class="p">?)</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointMode</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The checkpoint mode for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>name</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The db name for sqlite3_wal_checkpoint_v2</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>error</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The NSError corresponding to the error, if any.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>logFrameCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not NULL, then this is set to the total number of frames in the log file or to -1 if the checkpoint could not run because of an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <code>
+ <em>checkpointCount</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>If not NULL, then this is set to the total number of checkpointed frames in the log file (including any that were already checkpointed before the function was called) or to -1 if the checkpoint could not run due to an error or because the database is not in WAL mode.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>YES on success, otherwise NO.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMResultSet.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMResultSet.html
new file mode 100644
index 0000000..d052154
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMResultSet.html
@@ -0,0 +1,2662 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMResultSet Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMResultSet" class="dashAnchor"></a>
+ <a title="FMResultSet Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMResultSet Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMResultSet</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMResultSet</span> <span class="p">:</span> <span class="nc">NSObject</span></code></pre>
+
+ </div>
+ </div>
+ <p>Represents the results of executing a query on an <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> .</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="../Classes/FMDatabase.html">FMDatabase</a></code></li>
+</ul>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)parentDB"></a>
+ <a name="//apple_ref/objc/Property/parentDB" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)parentDB">parentDB</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n"><a href="../Classes/FMDatabase.html">FMDatabase</a></span> <span class="o">*</span><span class="n">parentDB</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">parentDB</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMDatabase.html">FMDatabase</a></span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Properties"></a>
+ <a name="//apple_ref/objc/Section/Properties" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Properties"></a>
+ <h3 class="section-name"><p>Properties</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)query"></a>
+ <a name="//apple_ref/objc/Property/query" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)query">query</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Executed query</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">query</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">query</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)columnNameToIndexMap"></a>
+ <a name="//apple_ref/objc/Property/columnNameToIndexMap" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)columnNameToIndexMap">columnNameToIndexMap</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p><code>NSMutableDictionary</code> mapping column names to numeric index</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readonly</span><span class="p">)</span> <span class="n">NSMutableDictionary</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">columnNameToIndexMap</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">columnNameToIndexMap</span><span class="p">:</span> <span class="kt">NSMutableDictionary</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)statement"></a>
+ <a name="//apple_ref/objc/Property/statement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)statement">statement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p><code><a href="../Classes/FMStatement.html">FMStatement</a></code> used by result set.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n"><a href="../Classes/FMStatement.html">FMStatement</a></span> <span class="o">*</span><span class="n">statement</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">statement</span><span class="p">:</span> <span class="kt"><a href="../Classes/FMStatement.html">FMStatement</a></span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Creating%20and%20closing%20a%20result%20set"></a>
+ <a name="//apple_ref/objc/Section/Creating and closing a result set" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Creating%20and%20closing%20a%20result%20set"></a>
+ <h3 class="section-name"><p>Creating and closing a result set</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close result set</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Iterating%20through%20the%20result%20set"></a>
+ <a name="//apple_ref/objc/Section/Iterating through the result set" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Iterating%20through%20the%20result%20set"></a>
+ <h3 class="section-name"><p>Iterating through the result set</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)next"></a>
+ <a name="//apple_ref/objc/Method/-next" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)next">-next</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve next row for result set.</p>
+
+<p>You must always invoke <code>next</code> or <code>nextWithError</code> before attempting to access the values returned in a query, even if you&rsquo;re only expecting one.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">next</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">next</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if row successfully retrieved; <code>NO</code> if end of result set reached</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)nextWithError:"></a>
+ <a name="//apple_ref/objc/Method/-nextWithError:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)nextWithError:">-nextWithError:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Retrieve next row for result set.</p>
+
+<p>You must always invoke <code>next</code> or <code>nextWithError</code> before attempting to access the values returned in a query, even if you&rsquo;re only expecting one.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">nextWithError</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">nextWithError</span><span class="p">()</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A &lsquo;NSError&rsquo; object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if row successfully retrieved; &lsquo;NO&rsquo; if end of result set reached</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)step"></a>
+ <a name="//apple_ref/objc/Method/-step" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)step">-step</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Perform SQL statement.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">step</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">step</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if successful; &lsquo;NO&rsquo; if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)stepWithError:"></a>
+ <a name="//apple_ref/objc/Method/-stepWithError:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)stepWithError:">-stepWithError:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Perform SQL statement.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>hasAnotherRow</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">stepWithError</span><span class="p">:(</span><span class="n">NSError</span> <span class="o">*</span><span class="n">_Nullable</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nv">outErr</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">stepWithError</span><span class="p">()</span> <span class="k">throws</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>outErr</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>A &lsquo;NSError&rsquo; object to receive any error object (if any).</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if successful; &lsquo;NO&rsquo; if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)hasAnotherRow"></a>
+ <a name="//apple_ref/objc/Method/-hasAnotherRow" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)hasAnotherRow">-hasAnotherRow</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Did the last call to <code>&lt;next&gt;</code> succeed in retrieving another row?</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>next</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>The <code>hasAnotherRow</code> method must follow a call to <code>&lt;next&gt;</code>. If the previous database interaction was something other than a call to <code>next</code>, then this method may return <code>NO,</code> whether there is another row of data or not.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="n">hasAnotherRow</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">hasAnotherRow</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>&lsquo;YES&rsquo; if there is another row; &lsquo;NO&rsquo; if not.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Retrieving%20information%20from%20result%20set"></a>
+ <a name="//apple_ref/objc/Section/Retrieving information from result set" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Retrieving%20information%20from%20result%20set"></a>
+ <h3 class="section-name"><p>Retrieving information from result set</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)columnCount"></a>
+ <a name="//apple_ref/objc/Property/columnCount" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)columnCount">columnCount</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>How many columns in result set</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">)</span> <span class="kt">int</span> <span class="n">columnCount</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">columnCount</span><span class="p">:</span> <span class="kt">Int32</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Integer value of the number of columns.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnIndexForName:"></a>
+ <a name="//apple_ref/objc/Method/-columnIndexForName:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnIndexForName:">-columnIndexForName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Column index for column name</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">columnIndexForName</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnIndex</span><span class="p">(</span><span class="n">forName</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Zero-based index for column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnNameForIndex:"></a>
+ <a name="//apple_ref/objc/Method/-columnNameForIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnNameForIndex:">-columnNameForIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Column name for column index</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">columnNameForIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnName</span><span class="p">(</span><span class="k">for</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>columnName <code>NSString</code> value of the name of the column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)intForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-intForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)intForColumn:">-intForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set integer value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">intForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">int</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)intForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-intForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)intForColumnIndex:">-intForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set integer value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="nf">intForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">int</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-longForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longForColumn:">-longForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>long</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span><span class="p">)</span><span class="nf">longForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">long</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-longForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longForColumnIndex:">-longForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set long value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span><span class="p">)</span><span class="nf">longForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">long</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longLongIntForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-longLongIntForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longLongIntForColumn:">-longLongIntForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">longLongIntForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">longLongInt</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)longLongIntForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-longLongIntForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)longLongIntForColumnIndex:">-longLongIntForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">longLongIntForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">longLongInt</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Int64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-unsignedLongLongIntForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumn:">-unsignedLongLongIntForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>unsigned long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">unsigned</span> <span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">unsignedLongLongIntForColumn</span><span class="p">:</span>
+ <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">unsignedLongLongInt</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UInt64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>unsigned long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-unsignedLongLongIntForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumnIndex:">-unsignedLongLongIntForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>unsigned long long int</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">unsigned</span> <span class="kt">long</span> <span class="kt">long</span><span class="p">)</span><span class="nf">unsignedLongLongIntForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">unsignedLongLongInt</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UInt64</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>unsigned long long int</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)boolForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-boolForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)boolForColumn:">-boolForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>BOOL</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">boolForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bool</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>BOOL</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)boolForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-boolForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)boolForColumnIndex:">-boolForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>BOOL</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">boolForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bool</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>BOOL</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)doubleForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-doubleForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)doubleForColumn:">-doubleForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>double</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">doubleForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">double</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>double</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)doubleForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-doubleForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)doubleForColumnIndex:">-doubleForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>double</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="nf">doubleForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">double</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>double</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)stringForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-stringForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)stringForColumn:">-stringForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSString</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">string</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>String value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)stringForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-stringForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)stringForColumnIndex:">-stringForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSString</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSString</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">stringForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">string</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>String value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dateForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-dateForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dateForColumn:">-dateForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSDate</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">date</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Date</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Date value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dateForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-dateForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dateForColumnIndex:">-dateForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSDate</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDate</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dateForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">date</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Date</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Date value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-dataForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataForColumn:">-dataForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
+
+<p>This is useful when storing binary data in table (such as image or the like).</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">data</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-dataForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataForColumnIndex:">-dataForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">data</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)UTF8StringForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-UTF8StringForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)UTF8StringForColumn:">-UTF8StringForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>(const unsigned char *)</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">UTF8StringForColumn</span><span class="p">:</span>
+ <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">utf8String</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UnsafePointer</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>(const unsigned char *)</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)UTF8StringForColumnName:"></a>
+ <a name="//apple_ref/objc/Method/-UTF8StringForColumnName:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMResultSet(im)UTF8StringForColumnName:">-UTF8StringForColumnName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use UTF8StringForColumn instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="o">*</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">UTF8StringForColumnName</span><span class="p">:(</span><span class="n">NSString</span><span class="o">*</span><span class="p">)</span><span class="nv">columnName</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use UTF8StringForColumn instead"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">utf8String</span><span class="p">(</span><span class="n">forColumnName</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UnsafePointer</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)UTF8StringForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-UTF8StringForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)UTF8StringForColumnIndex:">-UTF8StringForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>(const unsigned char *)</code> value for column.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">UTF8StringForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">utf8String</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">UnsafePointer</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>(const unsigned char *)</code> value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-objectForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectForColumn:">-objectForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>objectForKeyedSubscript:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">object</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForColumnName:"></a>
+ <a name="//apple_ref/objc/Method/-objectForColumnName:" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMResultSet(im)objectForColumnName:">-objectForColumnName:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use objectForColumn instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForColumnName</span><span class="p">:(</span><span class="n">NSString</span><span class="o">*</span><span class="p">)</span><span class="nv">columnName</span> <span class="n">__deprecated_msg</span><span class="p">(</span><span class="s">"Use objectForColumn instead"</span><span class="p">);</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">object</span><span class="p">(</span><span class="n">forColumnName</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-objectForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectForColumnIndex:">-objectForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>objectAtIndexedSubscript:</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">object</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectForKeyedSubscript:"></a>
+ <a name="//apple_ref/objc/Method/-objectForKeyedSubscript:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectForKeyedSubscript:">-objectForKeyedSubscript:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
+
+<p>This method allows the use of the &ldquo;boxed&rdquo; syntax supported in Modern Objective-C. For example, by defining this method, the following syntax is now supported:</p>
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="n">rs</span><span class="p">[</span><span class="s">@"employee_name"</span><span class="p">];</span>
+</code></pre>
+
+<p>This simplified syntax is equivalent to calling:</p>
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForKeyedSubscript</span><span class="p">:</span><span class="s">@"employee_name"</span><span class="p">];</span>
+</code></pre>
+
+<p>which is, it turns out, equivalent to calling:</p>
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForColumnName</span><span class="p">:</span><span class="s">@"employee_name"</span><span class="p">];</span>
+</code></pre>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectForKeyedSubscript</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">subscript</span><span class="p">(</span><span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)objectAtIndexedSubscript:"></a>
+ <a name="//apple_ref/objc/Method/-objectAtIndexedSubscript:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)objectAtIndexedSubscript:">-objectAtIndexedSubscript:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set object for column.</p>
+
+<p>This method allows the use of the &ldquo;boxed&rdquo; syntax supported in Modern Objective-C. For example, by defining this method, the following syntax is now supported:</p>
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="n">rs</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
+</code></pre>
+
+<p>This simplified syntax is equivalent to calling:</p>
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForKeyedSubscript</span><span class="p">:</span><span class="mi">0</span><span class="p">];</span>
+</code></pre>
+
+<p>which is, it turns out, equivalent to calling:</p>
+<pre class="highlight objective_c"><code><span class="n">id</span> <span class="n">result</span> <span class="o">=</span> <span class="p">[</span><span class="n">rs</span> <span class="nf">objectForColumnName</span><span class="p">:</span><span class="mi">0</span><span class="p">];</span>
+</code></pre>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">id</span> <span class="n">_Nullable</span><span class="p">)</span><span class="nf">objectAtIndexedSubscript</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="nf">subscript</span><span class="p">(</span><span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Any</span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Either <code>NSNumber</code> , <code>NSString</code> , <code>NSData</code> , or <code>NSNull</code> . If the column was <code>NULL</code> , this returns <code>[NSNull null]</code> object.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataNoCopyForColumn:"></a>
+ <a name="//apple_ref/objc/Method/-dataNoCopyForColumn:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataNoCopyForColumn:">-dataNoCopyForColumn:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>If you are going to use this data after you iterate over the next row, or after you close the
+result set, make sure to make a copy of the data first (or just use <code>&lt;dataForColumn:&gt;</code>/<code>&lt;dataForColumnIndex:&gt;</code>)
+If you don&rsquo;t, you&rsquo;re going to be in a world of hurt when you try and use the data.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataNoCopyForColumn</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">dataNoCopy</span><span class="p">(</span><span class="n">forColumn</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)dataNoCopyForColumnIndex:"></a>
+ <a name="//apple_ref/objc/Method/-dataNoCopyForColumnIndex:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)dataNoCopyForColumnIndex:">-dataNoCopyForColumnIndex:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Result set <code>NSData</code> value for column.</p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p>If you are going to use this data after you iterate over the next row, or after you close the
+result set, make sure to make a copy of the data first (or just use <code>&lt;dataForColumn:&gt;</code>/<code>&lt;dataForColumnIndex:&gt;</code>)
+If you don&rsquo;t, you&rsquo;re going to be in a world of hurt when you try and use the data.</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSData</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="nf">dataNoCopyForColumnIndex</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">dataNoCopy</span><span class="p">(</span><span class="n">forColumnIndex</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Data</span><span class="p">?</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p>Data value of the result set&rsquo;s column.</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnIndexIsNull:"></a>
+ <a name="//apple_ref/objc/Method/-columnIndexIsNull:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnIndexIsNull:">-columnIndexIsNull:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Is the column <code>NULL</code> ?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnIndexIsNull</span><span class="p">:(</span><span class="kt">int</span><span class="p">)</span><span class="nv">columnIdx</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnIndexIsNull</span><span class="p">(</span><span class="n">_</span> <span class="nv">columnIdx</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnIdx</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Zero-based index for column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column is <code>NULL</code> ; <code>NO</code> if not <code>NULL</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)columnIsNull:"></a>
+ <a name="//apple_ref/objc/Method/-columnIsNull:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)columnIsNull:">-columnIsNull:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Is the column <code>NULL</code> ?</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">columnIsNull</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">columnName</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">columnIsNull</span><span class="p">(</span><span class="n">_</span> <span class="nv">columnName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>columnName</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p><code>NSString</code> value of the name of the column.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div>
+ <h4>Return Value</h4>
+ <p><code>YES</code> if column is <code>NULL</code> ; <code>NO</code> if not <code>NULL</code> .</p>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(py)resultDictionary"></a>
+ <a name="//apple_ref/objc/Property/resultDictionary" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(py)resultDictionary">resultDictionary</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Returns a dictionary of the row results mapped to case sensitive keys of the column names. </p>
+<div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ The keys to the dictionary are case sensitive of the column names.
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">readonly</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSDictionary</span> <span class="o">*</span><span class="n">resultDictionary</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">resultDictionary</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]?</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)resultDict"></a>
+ <a name="//apple_ref/objc/Method/-resultDict" class="dashAnchor"></a>
+ <a class="token discouraged" href="#/c:objc(cs)FMResultSet(im)resultDict">-resultDict</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="aside aside-deprecated">
+ <p class="aside-title">Deprecated</p>
+ <p>Use resultDictionary instead</p>
+
+ </div>
+ <div class="abstract">
+ <p>Returns a dictionary of the row results</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <p>resultDictionary</p>
+
+</div><div class="aside aside-warning">
+ <p class="aside-title">Warning</p>
+ <p><strong>Deprecated</strong>: Please use <code>&lt;resultDictionary&gt;</code> instead. Also, beware that <code>&lt;resultDictionary&gt;</code> is case sensitive!</p>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">_Nullable</span><span class="p">)</span><span class="n">resultDict</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">resultDict</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">]?</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Key%20value%20coding%20magic"></a>
+ <a name="//apple_ref/objc/Section/Key value coding magic" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Key%20value%20coding%20magic"></a>
+ <h3 class="section-name"><p>Key value coding magic</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)kvcMagic:"></a>
+ <a name="//apple_ref/objc/Method/-kvcMagic:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)kvcMagic:">-kvcMagic:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Performs <code>setValue</code> to yield support for key value observing.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">kvcMagic</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">id</span><span class="p">)</span><span class="nv">object</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">kvcMagic</span><span class="p">(</span><span class="n">_</span> <span class="nv">object</span><span class="p">:</span> <span class="kt">Any</span><span class="p">)</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>object</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>The object for which the values will be set. This is the key-value-coding compliant object that you might, for example, observe.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Binding%20values"></a>
+ <a name="//apple_ref/objc/Section/Binding values" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Binding%20values"></a>
+ <h3 class="section-name"><p>Binding values</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)bindWithArray:"></a>
+ <a name="//apple_ref/objc/Method/-bindWithArray:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)bindWithArray:">-bindWithArray:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Bind array of values to prepared statement.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">bindWithArray</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSArray</span> <span class="o">*</span><span class="p">)</span><span class="nv">array</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bind</span><span class="p">(</span><span class="n">with</span> <span class="nv">array</span><span class="p">:</span> <span class="p">[</span><span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>array</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Array of values to bind to SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMResultSet(im)bindWithDictionary:"></a>
+ <a name="//apple_ref/objc/Method/-bindWithDictionary:" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMResultSet(im)bindWithDictionary:">-bindWithDictionary:<wbr></a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Bind dictionary of values to prepared statement.</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">BOOL</span><span class="p">)</span><span class="nf">bindWithDictionary</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSDictionary</span> <span class="o">*</span><span class="p">)</span><span class="nv">dictionary</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">bind</span><span class="p">(</span><span class="n">with</span> <span class="nv">dictionary</span><span class="p">:</span> <span class="p">[</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
+
+ </div>
+ </div>
+ <div>
+ <h4>Parameters</h4>
+ <table class="graybox">
+ <tbody>
+ <tr>
+ <td>
+ <code>
+ <em>dictionary</em>
+ </code>
+ </td>
+ <td>
+ <div>
+ <p>Dictionary of values to bind to SQL statement.</p>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMStatement.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMStatement.html
new file mode 100644
index 0000000..618c4b1
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Classes/FMStatement.html
@@ -0,0 +1,465 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMStatement Class Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Class/FMStatement" class="dashAnchor"></a>
+ <a title="FMStatement Class Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMStatement Class Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMStatement</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">@interface</span> <span class="nc">FMStatement</span> <span class="p">:</span> <span class="nc">NSObject</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="o">*</span><span class="n">_statement</span><span class="p">;</span>
+ <span class="n">NSString</span> <span class="o">*</span><span class="n">_query</span><span class="p">;</span>
+ <span class="kt">long</span> <span class="n">_useCount</span><span class="p">;</span>
+ <span class="n">BOOL</span> <span class="n">_inUse</span><span class="p">;</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <p>Objective-C wrapper for <code>sqlite3_stmt</code></p>
+
+<p>This is a wrapper for a SQLite <code>sqlite3_stmt</code> . Generally when using FMDB you will not need to interact directly with <code>FMStatement</code>, but rather with <code><a href="../Classes/FMDatabase.html">FMDatabase</a></code> and <code><a href="../Classes/FMResultSet.html">FMResultSet</a></code> only.</p>
+
+<p>See also</p>
+
+<ul>
+<li><code><a href="../Classes/FMDatabase.html">FMDatabase</a></code></li>
+<li><code><a href="../Classes/FMResultSet.html">FMResultSet</a></code></li>
+<li><a href="https://sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code> </a></li>
+</ul>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_statement"></a>
+ <a name="//apple_ref/objc/Ivar/_statement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_statement">_statement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="kt">void</span> <span class="o">*</span><span class="n">_statement</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_query"></a>
+ <a name="//apple_ref/objc/Ivar/_query" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_query">_query</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">NSString</span> <span class="o">*</span><span class="n">_query</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_useCount"></a>
+ <a name="//apple_ref/objc/Ivar/_useCount" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_useCount">_useCount</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="kt">long</span> <span class="n">_useCount</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement@_inUse"></a>
+ <a name="//apple_ref/objc/Ivar/_inUse" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement@_inUse">_inUse</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">BOOL</span> <span class="n">_inUse</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Properties"></a>
+ <a name="//apple_ref/objc/Section/Properties" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Properties"></a>
+ <h3 class="section-name"><p>Properties</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)useCount"></a>
+ <a name="//apple_ref/objc/Property/useCount" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)useCount">useCount</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Usage count</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="kt">long</span> <span class="n">useCount</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">useCount</span><span class="p">:</span> <span class="kt">Int</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)query"></a>
+ <a name="//apple_ref/objc/Property/query" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)query">query</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>SQL statement</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">retain</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">query</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">query</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)statement"></a>
+ <a name="//apple_ref/objc/Property/statement" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)statement">statement</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>SQLite sqlite3_stmt</p>
+<div class="aside aside-see">
+ <p class="aside-title">See</p>
+ <a href="https://sqlite.org/c3ref/stmt.html"><code>sqlite3_stmt</code> </a>
+
+</div>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="kt">void</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">statement</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">statement</span><span class="p">:</span> <span class="kt">UnsafeMutableRawPointer</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(py)inUse"></a>
+ <a name="//apple_ref/objc/Property/inUse" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(py)inUse">inUse</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Indication of whether the statement is in use</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="n">BOOL</span> <span class="n">inUse</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">inUse</span><span class="p">:</span> <span class="kt">Bool</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div class="task-group">
+ <div class="task-name-container">
+ <a name="/Closing%20and%20Resetting"></a>
+ <a name="//apple_ref/objc/Section/Closing and Resetting" class="dashAnchor"></a>
+ <div class="section-name-container">
+ <a class="section-name-link" href="#/Closing%20and%20Resetting"></a>
+ <h3 class="section-name"><p>Closing and Resetting</p>
+</h3>
+ </div>
+ </div>
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(im)close"></a>
+ <a name="//apple_ref/objc/Method/-close" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(im)close">-close</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Close statement</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">close</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">close</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:objc(cs)FMStatement(im)reset"></a>
+ <a name="//apple_ref/objc/Method/-reset" class="dashAnchor"></a>
+ <a class="token" href="#/c:objc(cs)FMStatement(im)reset">-reset</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Reset statement</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="n">reset</span><span class="p">;</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">reset</span><span class="p">()</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Constants.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Constants.html
new file mode 100644
index 0000000..3471234
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Constants.html
@@ -0,0 +1,172 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Constants Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Constants" class="dashAnchor"></a>
+ <a title="Constants Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Constants Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Constants</h1>
+ <p>The following constants are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@FMDBVersionNumber"></a>
+ <a name="//apple_ref/objc/Constant/FMDBVersionNumber" class="dashAnchor"></a>
+ <a class="token" href="#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FOUNDATION_EXPORT</span> <span class="kt">double</span> <span class="n">FMDBVersionNumber</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">FMDBVersionNumber</span><span class="p">:</span> <span class="kt">Double</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@FMDBVersionString"></a>
+ <a name="//apple_ref/objc/Constant/FMDBVersionString" class="dashAnchor"></a>
+ <a class="token" href="#/c:@FMDBVersionString">FMDBVersionString</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FOUNDATION_EXPORT</span> <span class="k">const</span> <span class="kt">unsigned</span> <span class="kt">char</span> <span class="n">FMDBVersionString</span><span class="p">[]</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums.html
new file mode 100644
index 0000000..6da8b95
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums.html
@@ -0,0 +1,185 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Enumerations Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Enumerations" class="dashAnchor"></a>
+ <a title="Enumerations Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Enumerations Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Enumerations</h1>
+ <p>The following enumerations are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode"></a>
+ <a name="//apple_ref/objc/Enum/FMDBCheckpointMode" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode">FMDBCheckpointMode</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Enumeration used in checkpoint methods.</p>
+
+ <a href="Enums/FMDBCheckpointMode.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">enum</span> <span class="n">FMDBCheckpointMode</span> <span class="p">{}</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">enum</span> <span class="kt">FMDBCheckpointMode</span> <span class="p">:</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType"></a>
+ <a name="//apple_ref/objc/Enum/SqliteValueType" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType">SqliteValueType</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ <a href="Enums/SqliteValueType.html" class="slightly-smaller">See more</a>
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">NS_ENUM</span><span class="p">(</span><span class="kt">int</span><span class="p">,</span> <span class="n">SqliteValueType</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">SqliteValueTypeInteger</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeFloat</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeText</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeBlob</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeNull</span> <span class="o">=</span> <span class="mi">5</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">enum</span> <span class="kt">SqliteValueType</span> <span class="p">:</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/FMDBCheckpointMode.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/FMDBCheckpointMode.html
new file mode 100644
index 0000000..afc4e2c
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/FMDBCheckpointMode.html
@@ -0,0 +1,247 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMDBCheckpointMode Enumeration Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Enum/FMDBCheckpointMode" class="dashAnchor"></a>
+ <a title="FMDBCheckpointMode Enumeration Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ FMDBCheckpointMode Enumeration Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>FMDBCheckpointMode</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="k">enum</span> <span class="n">FMDBCheckpointMode</span> <span class="p">{}</span></code></pre>
+
+ </div>
+ </div>
+ <p>Enumeration used in checkpoint methods.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModePassive"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModePassive" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModePassive">FMDBCheckpointModePassive</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModePassive</span> <span class="o">=</span> <span class="mi">0</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">passive</span> <span class="o">=</span> <span class="mi">0</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModeFull"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModeFull" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeFull">FMDBCheckpointModeFull</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModeFull</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">full</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModeRestart"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModeRestart" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeRestart">FMDBCheckpointModeRestart</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModeRestart</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">restart</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@FMDBCheckpointMode@FMDBCheckpointModeTruncate"></a>
+ <a name="//apple_ref/objc/Case/FMDBCheckpointModeTruncate" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeTruncate">FMDBCheckpointModeTruncate</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">FMDBCheckpointModeTruncate</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">truncate</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/SqliteValueType.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/SqliteValueType.html
new file mode 100644
index 0000000..cf5fd14
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Enums/SqliteValueType.html
@@ -0,0 +1,285 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>SqliteValueType Enumeration Reference</title>
+ <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="../js/jquery.min.js" defer></script>
+ <script src="../js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Enum/SqliteValueType" class="dashAnchor"></a>
+ <a title="SqliteValueType Enumeration Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="../index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="../img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="../index.html">FMDB Reference</a>
+ <img id="carat" src="../img/carat.png" />
+ SqliteValueType Enumeration Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="../Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="../Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="../Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="../Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>SqliteValueType</h1>
+ <div class="declaration">
+ <div class="language">
+ <pre class="highlight objective_c"><code><span class="n">NS_ENUM</span><span class="p">(</span><span class="kt">int</span><span class="p">,</span> <span class="n">SqliteValueType</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">SqliteValueTypeInteger</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeFloat</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeText</span> <span class="o">=</span> <span class="mi">3</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeBlob</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
+ <span class="n">SqliteValueTypeNull</span> <span class="o">=</span> <span class="mi">5</span>
+<span class="p">}</span></code></pre>
+
+ </div>
+ </div>
+ <p>Undocumented</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeInteger"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeInteger" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeInteger">SqliteValueTypeInteger</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeInteger</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">integer</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeFloat"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeFloat" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeFloat">SqliteValueTypeFloat</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeFloat</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">float</span> <span class="o">=</span> <span class="mi">2</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeText"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeText" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeText">SqliteValueTypeText</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeText</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">text</span> <span class="o">=</span> <span class="mi">3</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeBlob"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeBlob" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeBlob">SqliteValueTypeBlob</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeBlob</span> <span class="o">=</span> <span class="mi">4</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">blob</span> <span class="o">=</span> <span class="mi">4</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:@E@SqliteValueType@SqliteValueTypeNull"></a>
+ <a name="//apple_ref/objc/Case/SqliteValueTypeNull" class="dashAnchor"></a>
+ <a class="token" href="#/c:@E@SqliteValueType@SqliteValueTypeNull">SqliteValueTypeNull</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Undocumented</p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="n">SqliteValueTypeNull</span> <span class="o">=</span> <span class="mi">5</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="k">case</span> <span class="n">null</span> <span class="o">=</span> <span class="mi">5</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/Type Definitions.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/Type Definitions.html
new file mode 100644
index 0000000..c81400f
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/Type Definitions.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>Type Definitions Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a name="//apple_ref/objc/Section/Type Definitions" class="dashAnchor"></a>
+ <a title="Type Definitions Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ Type Definitions Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+ <h1>Type Definitions</h1>
+ <p>The following type definitions are available globally.</p>
+
+ </section>
+ <section class="section task-group-section">
+ <div class="task-group">
+ <ul>
+ <li class="item">
+ <div>
+ <code>
+ <a name="/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock"></a>
+ <a name="//apple_ref/objc/Type/FMDBExecuteStatementsCallbackBlock" class="dashAnchor"></a>
+ <a class="token" href="#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </code>
+ </div>
+ <div class="height-container">
+ <div class="pointer-container"></div>
+ <section class="section">
+ <div class="pointer"></div>
+ <div class="abstract">
+ <p>Callback block used by <code>executeStatements:withResultBlock:</code></p>
+
+ </div>
+ <div class="declaration">
+ <h4>Declaration</h4>
+ <div class="language">
+ <p class="aside-title">Objective-C</p>
+ <pre class="highlight objective_c"><code><span class="k">typedef</span> <span class="kt">int</span> <span class="p">(</span><span class="o">^</span><span class="n">FMDBExecuteStatementsCallbackBlock</span><span class="p">)(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">_Nonnull</span><span class="p">)</span></code></pre>
+
+ </div>
+ <div class="language">
+ <p class="aside-title">Swift</p>
+ <pre class="highlight swift"><code><span class="kd">typealias</span> <span class="kt">FMDBExecuteStatementsCallbackBlock</span> <span class="o">=</span> <span class="p">([</span><span class="kt">AnyHashable</span> <span class="p">:</span> <span class="kt">Any</span><span class="p">])</span> <span class="o">-&gt;</span> <span class="kt">Int32</span></code></pre>
+
+ </div>
+ </div>
+ </section>
+ </div>
+ </li>
+ </ul>
+ </div>
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/css/highlight.css b/html/docsets/FMDB.docset/Contents/Resources/Documents/css/highlight.css
new file mode 100644
index 0000000..d0db0e1
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/css/highlight.css
@@ -0,0 +1,200 @@
+/* Credit to https://gist.github.com/wataru420/2048287 */
+.highlight {
+ /* Comment */
+ /* Error */
+ /* Keyword */
+ /* Operator */
+ /* Comment.Multiline */
+ /* Comment.Preproc */
+ /* Comment.Single */
+ /* Comment.Special */
+ /* Generic.Deleted */
+ /* Generic.Deleted.Specific */
+ /* Generic.Emph */
+ /* Generic.Error */
+ /* Generic.Heading */
+ /* Generic.Inserted */
+ /* Generic.Inserted.Specific */
+ /* Generic.Output */
+ /* Generic.Prompt */
+ /* Generic.Strong */
+ /* Generic.Subheading */
+ /* Generic.Traceback */
+ /* Keyword.Constant */
+ /* Keyword.Declaration */
+ /* Keyword.Pseudo */
+ /* Keyword.Reserved */
+ /* Keyword.Type */
+ /* Literal.Number */
+ /* Literal.String */
+ /* Name.Attribute */
+ /* Name.Builtin */
+ /* Name.Class */
+ /* Name.Constant */
+ /* Name.Entity */
+ /* Name.Exception */
+ /* Name.Function */
+ /* Name.Namespace */
+ /* Name.Tag */
+ /* Name.Variable */
+ /* Operator.Word */
+ /* Text.Whitespace */
+ /* Literal.Number.Float */
+ /* Literal.Number.Hex */
+ /* Literal.Number.Integer */
+ /* Literal.Number.Oct */
+ /* Literal.String.Backtick */
+ /* Literal.String.Char */
+ /* Literal.String.Doc */
+ /* Literal.String.Double */
+ /* Literal.String.Escape */
+ /* Literal.String.Heredoc */
+ /* Literal.String.Interpol */
+ /* Literal.String.Other */
+ /* Literal.String.Regex */
+ /* Literal.String.Single */
+ /* Literal.String.Symbol */
+ /* Name.Builtin.Pseudo */
+ /* Name.Variable.Class */
+ /* Name.Variable.Global */
+ /* Name.Variable.Instance */
+ /* Literal.Number.Integer.Long */ }
+ .highlight .c {
+ color: #999988;
+ font-style: italic; }
+ .highlight .err {
+ color: #a61717;
+ background-color: #e3d2d2; }
+ .highlight .k {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .o {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .cm {
+ color: #999988;
+ font-style: italic; }
+ .highlight .cp {
+ color: #999999;
+ font-weight: bold; }
+ .highlight .c1 {
+ color: #999988;
+ font-style: italic; }
+ .highlight .cs {
+ color: #999999;
+ font-weight: bold;
+ font-style: italic; }
+ .highlight .gd {
+ color: #000000;
+ background-color: #ffdddd; }
+ .highlight .gd .x {
+ color: #000000;
+ background-color: #ffaaaa; }
+ .highlight .ge {
+ color: #000000;
+ font-style: italic; }
+ .highlight .gr {
+ color: #aa0000; }
+ .highlight .gh {
+ color: #999999; }
+ .highlight .gi {
+ color: #000000;
+ background-color: #ddffdd; }
+ .highlight .gi .x {
+ color: #000000;
+ background-color: #aaffaa; }
+ .highlight .go {
+ color: #888888; }
+ .highlight .gp {
+ color: #555555; }
+ .highlight .gs {
+ font-weight: bold; }
+ .highlight .gu {
+ color: #aaaaaa; }
+ .highlight .gt {
+ color: #aa0000; }
+ .highlight .kc {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kd {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kp {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kr {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .kt {
+ color: #445588; }
+ .highlight .m {
+ color: #009999; }
+ .highlight .s {
+ color: #d14; }
+ .highlight .na {
+ color: #008080; }
+ .highlight .nb {
+ color: #0086B3; }
+ .highlight .nc {
+ color: #445588;
+ font-weight: bold; }
+ .highlight .no {
+ color: #008080; }
+ .highlight .ni {
+ color: #800080; }
+ .highlight .ne {
+ color: #990000;
+ font-weight: bold; }
+ .highlight .nf {
+ color: #990000; }
+ .highlight .nn {
+ color: #555555; }
+ .highlight .nt {
+ color: #000080; }
+ .highlight .nv {
+ color: #008080; }
+ .highlight .ow {
+ color: #000000;
+ font-weight: bold; }
+ .highlight .w {
+ color: #bbbbbb; }
+ .highlight .mf {
+ color: #009999; }
+ .highlight .mh {
+ color: #009999; }
+ .highlight .mi {
+ color: #009999; }
+ .highlight .mo {
+ color: #009999; }
+ .highlight .sb {
+ color: #d14; }
+ .highlight .sc {
+ color: #d14; }
+ .highlight .sd {
+ color: #d14; }
+ .highlight .s2 {
+ color: #d14; }
+ .highlight .se {
+ color: #d14; }
+ .highlight .sh {
+ color: #d14; }
+ .highlight .si {
+ color: #d14; }
+ .highlight .sx {
+ color: #d14; }
+ .highlight .sr {
+ color: #009926; }
+ .highlight .s1 {
+ color: #d14; }
+ .highlight .ss {
+ color: #990073; }
+ .highlight .bp {
+ color: #999999; }
+ .highlight .vc {
+ color: #008080; }
+ .highlight .vg {
+ color: #008080; }
+ .highlight .vi {
+ color: #008080; }
+ .highlight .il {
+ color: #009999; }
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/css/jazzy.css b/html/docsets/FMDB.docset/Contents/Resources/Documents/css/jazzy.css
new file mode 100644
index 0000000..c3090c0
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/css/jazzy.css
@@ -0,0 +1,374 @@
+html, body, div, span, h1, h3, h4, p, a, code, em, img, ul, li, table, tbody, tr, td {
+ background: transparent;
+ border: 0;
+ margin: 0;
+ outline: 0;
+ padding: 0;
+ vertical-align: baseline; }
+
+body {
+ background-color: #f2f2f2;
+ font-family: Helvetica, freesans, Arial, sans-serif;
+ font-size: 14px;
+ -webkit-font-smoothing: subpixel-antialiased;
+ word-wrap: break-word; }
+
+h1, h2, h3 {
+ margin-top: 0.8em;
+ margin-bottom: 0.3em;
+ font-weight: 100;
+ color: black; }
+
+h1 {
+ font-size: 2.5em; }
+
+h2 {
+ font-size: 2em;
+ border-bottom: 1px solid #e2e2e2; }
+
+h4 {
+ font-size: 13px;
+ line-height: 1.5;
+ margin-top: 21px; }
+
+h5 {
+ font-size: 1.1em; }
+
+h6 {
+ font-size: 1.1em;
+ color: #777; }
+
+.section-name {
+ color: gray;
+ display: block;
+ font-family: Helvetica;
+ font-size: 22px;
+ font-weight: 100;
+ margin-bottom: 15px; }
+
+pre, code {
+ font: 0.95em Menlo, monospace;
+ color: #777;
+ word-wrap: normal; }
+
+p code, li code {
+ background-color: #eee;
+ padding: 2px 4px;
+ border-radius: 4px; }
+
+a {
+ color: #0088cc;
+ text-decoration: none; }
+
+ul {
+ padding-left: 15px; }
+
+li {
+ line-height: 1.8em; }
+
+img {
+ max-width: 100%; }
+
+blockquote {
+ margin-left: 0;
+ padding: 0 10px;
+ border-left: 4px solid #ccc; }
+
+.content-wrapper {
+ margin: 0 auto;
+ width: 980px; }
+
+header {
+ font-size: 0.85em;
+ line-height: 26px;
+ background-color: #414141;
+ position: fixed;
+ width: 100%;
+ z-index: 2; }
+ header img {
+ padding-right: 6px;
+ vertical-align: -4px;
+ height: 16px; }
+ header a {
+ color: #fff; }
+ header p {
+ float: left;
+ color: #999; }
+ header .header-right {
+ float: right;
+ margin-left: 16px; }
+
+#breadcrumbs {
+ background-color: #f2f2f2;
+ height: 27px;
+ padding-top: 17px;
+ position: fixed;
+ width: 100%;
+ z-index: 2;
+ margin-top: 26px; }
+ #breadcrumbs #carat {
+ height: 10px;
+ margin: 0 5px; }
+
+.sidebar {
+ background-color: #f9f9f9;
+ border: 1px solid #e2e2e2;
+ overflow-y: auto;
+ overflow-x: hidden;
+ position: fixed;
+ top: 70px;
+ bottom: 0;
+ width: 230px;
+ word-wrap: normal; }
+
+.nav-groups {
+ list-style-type: none;
+ background: #fff;
+ padding-left: 0; }
+
+.nav-group-name {
+ border-bottom: 1px solid #e2e2e2;
+ font-size: 1.1em;
+ font-weight: 100;
+ padding: 15px 0 15px 20px; }
+ .nav-group-name > a {
+ color: #333; }
+
+.nav-group-tasks {
+ margin-top: 5px; }
+
+.nav-group-task {
+ font-size: 0.9em;
+ list-style-type: none;
+ white-space: nowrap; }
+ .nav-group-task a {
+ color: #888; }
+
+.main-content {
+ background-color: #fff;
+ border: 1px solid #e2e2e2;
+ margin-left: 246px;
+ position: absolute;
+ overflow: hidden;
+ padding-bottom: 20px;
+ top: 70px;
+ width: 734px; }
+ .main-content p, .main-content a, .main-content code, .main-content em, .main-content ul, .main-content table, .main-content blockquote {
+ margin-bottom: 1em; }
+ .main-content p {
+ line-height: 1.8em; }
+ .main-content section .section:first-child {
+ margin-top: 0;
+ padding-top: 0; }
+ .main-content section .task-group-section .task-group:first-of-type {
+ padding-top: 10px; }
+ .main-content section .task-group-section .task-group:first-of-type .section-name {
+ padding-top: 15px; }
+ .main-content section .heading:before {
+ content: "";
+ display: block;
+ padding-top: 70px;
+ margin: -70px 0 0; }
+ .main-content .section-name p {
+ margin-bottom: inherit;
+ line-height: inherit; }
+ .main-content .section-name code {
+ background-color: inherit;
+ padding: inherit;
+ color: inherit; }
+
+.section {
+ padding: 0 25px; }
+
+.highlight {
+ background-color: #eee;
+ padding: 10px 12px;
+ border: 1px solid #e2e2e2;
+ border-radius: 4px;
+ overflow-x: auto; }
+
+.declaration .highlight {
+ overflow-x: initial;
+ padding: 0 40px 40px 0;
+ margin-bottom: -25px;
+ background-color: transparent;
+ border: none; }
+
+.section-name {
+ margin: 0;
+ margin-left: 18px; }
+
+.task-group-section {
+ padding-left: 6px;
+ border-top: 1px solid #e2e2e2; }
+
+.task-group {
+ padding-top: 0px; }
+
+.task-name-container a[name]:before {
+ content: "";
+ display: block;
+ padding-top: 70px;
+ margin: -70px 0 0; }
+
+.section-name-container {
+ position: relative;
+ display: inline-block; }
+ .section-name-container .section-name-link {
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ margin-bottom: 0; }
+ .section-name-container .section-name {
+ position: relative;
+ pointer-events: none;
+ z-index: 1; }
+ .section-name-container .section-name a {
+ pointer-events: auto; }
+
+.item {
+ padding-top: 8px;
+ width: 100%;
+ list-style-type: none; }
+ .item a[name]:before {
+ content: "";
+ display: block;
+ padding-top: 70px;
+ margin: -70px 0 0; }
+ .item code {
+ background-color: transparent;
+ padding: 0; }
+ .item .token, .item .direct-link {
+ display: inline-block;
+ text-indent: -20px;
+ padding-left: 3px;
+ margin-left: 35px;
+ font-size: 11.9px;
+ transition: all 300ms; }
+ .item .token-open {
+ margin-left: 20px; }
+ .item .discouraged {
+ text-decoration: line-through; }
+ .item .declaration-note {
+ font-size: .85em;
+ color: gray;
+ font-style: italic; }
+
+.pointer-container {
+ border-bottom: 1px solid #e2e2e2;
+ left: -23px;
+ padding-bottom: 13px;
+ position: relative;
+ width: 110%; }
+
+.pointer {
+ background: #f9f9f9;
+ border-left: 1px solid #e2e2e2;
+ border-top: 1px solid #e2e2e2;
+ height: 12px;
+ left: 21px;
+ top: -7px;
+ -webkit-transform: rotate(45deg);
+ -moz-transform: rotate(45deg);
+ -o-transform: rotate(45deg);
+ transform: rotate(45deg);
+ position: absolute;
+ width: 12px; }
+
+.height-container {
+ display: none;
+ left: -25px;
+ padding: 0 25px;
+ position: relative;
+ width: 100%;
+ overflow: hidden; }
+ .height-container .section {
+ background: #f9f9f9;
+ border-bottom: 1px solid #e2e2e2;
+ left: -25px;
+ position: relative;
+ width: 100%;
+ padding-top: 10px;
+ padding-bottom: 5px; }
+
+.aside, .language {
+ padding: 6px 12px;
+ margin: 12px 0;
+ border-left: 5px solid #dddddd;
+ overflow-y: hidden; }
+ .aside .aside-title, .language .aside-title {
+ font-size: 9px;
+ letter-spacing: 2px;
+ text-transform: uppercase;
+ padding-bottom: 0;
+ margin: 0;
+ color: #aaa;
+ -webkit-user-select: none; }
+ .aside p:last-child, .language p:last-child {
+ margin-bottom: 0; }
+
+.language {
+ border-left: 5px solid #cde9f4; }
+ .language .aside-title {
+ color: #4b8afb; }
+
+.aside-warning, .aside-deprecated, .aside-unavailable {
+ border-left: 5px solid #ff6666; }
+ .aside-warning .aside-title, .aside-deprecated .aside-title, .aside-unavailable .aside-title {
+ color: #ff0000; }
+
+.graybox {
+ border-collapse: collapse;
+ width: 100%; }
+ .graybox p {
+ margin: 0;
+ word-break: break-word;
+ min-width: 50px; }
+ .graybox td {
+ border: 1px solid #e2e2e2;
+ padding: 5px 25px 5px 10px;
+ vertical-align: middle; }
+ .graybox tr td:first-of-type {
+ text-align: right;
+ padding: 7px;
+ vertical-align: top;
+ word-break: normal;
+ width: 40px; }
+
+.slightly-smaller {
+ font-size: 0.9em; }
+
+#footer {
+ position: relative;
+ top: 10px;
+ bottom: 0px;
+ margin-left: 25px; }
+ #footer p {
+ margin: 0;
+ color: #aaa;
+ font-size: 0.8em; }
+
+html.dash header, html.dash #breadcrumbs, html.dash .sidebar {
+ display: none; }
+
+html.dash .main-content {
+ width: 980px;
+ margin-left: 0;
+ border: none;
+ width: 100%;
+ top: 0;
+ padding-bottom: 0; }
+
+html.dash .height-container {
+ display: block; }
+
+html.dash .item .token {
+ margin-left: 0; }
+
+html.dash .content-wrapper {
+ width: auto; }
+
+html.dash #footer {
+ position: static; }
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/img/carat.png b/html/docsets/FMDB.docset/Contents/Resources/Documents/img/carat.png
new file mode 100755
index 0000000..29d2f7f
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/img/carat.png
Binary files differ
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/img/dash.png b/html/docsets/FMDB.docset/Contents/Resources/Documents/img/dash.png
new file mode 100755
index 0000000..6f694c7
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/img/dash.png
Binary files differ
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/img/gh.png b/html/docsets/FMDB.docset/Contents/Resources/Documents/img/gh.png
new file mode 100755
index 0000000..628da97
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/img/gh.png
Binary files differ
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/index.html b/html/docsets/FMDB.docset/Contents/Resources/Documents/index.html
new file mode 100644
index 0000000..69e945c
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/index.html
@@ -0,0 +1,584 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <title>FMDB Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a title="FMDB Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ FMDB Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+
+ <h1 id='fmdb-v2-7' class='heading'>FMDB v2.7</h1>
+
+<!--[![Platform](https://img.shields.io/cocoapods/p/FMDB.svg?style=flat)](http://cocoadocs.org/docsets/Alamofire)-->
+
+<p><a href="https://img.shields.io/cocoapods/v/FMDB.svg"><img src="https://img.shields.io/cocoapods/v/FMDB.svg" alt="CocoaPods Compatible"></a>
+<a href="https://github.com/Carthage/Carthage"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat" alt="Carthage Compatible"></a></p>
+
+<p>This is an Objective-C wrapper around <a href="https://sqlite.org/">SQLite</a>.</p>
+<h2 id='the-fmdb-mailing-list' class='heading'>The FMDB Mailing List:</h2>
+
+<p><a href="https://groups.google.com/group/fmdb">https://groups.google.com/group/fmdb</a></p>
+<h2 id='read-the-sqlite-faq' class='heading'>Read the SQLite FAQ:</h2>
+
+<p><a href="https://www.sqlite.org/faq.html">https://www.sqlite.org/faq.html</a></p>
+
+<p>Since FMDB is built on top of SQLite, you&rsquo;re going to want to read this page top to bottom at least once. And while you&rsquo;re there, make sure to bookmark the SQLite Documentation page: <a href="https://www.sqlite.org/docs.html">https://www.sqlite.org/docs.html</a></p>
+<h2 id='contributing' class='heading'>Contributing</h2>
+
+<p>Do you have an awesome idea that deserves to be in FMDB? You might consider pinging ccgus first to make sure he hasn&rsquo;t already ruled it out for some reason. Otherwise pull requests are great, and make sure you stick to the local coding conventions. However, please be patient and if you haven&rsquo;t heard anything from ccgus for a week or more, you might want to send a note asking what&rsquo;s up.</p>
+<h2 id='installing' class='heading'>Installing</h2>
+<h3 id='cocoapods' class='heading'>CocoaPods</h3>
+
+<p>FMDB can be installed using <a href="https://cocoapods.org/">CocoaPods</a>.</p>
+
+<p>If you haven&rsquo;t done so already, you might want to initialize the project, to have it produce a <code>Podfile</code> template for you:</p>
+<pre class="highlight plaintext"><code>$ pod init
+</code></pre>
+
+<p>Then, edit the <code>Podfile</code>, adding <code>FMDB</code>:</p>
+<pre class="highlight ruby"><code><span class="c1"># Uncomment the next line to define a global platform for your project</span>
+<span class="c1"># platform :ios, '9.0'</span>
+
+<span class="n">target</span> <span class="s1">'MyApp'</span> <span class="k">do</span>
+ <span class="c1"># Comment the next line if you're not using Swift and don't want to use dynamic frameworks</span>
+ <span class="n">use_frameworks!</span>
+
+ <span class="c1"># Pods for MyApp2</span>
+
+ <span class="n">pod</span> <span class="s1">'FMDB'</span>
+ <span class="c1"># pod 'FMDB/FTS' # FMDB with FTS</span>
+ <span class="c1"># pod 'FMDB/standalone' # FMDB with latest SQLite amalgamation source</span>
+ <span class="c1"># pod 'FMDB/standalone/FTS' # FMDB with latest SQLite amalgamation source and FTS</span>
+ <span class="c1"># pod 'FMDB/SQLCipher' # FMDB with SQLCipher</span>
+<span class="k">end</span>
+</code></pre>
+
+<p>Then install the pods:</p>
+<pre class="highlight plaintext"><code>$ pod install
+</code></pre>
+
+<p>Then open the <code>.xcworkspace</code> rather than the <code>.xcodeproj</code>.</p>
+
+<p>For more information on Cocoapods visit <a href="https://cocoapods.org">https://cocoapods.org</a>.</p>
+
+<p><strong>If using FMDB with <a href="https://www.zetetic.net/sqlcipher/">SQLCipher</a> you must use the FMDB/SQLCipher subspec. The FMDB/SQLCipher subspec declares SQLCipher as a dependency, allowing FMDB to be compiled with the <code>-DSQLITE_HAS_CODEC</code> flag.</strong></p>
+<h3 id='carthage' class='heading'>Carthage</h3>
+
+<p>Once you make sure you have <a href="https://github.com/Carthage/Carthage/releases">the latest version of Carthage</a>, you can open up a command line terminal, navigate to your project&rsquo;s main directory, and then do the following commands:</p>
+<pre class="highlight plaintext"><code>$ echo ' github "ccgus/fmdb" ' &gt; ./Cartfile
+$ carthage update
+</code></pre>
+
+<p>You can then configure your project as outlined in Carthage&rsquo;s <a href="https://github.com/Carthage/Carthage#getting-started">Getting Started</a> (i.e. for iOS, adding the framework to the &ldquo;Link Binary with Libraries&rdquo; in your target and adding the <code>copy-frameworks</code> script; in macOS, adding the framework to the list of &ldquo;Embedded Binaries&rdquo;).</p>
+<h2 id='fmdb-class-reference' class='heading'>FMDB Class Reference:</h2>
+
+<p><a href="https://ccgus.github.io/fmdb/html/index.html">https://ccgus.github.io/fmdb/html/index.html</a></p>
+<h2 id='automatic-reference-counting-arc-or-manual-memory-management' class='heading'>Automatic Reference Counting (ARC) or Manual Memory Management?</h2>
+
+<p>You can use either style in your Cocoa project. FMDB will figure out which you are using at compile time and do the right thing.</p>
+<h2 id='what-39-s-new-in-fmdb-2-7' class='heading'>What&rsquo;s New in FMDB 2.7</h2>
+
+<p>FMDB 2.7 attempts to support a more natural interface. This represents a fairly significant change for Swift developers (audited for nullability; shifted to properties in external interfaces where possible rather than methods; etc.). For Objective-C developers, this should be a fairly seamless transition (unless you were using the ivars that were previously exposed in the public interface, which you shouldn&rsquo;t have been doing, anyway!). </p>
+<h3 id='nullability-and-swift-optionals' class='heading'>Nullability and Swift Optionals</h3>
+
+<p>FMDB 2.7 is largely the same as prior versions, but has been audited for nullability. For Objective-C users, this simply means that if you perform a static analysis of your FMDB-based project, you may receive more meaningful warnings as you review your project, but there are likely to be few, if any, changes necessary in your code.</p>
+
+<p>For Swift users, this nullability audit results in changes that are not entirely backward compatible with FMDB 2.6, but is a little more Swifty. Before FMDB was audited for nullability, Swift was forced to defensively assume that variables were optional, but the library now more accurately knows which properties and method parameters are optional, and which are not.</p>
+
+<p>This means, though, that Swift code written for FMDB 2.7 may require changes. For example, consider the following Swift 3/Swift 4 code for FMDB 2.6:</p>
+<pre class="highlight swift"><code><span class="n">queue</span><span class="o">.</span><span class="n">inTransaction</span> <span class="p">{</span> <span class="n">db</span><span class="p">,</span> <span class="n">rollback</span> <span class="k">in</span>
+ <span class="k">do</span> <span class="p">{</span>
+ <span class="k">guard</span> <span class="k">let</span> <span class="nv">db</span> <span class="o">==</span> <span class="n">db</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="c1">// handle error here</span>
+ <span class="k">return</span>
+ <span class="p">}</span>
+
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">2</span><span class="p">])</span>
+ <span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="p">?</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>Because FMDB 2.6 was not audited for nullability, Swift inferred that <code>db</code> and <code>rollback</code> were optionals. But, now, in FMDB 2.7, Swift now knows that, for example, neither <code>db</code> nor <code>rollback</code> above can be <code>nil</code>, so they are no longer optionals. Thus it becomes:</p>
+<pre class="highlight swift"><code><span class="n">queue</span><span class="o">.</span><span class="n">inTransaction</span> <span class="p">{</span> <span class="n">db</span><span class="p">,</span> <span class="n">rollback</span> <span class="k">in</span>
+ <span class="k">do</span> <span class="p">{</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">2</span><span class="p">])</span>
+ <span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+<h3 id='custom-functions' class='heading'>Custom Functions</h3>
+
+<p>In the past, when writing custom functions, you would have to generally include your own <code>@autoreleasepool</code> block to avoid problems when writing functions that scanned through a large table. Now, FMDB will automatically wrap it in an autorelease pool, so you don&rsquo;t have to.</p>
+
+<p>Also, in the past, when retrieving the values passed to the function, you had to drop down to the SQLite C API and include your own <code>sqlite3_value_XXX</code> calls. There are now <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> methods, <code>valueInt</code>, <code>valueString</code>, etc., so you can stay within Swift and/or Objective-C, without needing to call the C functions yourself. Likewise, when specifying the return values, you no longer need to call <code>sqlite3_result_XXX</code> C API, but rather you can use <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> methods, <code>resultInt</code>, <code>resultString</code>, etc. There is a new <code>enum</code> for <code>valueType</code> called <code><a href="Enums/SqliteValueType.html">SqliteValueType</a></code>, which can be used for checking the type of parameter passed to the custom function.</p>
+
+<p>Thus, you can do something like (as of Swift 3):</p>
+<pre class="highlight swift"><code><span class="n">db</span><span class="o">.</span><span class="nf">makeFunctionNamed</span><span class="p">(</span><span class="s">"RemoveDiacritics"</span><span class="p">,</span> <span class="nv">arguments</span><span class="p">:</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span> <span class="n">context</span><span class="p">,</span> <span class="n">argc</span><span class="p">,</span> <span class="n">argv</span> <span class="k">in</span>
+ <span class="k">guard</span> <span class="n">db</span><span class="o">.</span><span class="nf">valueType</span><span class="p">(</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="o">==</span> <span class="o">.</span><span class="n">text</span> <span class="o">||</span> <span class="n">db</span><span class="o">.</span><span class="nf">valueType</span><span class="p">(</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="o">==</span> <span class="o">.</span><span class="n">null</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="n">db</span><span class="o">.</span><span class="nf">resultError</span><span class="p">(</span><span class="s">"Expected string parameter"</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="n">context</span><span class="p">)</span>
+ <span class="k">return</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="k">let</span> <span class="nv">string</span> <span class="o">=</span> <span class="n">db</span><span class="o">.</span><span class="nf">valueString</span><span class="p">(</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">])?</span><span class="o">.</span><span class="nf">folding</span><span class="p">(</span><span class="nv">options</span><span class="p">:</span> <span class="o">.</span><span class="n">diacriticInsensitive</span><span class="p">,</span> <span class="nv">locale</span><span class="p">:</span> <span class="kc">nil</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">db</span><span class="o">.</span><span class="nf">resultString</span><span class="p">(</span><span class="n">string</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="n">context</span><span class="p">)</span>
+ <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="n">db</span><span class="o">.</span><span class="nf">resultNull</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="n">context</span><span class="p">)</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>And you can then use that function in your SQL (in this case, matching both &ldquo;Jose&rdquo; and &ldquo;José&rdquo;):</p>
+<pre class="highlight sql"><code><span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="n">employees</span> <span class="k">WHERE</span> <span class="n">RemoveDiacritics</span><span class="p">(</span><span class="n">first_name</span><span class="p">)</span> <span class="k">LIKE</span> <span class="s1">'jose'</span>
+</code></pre>
+
+<p>Note, the method <code>makeFunctionNamed:maximumArguments:withBlock:</code> has been renamed to <code>makeFunctionNamed:arguments:block:</code>, to more accurately reflect the functional intent of the second parameter.</p>
+<h3 id='api-changes' class='heading'>API Changes</h3>
+
+<p>In addition to the <code>makeFunctionNamed</code> noted above, there are a few other API changes. Specifically, </p>
+
+<ul>
+<li><p>To become consistent with the rest of the API, the methods <code>objectForColumnName</code> and <code>UTF8StringForColumnName</code> have been renamed to <code>objectForColumn</code> and <code>UTF8StringForColumn</code>.</p></li>
+<li><p>Note, the <code>objectForColumn</code> (and the associted subscript operator) now returns <code>nil</code> if an invalid column name/index is passed to it. It used to return <code>NSNull</code>.</p></li>
+<li><p>To avoid confusion with <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> method <code>inTransaction</code>, which performs transactions, the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> method to determine whether you are in a transaction or not, <code>inTransaction</code>, has been replaced with a read-only property, <code>isInTransaction</code>. </p></li>
+<li><p>Several functions have been converted to properties, namely, <code>databasePath</code>, <code>maxBusyRetryTimeInterval</code>, <code>shouldCacheStatements</code>, <code>sqliteHandle</code>, <code>hasOpenResultSets</code>, <code>lastInsertRowId</code>, <code>changes</code>, <code>goodConnection</code>, <code>columnCount</code>, <code>resultDictionary</code>, <code>applicationID</code>, <code>applicationIDString</code>, <code>userVersion</code>, <code>countOfCheckedInDatabases</code>, <code>countOfCheckedOutDatabases</code>, and <code>countOfOpenDatabases</code>. For Objective-C users, this has little material impact, but for Swift users, it results in a slightly more natural interface. Note: For Objective-C developers, previously versions of FMDB exposed many ivars (but we hope you weren&rsquo;t using them directly, anyway!), but the implmentation details for these are no longer exposed.</p></li>
+</ul>
+<h3 id='url-methods' class='heading'>URL Methods</h3>
+
+<p>In keeping with Apple&rsquo;s shift from paths to URLs, there are now <code>NSURL</code> renditions of the various <code>init</code> methods, previously only accepting paths. </p>
+<h2 id='usage' class='heading'>Usage</h2>
+
+<p>There are three main classes in FMDB:</p>
+
+<ol>
+<li><code><a href="Classes/FMDatabase.html">FMDatabase</a></code> - Represents a single SQLite database. Used for executing SQL statements.</li>
+<li><code><a href="Classes/FMResultSet.html">FMResultSet</a></code> - Represents the results of executing a query on an <code><a href="Classes/FMDatabase.html">FMDatabase</a></code>.</li>
+<li><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> - If you&rsquo;re wanting to perform queries and updates on multiple threads, you&rsquo;ll want to use this class. It&rsquo;s described in the &ldquo;Thread Safety&rdquo; section below.</li>
+</ol>
+<h3 id='database-creation' class='heading'>Database Creation</h3>
+
+<p>An <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> is created with a path to a SQLite database file. This path can be one of these three:</p>
+
+<ol>
+<li>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</li>
+<li>An empty string (<code>@&quot;&quot;</code>). An empty database is created at a temporary location. This database is deleted when the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> connection is closed.</li>
+<li><code>NULL</code>. An in-memory database is created. This database will be destroyed when the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> connection is closed.</li>
+</ol>
+
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://www.sqlite.org/inmemorydb.html">https://www.sqlite.org/inmemorydb.html</a>)</p>
+<pre class="highlight objective_c"><code><span class="n">NSString</span> <span class="o">*</span><span class="n">path</span> <span class="o">=</span> <span class="p">[</span><span class="n">NSTemporaryDirectory</span><span class="p">()</span> <span class="nf">stringByAppendingPathComponent</span><span class="p">:</span><span class="s">@"tmp.db"</span><span class="p">];</span>
+<span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">databaseWithPath</span><span class="p">:</span><span class="n">path</span><span class="p">];</span>
+</code></pre>
+<h3 id='opening' class='heading'>Opening</h3>
+
+<p>Before you can interact with the database, it must be opened. Opening fails if there are insufficient resources or permissions to open and/or create the database.</p>
+<pre class="highlight objective_c"><code><span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="p">[</span><span class="n">db</span> <span class="nf">open</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">// [db release]; // uncomment this line in manual referencing code; in ARC, this is not necessary/permitted
+</span> <span class="n">db</span> <span class="o">=</span> <span class="nb">nil</span><span class="p">;</span>
+ <span class="k">return</span><span class="p">;</span>
+<span class="p">}</span>
+</code></pre>
+<h3 id='executing-updates' class='heading'>Executing Updates</h3>
+
+<p>Any sort of SQL statement which is not a <code>SELECT</code> statement qualifies as an update. This includes <code>CREATE</code>, <code>UPDATE</code>, <code>INSERT</code>, <code>ALTER</code>, <code>COMMIT</code>, <code>BEGIN</code>, <code>DETACH</code>, <code>DELETE</code>, <code>DROP</code>, <code>END</code>, <code>EXPLAIN</code>, <code>VACUUM</code>, and <code>REPLACE</code> statements (plus many more). Basically, if your SQL statement does not begin with <code>SELECT</code>, it is an update statement.</p>
+
+<p>Executing updates returns a single value, a <code>BOOL</code>. A return value of <code>YES</code> means the update was successfully executed, and a return value of <code>NO</code> means that some error was encountered. You may invoke the <code>-lastErrorMessage</code> and <code>-lastErrorCode</code> methods to retrieve more information.</p>
+<h3 id='executing-queries' class='heading'>Executing Queries</h3>
+
+<p>A <code>SELECT</code> statement is a query and is executed via one of the <code>-executeQuery...</code> methods.</p>
+
+<p>Executing queries returns an <code><a href="Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. You should use the <code>-lastErrorMessage</code> and <code>-lastErrorCode</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; from one record to the other. With FMDB, the easiest way to do that is like this:</p>
+<pre class="highlight objective_c"><code><span class="n">FMResultSet</span> <span class="o">*</span><span class="n">s</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT * FROM myTable"</span><span class="p">];</span>
+<span class="k">while</span> <span class="p">([</span><span class="n">s</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">//retrieve values for each record
+</span><span class="p">}</span>
+</code></pre>
+
+<p>You must always invoke <code><a href="Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)next">-[FMResultSet next]</a></code> before attempting to access the values returned in a query, even if you&rsquo;re only expecting one:</p>
+<pre class="highlight objective_c"><code><span class="n">FMResultSet</span> <span class="o">*</span><span class="n">s</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT COUNT(*) FROM myTable"</span><span class="p">];</span>
+<span class="k">if</span> <span class="p">([</span><span class="n">s</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">totalCount</span> <span class="o">=</span> <span class="p">[</span><span class="n">s</span> <span class="nf">intForColumnIndex</span><span class="p">:</span><span class="mi">0</span><span class="p">];</span>
+<span class="p">}</span>
+</code></pre>
+
+<p><code><a href="Classes/FMResultSet.html">FMResultSet</a></code> has many methods to retrieve data in an appropriate format:</p>
+
+<ul>
+<li><code>intForColumn:</code></li>
+<li><code>longForColumn:</code></li>
+<li><code>longLongIntForColumn:</code></li>
+<li><code>boolForColumn:</code></li>
+<li><code>doubleForColumn:</code></li>
+<li><code>stringForColumn:</code></li>
+<li><code>dateForColumn:</code></li>
+<li><code>dataForColumn:</code></li>
+<li><code>dataNoCopyForColumn:</code></li>
+<li><code>UTF8StringForColumn:</code></li>
+<li><code>objectForColumn:</code></li>
+</ul>
+
+<p>Each of these methods also has a <code>{type}ForColumnIndex:</code> variant that is used to retrieve the data based on the position of the column in the results, as opposed to the column&rsquo;s name.</p>
+
+<p>Typically, there&rsquo;s no need to <code>-close</code> an <code><a href="Classes/FMResultSet.html">FMResultSet</a></code> yourself, since that happens when either the result set is exhausted. However, if you only pull out a single request or any other number of requests which don&rsquo;t exhaust the result set, you will need to call the <code>-close</code> method on the <code><a href="Classes/FMResultSet.html">FMResultSet</a></code>.</p>
+<h3 id='closing' class='heading'>Closing</h3>
+
+<p>When you have finished executing queries and updates on the database, you should <code>-close</code> the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> connection so that SQLite will relinquish any resources it has acquired during the course of its operation.</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">close</span><span class="p">];</span>
+</code></pre>
+<h3 id='transactions' class='heading'>Transactions</h3>
+
+<p><code><a href="Classes/FMDatabase.html">FMDatabase</a></code> can begin and commit a transaction by invoking one of the appropriate methods or executing a begin/end transaction statement.</p>
+<h3 id='multiple-statements-and-batch-stuff' class='heading'>Multiple Statements and Batch Stuff</h3>
+
+<p>You can use <code><a href="Classes/FMDatabase.html">FMDatabase</a></code>&lsquo;s executeStatements:withResultBlock: to do multiple statements in a string:</p>
+<pre class="highlight objective_c"><code><span class="n">NSString</span> <span class="o">*</span><span class="n">sql</span> <span class="o">=</span> <span class="s">@"create table bulktest1 (id integer primary key autoincrement, x text);"</span>
+ <span class="s">"create table bulktest2 (id integer primary key autoincrement, y text);"</span>
+ <span class="s">"create table bulktest3 (id integer primary key autoincrement, z text);"</span>
+ <span class="s">"insert into bulktest1 (x) values ('XXX');"</span>
+ <span class="s">"insert into bulktest2 (y) values ('YYY');"</span>
+ <span class="s">"insert into bulktest3 (z) values ('ZZZ');"</span><span class="p">;</span>
+
+<span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeStatements</span><span class="p">:</span><span class="n">sql</span><span class="p">];</span>
+
+<span class="n">sql</span> <span class="o">=</span> <span class="s">@"select count(*) as count from bulktest1;"</span>
+ <span class="s">"select count(*) as count from bulktest2;"</span>
+ <span class="s">"select count(*) as count from bulktest3;"</span><span class="p">;</span>
+
+<span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">executeStatements</span><span class="p">:</span><span class="n">sql</span> <span class="nf">withResultBlock</span><span class="p">:</span><span class="o">^</span><span class="kt">int</span><span class="p">(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">dictionary</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">NSInteger</span> <span class="n">count</span> <span class="o">=</span> <span class="p">[</span><span class="n">dictionary</span><span class="p">[</span><span class="s">@"count"</span><span class="p">]</span> <span class="nf">integerValue</span><span class="p">];</span>
+ <span class="n">XCTAssertEqual</span><span class="p">(</span><span class="n">count</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="s">@"expected one record for dictionary %@"</span><span class="p">,</span> <span class="n">dictionary</span><span class="p">);</span>
+ <span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}];</span>
+</code></pre>
+<h3 id='data-sanitization' class='heading'>Data Sanitization</h3>
+
+<p>When providing a SQL statement to FMDB, you should not attempt to &ldquo;sanitize&rdquo; any values before insertion. Instead, you should use the standard SQLite binding syntax:</p>
+<pre class="highlight sql"><code><span class="k">INSERT</span> <span class="k">INTO</span> <span class="n">myTable</span> <span class="k">VALUES</span> <span class="p">(</span><span class="o">?</span><span class="p">,</span> <span class="o">?</span><span class="p">,</span> <span class="o">?</span><span class="p">,</span> <span class="o">?</span><span class="p">)</span>
+</code></pre>
+
+<p>The <code>?</code> character is recognized by SQLite as a placeholder for a value to be inserted. The execution methods all accept a variable number of arguments (or a representation of those arguments, such as an <code>NSArray</code>, <code>NSDictionary</code>, or a <code>va_list</code>), which are properly escaped for you.</p>
+
+<p>And, to use that SQL with the <code>?</code> placeholders from Objective-C:</p>
+<pre class="highlight objective_c"><code><span class="n">NSInteger</span> <span class="n">identifier</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="n">NSString</span> <span class="o">*</span><span class="n">name</span> <span class="o">=</span> <span class="s">@"Liam O'Flaherty (</span><span class="se">\"</span><span class="s">the famous Irish author</span><span class="se">\"</span><span class="s">)"</span><span class="p">;</span>
+<span class="n">NSDate</span> <span class="o">*</span><span class="n">date</span> <span class="o">=</span> <span class="p">[</span><span class="n">NSDate</span> <span class="nf">date</span><span class="p">];</span>
+<span class="n">NSString</span> <span class="o">*</span><span class="n">comment</span> <span class="o">=</span> <span class="nb">nil</span><span class="p">;</span>
+
+<span class="n">BOOL</span> <span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO authors (identifier, name, date, comment) VALUES (?, ?, ?, ?)"</span><span class="p">,</span> <span class="err">@</span><span class="p">(</span><span class="n">identifier</span><span class="p">),</span> <span class="n">name</span><span class="p">,</span> <span class="n">date</span><span class="p">,</span> <span class="n">comment</span> <span class="p">?:</span> <span class="p">[</span><span class="n">NSNull</span> <span class="nf">null</span><span class="p">]];</span>
+<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">success</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">NSLog</span><span class="p">(</span><span class="s">@"error = %@"</span><span class="p">,</span> <span class="p">[</span><span class="n">db</span> <span class="nf">lastErrorMessage</span><span class="p">]);</span>
+<span class="p">}</span>
+</code></pre>
+
+<blockquote>
+<p><strong>Note:</strong> Fundamental data types, like the <code>NSInteger</code> variable <code>identifier</code>, should be as a <code>NSNumber</code> objects, achieved by using the <code>@</code> syntax, shown above. Or you can use the <code>[NSNumber numberWithInt:identifier]</code> syntax, too.</p>
+
+<p>Likewise, SQL <code>NULL</code> values should be inserted as <code>[NSNull null]</code>. For example, in the case of <code>comment</code> which might be <code>nil</code> (and is in this example), you can use the <code>comment ?: [NSNull null]</code> syntax, which will insert the string if <code>comment</code> is not <code>nil</code>, but will insert <code>[NSNull null]</code> if it is <code>nil</code>.</p>
+</blockquote>
+
+<p>In Swift, you would use <code>executeUpdate(values:)</code>, which not only is a concise Swift syntax, but also <code>throws</code> errors for proper error handling:</p>
+<pre class="highlight swift"><code><span class="k">do</span> <span class="p">{</span>
+ <span class="k">let</span> <span class="nv">identifier</span> <span class="o">=</span> <span class="mi">42</span>
+ <span class="k">let</span> <span class="nv">name</span> <span class="o">=</span> <span class="s">"Liam O'Flaherty (</span><span class="se">\"</span><span class="s">the famous Irish author</span><span class="se">\"</span><span class="s">)"</span>
+ <span class="k">let</span> <span class="nv">date</span> <span class="o">=</span> <span class="kt">Date</span><span class="p">()</span>
+ <span class="k">let</span> <span class="nv">comment</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span>
+
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO authors (identifier, name, date, comment) VALUES (?, ?, ?, ?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="n">identifier</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">date</span><span class="p">,</span> <span class="n">comment</span> <span class="p">??</span> <span class="kt">NSNull</span><span class="p">()])</span>
+<span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"error = </span><span class="se">\(</span><span class="n">error</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
+<span class="p">}</span>
+</code></pre>
+
+<blockquote>
+<p><strong>Note:</strong> In Swift, you don&rsquo;t have to wrap fundamental numeric types like you do in Objective-C. But if you are going to insert an optional string, you would probably use the <code>comment ?? NSNull()</code> syntax (i.e., if it is <code>nil</code>, use <code>NSNull</code>, otherwise use the string).</p>
+</blockquote>
+
+<p>Alternatively, you may use named parameters syntax:</p>
+<pre class="highlight sql"><code><span class="k">INSERT</span> <span class="k">INTO</span> <span class="n">authors</span> <span class="p">(</span><span class="n">identifier</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">date</span><span class="p">,</span> <span class="k">comment</span><span class="p">)</span> <span class="k">VALUES</span> <span class="p">(:</span><span class="n">identifier</span><span class="p">,</span> <span class="p">:</span><span class="n">name</span><span class="p">,</span> <span class="p">:</span><span class="n">date</span><span class="p">,</span> <span class="p">:</span><span class="k">comment</span><span class="p">)</span>
+</code></pre>
+
+<p>The parameters <em>must</em> start with a colon. SQLite itself supports other characters, but internally the dictionary keys are prefixed with a colon, do <strong>not</strong> include the colon in your dictionary keys.</p>
+<pre class="highlight objective_c"><code><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">arguments</span> <span class="o">=</span> <span class="p">@{</span><span class="s">@"identifier"</span><span class="o">:</span> <span class="err">@</span><span class="p">(</span><span class="n">identifier</span><span class="p">),</span> <span class="s">@"name"</span><span class="o">:</span> <span class="n">name</span><span class="p">,</span> <span class="s">@"date"</span><span class="o">:</span> <span class="n">date</span><span class="p">,</span> <span class="s">@"comment"</span><span class="o">:</span> <span class="n">comment</span> <span class="p">?:</span> <span class="p">[</span><span class="n">NSNull</span> <span class="nf">null</span><span class="p">]};</span>
+<span class="n">BOOL</span> <span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO authors (identifier, name, date, comment) VALUES (:identifier, :name, :date, :comment)"</span> <span class="nf">withParameterDictionary</span><span class="p">:</span><span class="n">arguments</span><span class="p">];</span>
+<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">success</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">NSLog</span><span class="p">(</span><span class="s">@"error = %@"</span><span class="p">,</span> <span class="p">[</span><span class="n">db</span> <span class="nf">lastErrorMessage</span><span class="p">]);</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>The key point is that one should not use <code>NSString</code> method <code>stringWithFormat</code> to manually insert values into the SQL statement, itself. Nor should one Swift string interpolation to insert values into the SQL. Use <code>?</code> placeholders for values to be inserted into the database (or used in <code>WHERE</code> clauses in <code>SELECT</code> statements).</p>
+
+<h2 id="threads">Using FMDatabaseQueue and Thread Safety.</h2>
+
+<p>Using a single instance of <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> from multiple threads at once is a bad idea. It has always been OK to make a <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object <em>per thread</em>. Just don&rsquo;t share a single instance across threads, and definitely not across multiple threads at the same time. Bad things will eventually happen and you&rsquo;ll eventually get something to crash, or maybe get an exception, or maybe meteorites will fall out of the sky and hit your Mac Pro. <em>This would suck</em>.</p>
+
+<p><strong>So don&rsquo;t instantiate a single <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object and use it across multiple threads.</strong></p>
+
+<p>Instead, use <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code>. Instantiate a single <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> and use it across multiple threads. The <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> object will synchronize and coordinate access across the multiple threads. Here&rsquo;s how to use it:</p>
+
+<p>First, make your queue.</p>
+<pre class="highlight objective_c"><code><span class="n">FMDatabaseQueue</span> <span class="o">*</span><span class="n">queue</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabaseQueue</span> <span class="nf">databaseQueueWithPath</span><span class="p">:</span><span class="n">aPath</span><span class="p">];</span>
+</code></pre>
+
+<p>Then use it like so:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inDatabase</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@1</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@2</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@3</span><span class="p">];</span>
+
+ <span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"select * from foo"</span><span class="p">];</span>
+ <span class="k">while</span> <span class="p">([</span><span class="n">rs</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="err">…</span>
+ <span class="p">}</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p>An easy way to wrap things up in a transaction can be done like this:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inTransaction</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">,</span> <span class="n">BOOL</span> <span class="o">*</span><span class="n">rollback</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@1</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@2</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@3</span><span class="p">];</span>
+
+ <span class="k">if</span> <span class="p">(</span><span class="n">whoopsSomethingWrongHappened</span><span class="p">)</span> <span class="p">{</span>
+ <span class="o">*</span><span class="n">rollback</span> <span class="o">=</span> <span class="nb">YES</span><span class="p">;</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span>
+
+ <span class="c1">// etc ...
+</span><span class="p">}];</span>
+</code></pre>
+
+<p>The Swift equivalent would be:</p>
+<pre class="highlight swift"><code><span class="n">queue</span><span class="o">.</span><span class="n">inTransaction</span> <span class="p">{</span> <span class="n">db</span><span class="p">,</span> <span class="n">rollback</span> <span class="k">in</span>
+ <span class="k">do</span> <span class="p">{</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">2</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">3</span><span class="p">])</span>
+
+ <span class="k">if</span> <span class="n">whoopsSomethingWrongHappened</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="k">return</span>
+ <span class="p">}</span>
+
+ <span class="c1">// etc ...</span>
+ <span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="nf">print</span><span class="p">(</span><span class="n">error</span><span class="p">)</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>(Note, as of Swift 3, use <code>pointee</code>. But in Swift 2.3, use <code>memory</code> rather than <code>pointee</code>.)</p>
+
+<p><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> will run the blocks on a serialized queue (hence the name of the class). So if you call <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code>&rsquo;s methods from multiple threads at the same time, they will be executed in the order they are received. This way queries and updates won&rsquo;t step on each other&rsquo;s toes, and every one is happy.</p>
+
+<p><strong>Note:</strong> The calls to <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code>&rsquo;s methods are blocking. So even though you are passing along blocks, they will <strong>not</strong> be run on another thread.</p>
+<h2 id='making-custom-sqlite-functions-based-on-blocks' class='heading'>Making custom sqlite functions, based on blocks.</h2>
+
+<p>You can do this! For an example, look for <code>-makeFunctionNamed:</code> in main.m</p>
+<h2 id='swift' class='heading'>Swift</h2>
+
+<p>You can use FMDB in Swift projects too.</p>
+
+<p>To do this, you must:</p>
+
+<ol>
+<li>Copy the relevant <code>.m</code> and <code>.h</code> files from the FMDB <code>src</code> folder into your project.</li>
+</ol>
+
+<p>You can copy all of them (which is easiest), or only the ones you need. Likely you will need <a href="https://ccgus.github.io/fmdb/html/Classes/FMDatabase.html"><code><a href="Classes/FMDatabase.html">FMDatabase</a></code></a> and <a href="https://ccgus.github.io/fmdb/html/Classes/FMResultSet.html"><code><a href="Classes/FMResultSet.html">FMResultSet</a></code></a> at a minimum. <a href="https://ccgus.github.io/fmdb/html/Categories/FMDatabase+FMDatabaseAdditions.html"><code>FMDatabaseAdditions</code></a> provides some very useful convenience methods, so you will likely want that, too. If you are doing multithreaded access to a database, <a href="https://ccgus.github.io/fmdb/html/Classes/FMDatabaseQueue.html"><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></a> is quite useful, too. If you choose to not copy all of the files from the <code>src</code> directory, though, you may want to update <code>FMDB.h</code> to only reference the files that you included in your project.</p>
+
+<p>Note, if you&rsquo;re copying all of the files from the <code>src</code> folder into to your project (which is recommended), you may want to drag the individual files into your project, not the folder, itself, because if you drag the folder, you won&rsquo;t be prompted to add the bridging header (see next point).</p>
+
+<ol>
+<li>If prompted to create a &ldquo;bridging header&rdquo;, you should do so. If not prompted and if you don&rsquo;t already have a bridging header, add one.</li>
+</ol>
+
+<p>For more information on bridging headers, see <a href="https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html#//apple_ref/doc/uid/TP40014216-CH10-XID_76">Swift and Objective-C in the Same Project</a>.</p>
+
+<ol>
+<li><p>In your bridging header, add a line that says:</p>
+<pre class="highlight objective_c"><code><span class="cp">#import "FMDB.h"
+</span></code></pre></li>
+<li><p>Use the variations of <code>executeQuery</code> and <code>executeUpdate</code> with the <code>sql</code> and <code>values</code> parameters with <code>try</code> pattern, as shown below. These renditions of <code>executeQuery</code> and <code>executeUpdate</code> both <code>throw</code> errors in true Swift fashion.</p></li>
+</ol>
+
+<p>If you do the above, you can then write Swift code that uses <code><a href="Classes/FMDatabase.html">FMDatabase</a></code>. For example, as of Swift 3:</p>
+<pre class="highlight swift"><code><span class="k">let</span> <span class="nv">fileURL</span> <span class="o">=</span> <span class="k">try!</span> <span class="kt">FileManager</span><span class="o">.</span><span class="k">default</span>
+ <span class="o">.</span><span class="nf">url</span><span class="p">(</span><span class="nv">for</span><span class="p">:</span> <span class="o">.</span><span class="n">applicationSupportDirectory</span><span class="p">,</span> <span class="nv">in</span><span class="p">:</span> <span class="o">.</span><span class="n">userDomainMask</span><span class="p">,</span> <span class="nv">appropriateFor</span><span class="p">:</span> <span class="kc">nil</span><span class="p">,</span> <span class="nv">create</span><span class="p">:</span> <span class="kc">true</span><span class="p">)</span>
+ <span class="o">.</span><span class="nf">appendingPathComponent</span><span class="p">(</span><span class="s">"test.sqlite"</span><span class="p">)</span>
+
+<span class="k">let</span> <span class="nv">database</span> <span class="o">=</span> <span class="kt">FMDatabase</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="n">fileURL</span><span class="p">)</span>
+
+<span class="k">guard</span> <span class="n">database</span><span class="o">.</span><span class="nf">open</span><span class="p">()</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"Unable to open database"</span><span class="p">)</span>
+ <span class="k">return</span>
+<span class="p">}</span>
+
+<span class="k">do</span> <span class="p">{</span>
+ <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"create table test(x text, y text, z text)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="kc">nil</span><span class="p">)</span>
+ <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"insert into test (x, y, z) values (?, ?, ?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="s">"a"</span><span class="p">,</span> <span class="s">"b"</span><span class="p">,</span> <span class="s">"c"</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"insert into test (x, y, z) values (?, ?, ?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="s">"e"</span><span class="p">,</span> <span class="s">"f"</span><span class="p">,</span> <span class="s">"g"</span><span class="p">])</span>
+
+ <span class="k">let</span> <span class="nv">rs</span> <span class="o">=</span> <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeQuery</span><span class="p">(</span><span class="s">"select x, y, z from test"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="kc">nil</span><span class="p">)</span>
+ <span class="k">while</span> <span class="n">rs</span><span class="o">.</span><span class="nf">next</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">if</span> <span class="k">let</span> <span class="nv">x</span> <span class="o">=</span> <span class="n">rs</span><span class="o">.</span><span class="nf">string</span><span class="p">(</span><span class="nv">forColumn</span><span class="p">:</span> <span class="s">"x"</span><span class="p">),</span> <span class="k">let</span> <span class="nv">y</span> <span class="o">=</span> <span class="n">rs</span><span class="o">.</span><span class="nf">string</span><span class="p">(</span><span class="nv">forColumn</span><span class="p">:</span> <span class="s">"y"</span><span class="p">),</span> <span class="k">let</span> <span class="nv">z</span> <span class="o">=</span> <span class="n">rs</span><span class="o">.</span><span class="nf">string</span><span class="p">(</span><span class="nv">forColumn</span><span class="p">:</span> <span class="s">"z"</span><span class="p">)</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"x = </span><span class="se">\(</span><span class="n">x</span><span class="se">)</span><span class="s">; y = </span><span class="se">\(</span><span class="n">y</span><span class="se">)</span><span class="s">; z = </span><span class="se">\(</span><span class="n">z</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+<span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"failed: </span><span class="se">\(</span><span class="n">error</span><span class="o">.</span><span class="n">localizedDescription</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
+<span class="p">}</span>
+
+<span class="n">database</span><span class="o">.</span><span class="nf">close</span><span class="p">()</span>
+</code></pre>
+<h2 id='history' class='heading'>History</h2>
+
+<p>The history and changes are availbe on its <a href="https://github.com/ccgus/fmdb">GitHub page</a> and are summarized in the &ldquo;CHANGES_AND_TODO_LIST.txt&rdquo; file.</p>
+<h2 id='contributors' class='heading'>Contributors</h2>
+
+<p>The contributors to FMDB are contained in the &ldquo;Contributors.txt&rdquo; file.</p>
+<h2 id='additional-projects-using-fmdb-which-might-be-interesting-to-the-discerning-developer' class='heading'>Additional projects using FMDB, which might be interesting to the discerning developer.</h2>
+
+<ul>
+<li>FMDBMigrationManager, A SQLite schema migration management system for FMDB: <a href="https://github.com/layerhq/FMDBMigrationManager">https://github.com/layerhq/FMDBMigrationManager</a></li>
+<li>FCModel, An alternative to Core Data for people who like having direct SQL access: <a href="https://github.com/marcoarment/FCModel">https://github.com/marcoarment/FCModel</a></li>
+</ul>
+<h2 id='quick-notes-on-fmdb-39-s-coding-style' class='heading'>Quick notes on FMDB&rsquo;s coding style</h2>
+
+<p>Spaces, not tabs. Square brackets, not dot notation. Look at what FMDB already does with curly brackets and such, and stick to that style.</p>
+<h2 id='reporting-bugs' class='heading'>Reporting bugs</h2>
+
+<p>Reduce your bug down to the smallest amount of code possible. You want to make it super easy for the developers to see and reproduce your bug. If it helps, pretend that the person who can fix your bug is active on shipping 3 major products, works on a handful of open source projects, has a newborn baby, and is generally very very busy.</p>
+
+<p>And we&rsquo;ve even added a template function to main.m (FMDBReportABugFunction) in the FMDB distribution to help you out:</p>
+
+<ul>
+<li>Open up fmdb project in Xcode.</li>
+<li>Open up main.m and modify the FMDBReportABugFunction to reproduce your bug.
+
+<ul>
+<li>Setup your table(s) in the code.</li>
+<li>Make your query or update(s).</li>
+<li>Add some assertions which demonstrate the bug.</li>
+</ul></li>
+</ul>
+
+<p>Then you can bring it up on the FMDB mailing list by showing your nice and compact FMDBReportABugFunction, or you can report the bug via the github FMDB bug reporter.</p>
+
+<p><strong>Optional:</strong></p>
+
+<p>Figure out where the bug is, fix it, and send a patch in or bring that up on the mailing list. Make sure all the other tests run after your modifications.</p>
+<h2 id='support' class='heading'>Support</h2>
+
+<p>The support channels for FMDB are the mailing list (see above), filing a bug here, or maybe on Stack Overflow. So that is to say, support is provided by the community and on a voluntary basis.</p>
+
+<p>FMDB development is overseen by Gus Mueller of Flying Meat. If FMDB been helpful to you, consider purchasing an app from FM or telling all your friends about it.</p>
+<h2 id='license' class='heading'>License</h2>
+
+<p>The license for FMDB is contained in the &ldquo;License.txt&rdquo; file.</p>
+
+<p>If you happen to come across either Gus Mueller or Rob Ryan in a bar, you might consider purchasing a drink of their choosing if FMDB has been useful to you.</p>
+
+<p>(The drink is for them of course, shame on you for trying to keep it.)</p>
+
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/js/jazzy.js b/html/docsets/FMDB.docset/Contents/Resources/Documents/js/jazzy.js
new file mode 100755
index 0000000..1e55d6e
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/js/jazzy.js
@@ -0,0 +1,70 @@
+window.jazzy = {'docset': false}
+if (typeof window.dash != 'undefined') {
+ document.documentElement.className += ' dash'
+ window.jazzy.docset = true
+}
+if (navigator.userAgent.match(/xcode/i)) {
+ document.documentElement.className += ' xcode'
+ window.jazzy.docset = true
+}
+
+function toggleItem($link, $content) {
+ var animationDuration = 300;
+ $link.toggleClass('token-open');
+ $content.slideToggle(animationDuration);
+}
+
+function itemLinkToContent($link) {
+ return $link.parent().parent().next();
+}
+
+// On doc load + hash-change, open any targetted item
+function openCurrentItemIfClosed() {
+ if (window.jazzy.docset) {
+ return;
+ }
+ var $link = $(`a[name="${location.hash.substring(1)}"]`).nextAll('.token');
+ $content = itemLinkToContent($link);
+ if ($content.is(':hidden')) {
+ toggleItem($link, $content);
+ }
+}
+
+$(openCurrentItemIfClosed);
+$(window).on('hashchange', openCurrentItemIfClosed);
+
+// On item link ('token') click, toggle its discussion
+$('.token').on('click', function(event) {
+ if (window.jazzy.docset) {
+ return;
+ }
+ var $link = $(this);
+ toggleItem($link, itemLinkToContent($link));
+
+ // Keeps the document from jumping to the hash.
+ var href = $link.attr('href');
+ if (history.pushState) {
+ history.pushState({}, '', href);
+ } else {
+ location.hash = href;
+ }
+ event.preventDefault();
+});
+
+// Clicks on links to the current, closed, item need to open the item
+$("a:not('.token')").on('click', function() {
+ if (location == this.href) {
+ openCurrentItemIfClosed();
+ }
+});
+
+// KaTeX rendering
+if ("katex" in window) {
+ $($('.math').each( (_, element) => {
+ katex.render(element.textContent, element, {
+ displayMode: $(element).hasClass('m-block'),
+ throwOnError: false,
+ trust: true
+ });
+ }))
+}
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/js/jquery.min.js b/html/docsets/FMDB.docset/Contents/Resources/Documents/js/jquery.min.js
new file mode 100644
index 0000000..a1c07fd
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/js/jquery.min.js
@@ -0,0 +1,2 @@
+/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}k.fn=k.prototype={jquery:f,constructor:k,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=k.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return k.each(this,e)},map:function(n){return this.pushStack(k.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},k.extend=k.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(k.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||k.isPlainObject(n)?n:{},i=!1,a[t]=k.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},k.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t){b(e,{nonce:t&&t.nonce})},each:function(e,t){var n,r=0;if(d(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(p,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(d(Object(e))?k.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(d(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g.apply([],a)},guid:1,support:y}),"function"==typeof Symbol&&(k.fn[Symbol.iterator]=t[Symbol.iterator]),k.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var h=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,k="sizzle"+1*new Date,m=n.document,S=0,r=0,p=ue(),x=ue(),N=ue(),A=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",$=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",F=new RegExp(M+"+","g"),B=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="<a id='"+k+"'></a><select id='"+k+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!==C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!==C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(F," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[S,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[S,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[k]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace(B,"$1"));return s[k]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[S,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[k]||(e[k]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===S&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[k]&&(v=Ce(v)),y&&!y[k]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[k]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(B,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace(B," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=N[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[k]?i.push(a):o.push(a);(a=N(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=S+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t===C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument===C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(S=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(S=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=k.split("").sort(D).join("")===k,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);k.find=h,k.expr=h.selectors,k.expr[":"]=k.expr.pseudos,k.uniqueSort=k.unique=h.uniqueSort,k.text=h.getText,k.isXMLDoc=h.isXML,k.contains=h.contains,k.escapeSelector=h.escape;var T=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&k(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},N=k.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var D=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1<i.call(n,e)!==r}):k.filter(n,e,r)}k.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?k.find.matchesSelector(r,e)?[r]:[]:k.find.matches(e,k.grep(t,function(e){return 1===e.nodeType}))},k.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(k(e).filter(function(){for(t=0;t<r;t++)if(k.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)k.find(e,i[t],n);return 1<r?k.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&N.test(e)?k(e):e||[],!1).length}});var q,L=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(k.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&k(e);if(!N.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&k.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?k.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(k(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(k.uniqueSort(k.merge(this.get(),k(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),k.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return T(e,"parentNode")},parentsUntil:function(e,t,n){return T(e,"parentNode",n)},next:function(e){return P(e,"nextSibling")},prev:function(e){return P(e,"previousSibling")},nextAll:function(e){return T(e,"nextSibling")},prevAll:function(e){return T(e,"previousSibling")},nextUntil:function(e,t,n){return T(e,"nextSibling",n)},prevUntil:function(e,t,n){return T(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return"undefined"!=typeof e.contentDocument?e.contentDocument:(A(e,"template")&&(e=e.content||e),k.merge([],e.childNodes))}},function(r,i){k.fn[r]=function(e,t){var n=k.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=k.filter(t,n)),1<this.length&&(O[r]||k.uniqueSort(n),H.test(r)&&n.reverse()),this.pushStack(n)}});var R=/[^\x20\t\r\n\f]+/g;function M(e){return e}function I(e){throw e}function W(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}k.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},k.each(e.match(R)||[],function(e,t){n[t]=!0}),n):k.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){k.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return k.each(arguments,function(e,t){var n;while(-1<(n=k.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<k.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},k.extend({Deferred:function(e){var o=[["notify","progress",k.Callbacks("memory"),k.Callbacks("memory"),2],["resolve","done",k.Callbacks("once memory"),k.Callbacks("once memory"),0,"resolved"],["reject","fail",k.Callbacks("once memory"),k.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return k.Deferred(function(r){k.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,M,s),l(u,o,I,s)):(u++,t.call(e,l(u,o,M,s),l(u,o,I,s),l(u,o,M,o.notifyWith))):(a!==M&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){k.Deferred.exceptionHook&&k.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==I&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(k.Deferred.getStackHook&&(t.stackTrace=k.Deferred.getStackHook()),C.setTimeout(t))}}return k.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:M,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:M)),o[2][3].add(l(0,e,m(n)?n:I))}).promise()},promise:function(e){return null!=e?k.extend(e,a):a}},s={};return k.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=k.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(W(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)W(i[t],a(t),o.reject);return o.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;k.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&$.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},k.readyException=function(e){C.setTimeout(function(){throw e})};var F=k.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),k.ready()}k.fn.ready=function(e){return F.then(e)["catch"](function(e){k.readyException(e)}),this},k.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--k.readyWait:k.isReady)||(k.isReady=!0)!==e&&0<--k.readyWait||F.resolveWith(E,[k])}}),k.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(k.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var _=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)_(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(k(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},z=/^-ms-/,U=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function V(e){return e.replace(z,"ms-").replace(U,X)}var G=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function Y(){this.expando=k.expando+Y.uid++}Y.uid=1,Y.prototype={cache:function(e){var t=e[this.expando];return t||(t={},G(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[V(t)]=n;else for(r in t)i[V(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][V(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(V):(t=V(t))in r?[t]:t.match(R)||[]).length;while(n--)delete r[t[n]]}(void 0===t||k.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!k.isEmptyObject(t)}};var Q=new Y,J=new Y,K=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Z=/[A-Z]/g;function ee(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Z,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:K.test(i)?JSON.parse(i):i)}catch(e){}J.set(e,t,n)}else n=void 0;return n}k.extend({hasData:function(e){return J.hasData(e)||Q.hasData(e)},data:function(e,t,n){return J.access(e,t,n)},removeData:function(e,t){J.remove(e,t)},_data:function(e,t,n){return Q.access(e,t,n)},_removeData:function(e,t){Q.remove(e,t)}}),k.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=J.get(o),1===o.nodeType&&!Q.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=V(r.slice(5)),ee(o,r,i[r]));Q.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){J.set(this,n)}):_(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=J.get(o,n))?t:void 0!==(t=ee(o,n))?t:void 0;this.each(function(){J.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),k.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Q.get(e,t),n&&(!r||Array.isArray(n)?r=Q.access(e,t,k.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=k.queue(e,t),r=n.length,i=n.shift(),o=k._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){k.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Q.get(e,n)||Q.access(e,n,{empty:k.Callbacks("once memory").add(function(){Q.remove(e,[t+"queue",n])})})}}),k.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?k.queue(this[0],t):void 0===n?this:this.each(function(){var e=k.queue(this,t,n);k._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&k.dequeue(this,t)})},dequeue:function(e){return this.each(function(){k.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=k.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Q.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var te=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ne=new RegExp("^(?:([+-])=|)("+te+")([a-z%]*)$","i"),re=["Top","Right","Bottom","Left"],ie=E.documentElement,oe=function(e){return k.contains(e.ownerDocument,e)},ae={composed:!0};ie.getRootNode&&(oe=function(e){return k.contains(e.ownerDocument,e)||e.getRootNode(ae)===e.ownerDocument});var se=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&oe(e)&&"none"===k.css(e,"display")},ue=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];for(o in i=n.apply(e,r||[]),t)e.style[o]=a[o];return i};function le(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return k.css(e,t,"")},u=s(),l=n&&n[3]||(k.cssNumber[t]?"":"px"),c=e.nodeType&&(k.cssNumber[t]||"px"!==l&&+u)&&ne.exec(k.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)k.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,k.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ce={};function fe(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Q.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&se(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ce[s])||(o=a.body.appendChild(a.createElement(s)),u=k.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ce[s]=u)))):"none"!==n&&(l[c]="none",Q.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}k.fn.extend({show:function(){return fe(this,!0)},hide:function(){return fe(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){se(this)?k(this).show():k(this).hide()})}});var pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Q.set(e[n],"globalEval",!t||Q.get(t[n],"globalEval"))}ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;var me,xe,be=/<|&#?\w+;/;function we(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))k.merge(p,o.nodeType?[o]:o);else if(be.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+k.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;k.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<k.inArray(o,r))i&&i.push(o);else if(l=oe(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}me=E.createDocumentFragment().appendChild(E.createElement("div")),(xe=E.createElement("input")).setAttribute("type","radio"),xe.setAttribute("checked","checked"),xe.setAttribute("name","t"),me.appendChild(xe),y.checkClone=me.cloneNode(!0).cloneNode(!0).lastChild.checked,me.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,s)){a=k.event.handlers.call(this,s,l),t=0;while((i=a[t++])&&!s.isPropagationStopped()){s.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!s.isImmediatePropagationStopped())s.rnamespace&&!1!==o.namespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((k.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<k(i,this).index(l):k.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(k.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[k.expando]?e:new k.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click",ke),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Q.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},k.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},k.Event=function(e,t){if(!(this instanceof k.Event))return new k.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?ke:Se,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&k.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[k.expando]=!0},k.Event.prototype={constructor:k.Event,isDefaultPrevented:Se,isPropagationStopped:Se,isImmediatePropagationStopped:Se,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=ke,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=ke,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=ke,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},k.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&Te.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Ce.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},k.event.addProp),k.each({focus:"focusin",blur:"focusout"},function(e,t){k.event.special[e]={setup:function(){return De(this,e,Ne),!1},trigger:function(){return De(this,e),!0},delegateType:t}}),k.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){k.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||k.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),k.fn.extend({on:function(e,t,n,r){return Ae(this,e,t,n,r)},one:function(e,t,n,r){return Ae(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,k(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Se),this.each(function(){k.event.remove(this,e,n,t)})}});var je=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/<script|<style|<link/i,Le=/checked\s*(?:[^=]|=\s*.checked.)/i,He=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n<r;n++)k.event.add(t,i,l[i][n]);J.hasData(e)&&(s=J.access(e),u=k.extend({},s),J.set(t,u))}}function Ie(n,r,i,o){r=g.apply([],r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Le.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Ie(t,r,i,o)});if(f&&(t=(e=we(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=k.map(ve(e,"script"),Pe)).length;c<f;c++)u=e,c!==p&&(u=k.clone(u,!0,!0),s&&k.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,k.map(a,Re),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Q.access(u,"globalEval")&&k.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?k._evalUrl&&!u.noModule&&k._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")}):b(u.textContent.replace(He,""),u,l))}return n}function We(e,t,n){for(var r,i=t?k.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||k.cleanData(ve(r)),r.parentNode&&(n&&oe(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}k.extend({htmlPrefilter:function(e){return e.replace(je,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Me(o[r],a[r]);else Me(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=k.event.special,o=0;void 0!==(n=e[o]);o++)if(G(n)){if(t=n[Q.expando]){if(t.events)for(r in t.events)i[r]?k.event.remove(n,r):k.removeEvent(n,r,t.handle);n[Q.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),k.fn.extend({detach:function(e){return We(this,e,!0)},remove:function(e){return We(this,e)},text:function(e){return _(this,function(e){return void 0===e?k.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Ie(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Oe(this,e).appendChild(e)})},prepend:function(){return Ie(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Oe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(k.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return k.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!qe.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=k.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(k.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Ie(this,arguments,function(e){var t=this.parentNode;k.inArray(this,n)<0&&(k.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),k.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){k.fn[e]=function(e){for(var t,n=[],r=k(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),k(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var $e=new RegExp("^("+te+")(?!px)[a-z%]+$","i"),Fe=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Be=new RegExp(re.join("|"),"i");function _e(e,t,n){var r,i,o,a,s=e.style;return(n=n||Fe(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||oe(e)||(a=k.style(e,t)),!y.pixelBoxStyles()&&$e.test(a)&&Be.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(u){s.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ie.appendChild(s).appendChild(u);var e=C.getComputedStyle(u);n="1%"!==e.top,a=12===t(e.marginLeft),u.style.right="60%",o=36===t(e.right),r=36===t(e.width),u.style.position="absolute",i=12===t(u.offsetWidth/3),ie.removeChild(s),u=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s=E.createElement("div"),u=E.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===u.style.backgroundClip,k.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),a},scrollboxSize:function(){return e(),i}}))}();var Ue=["Webkit","Moz","ms"],Xe=E.createElement("div").style,Ve={};function Ge(e){var t=k.cssProps[e]||Ve[e];return t||(e in Xe?e:Ve[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Ue.length;while(n--)if((e=Ue[n]+t)in Xe)return e}(e)||e)}var Ye=/^(none|table(?!-c[ea]).+)/,Qe=/^--/,Je={position:"absolute",visibility:"hidden",display:"block"},Ke={letterSpacing:"0",fontWeight:"400"};function Ze(e,t,n){var r=ne.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function et(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=k.css(e,n+re[a],!0,i)),r?("content"===n&&(u-=k.css(e,"padding"+re[a],!0,i)),"margin"!==n&&(u-=k.css(e,"border"+re[a]+"Width",!0,i))):(u+=k.css(e,"padding"+re[a],!0,i),"padding"!==n?u+=k.css(e,"border"+re[a]+"Width",!0,i):s+=k.css(e,"border"+re[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function tt(e,t,n){var r=Fe(e),i=(!y.boxSizingReliable()||n)&&"border-box"===k.css(e,"boxSizing",!1,r),o=i,a=_e(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if($e.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||"auto"===a||!parseFloat(a)&&"inline"===k.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===k.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+et(e,t,n||(i?"border":"content"),o,r,a)+"px"}function nt(e,t,n,r,i){return new nt.prototype.init(e,t,n,r,i)}k.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=_e(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=V(t),u=Qe.test(t),l=e.style;if(u||(t=Ge(s)),a=k.cssHooks[t]||k.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=ne.exec(n))&&i[1]&&(n=le(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(k.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=V(t);return Qe.test(t)||(t=Ge(s)),(a=k.cssHooks[t]||k.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=_e(e,t,r)),"normal"===i&&t in Ke&&(i=Ke[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),k.each(["height","width"],function(e,u){k.cssHooks[u]={get:function(e,t,n){if(t)return!Ye.test(k.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?tt(e,u,n):ue(e,Je,function(){return tt(e,u,n)})},set:function(e,t,n){var r,i=Fe(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===k.css(e,"boxSizing",!1,i),s=n?et(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-et(e,u,"border",!1,i)-.5)),s&&(r=ne.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=k.css(e,u)),Ze(0,t,s)}}}),k.cssHooks.marginLeft=ze(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(_e(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),k.each({margin:"",padding:"",border:"Width"},function(i,o){k.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+re[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(k.cssHooks[i+o].set=Ze)}),k.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Fe(e),i=t.length;a<i;a++)o[t[a]]=k.css(e,t[a],!1,r);return o}return void 0!==n?k.style(e,t,n):k.css(e,t)},e,t,1<arguments.length)}}),((k.Tween=nt).prototype={constructor:nt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||k.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(k.cssNumber[n]?"":"px")},cur:function(){var e=nt.propHooks[this.prop];return e&&e.get?e.get(this):nt.propHooks._default.get(this)},run:function(e){var t,n=nt.propHooks[this.prop];return this.options.duration?this.pos=t=k.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):nt.propHooks._default.set(this),this}}).init.prototype=nt.prototype,(nt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=k.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){k.fx.step[e.prop]?k.fx.step[e.prop](e):1!==e.elem.nodeType||!k.cssHooks[e.prop]&&null==e.elem.style[Ge(e.prop)]?e.elem[e.prop]=e.now:k.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=nt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},k.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},k.fx=nt.prototype.init,k.fx.step={};var rt,it,ot,at,st=/^(?:toggle|show|hide)$/,ut=/queueHooks$/;function lt(){it&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(lt):C.setTimeout(lt,k.fx.interval),k.fx.tick())}function ct(){return C.setTimeout(function(){rt=void 0}),rt=Date.now()}function ft(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=re[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function pt(e,t,n){for(var r,i=(dt.tweeners[t]||[]).concat(dt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function dt(o,e,t){var n,a,r=0,i=dt.prefilters.length,s=k.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=rt||ct(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:k.extend({},e),opts:k.extend(!0,{specialEasing:{},easing:k.easing._default},t),originalProperties:e,originalOptions:t,startTime:rt||ct(),duration:t.duration,tweens:[],createTween:function(e,t){var n=k.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=V(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=k.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=dt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(k._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return k.map(c,pt,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),k.fx.timer(k.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}k.Animation=k.extend(dt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return le(n.elem,e,ne.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(R);for(var n,r=0,i=e.length;r<i;r++)n=e[r],dt.tweeners[n]=dt.tweeners[n]||[],dt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&se(e),v=Q.get(e,"fxshow");for(r in n.queue||(null==(a=k._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,k.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],st.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||k.style(e,r)}if((u=!k.isEmptyObject(t))||!k.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Q.get(e,"display")),"none"===(c=k.css(e,"display"))&&(l?c=l:(fe([e],!0),l=e.style.display||l,c=k.css(e,"display"),fe([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===k.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Q.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&fe([e],!0),p.done(function(){for(r in g||fe([e]),Q.remove(e,"fxshow"),d)k.style(e,r,d[r])})),u=pt(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?dt.prefilters.unshift(e):dt.prefilters.push(e)}}),k.speed=function(e,t,n){var r=e&&"object"==typeof e?k.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return k.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in k.fx.speeds?r.duration=k.fx.speeds[r.duration]:r.duration=k.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&k.dequeue(this,r.queue)},r},k.fn.extend({fadeTo:function(e,t,n,r){return this.filter(se).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=k.isEmptyObject(t),o=k.speed(e,n,r),a=function(){var e=dt(this,k.extend({},t),o);(i||Q.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&!1!==i&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=k.timers,r=Q.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&ut.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||k.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Q.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=k.timers,o=n?n.length:0;for(t.finish=!0,k.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),k.each(["toggle","show","hide"],function(e,r){var i=k.fn[r];k.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(ft(r,!0),e,t,n)}}),k.each({slideDown:ft("show"),slideUp:ft("hide"),slideToggle:ft("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){k.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),k.timers=[],k.fx.tick=function(){var e,t=0,n=k.timers;for(rt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||k.fx.stop(),rt=void 0},k.fx.timer=function(e){k.timers.push(e),k.fx.start()},k.fx.interval=13,k.fx.start=function(){it||(it=!0,lt())},k.fx.stop=function(){it=null},k.fx.speeds={slow:600,fast:200,_default:400},k.fn.delay=function(r,e){return r=k.fx&&k.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},ot=E.createElement("input"),at=E.createElement("select").appendChild(E.createElement("option")),ot.type="checkbox",y.checkOn=""!==ot.value,y.optSelected=at.selected,(ot=E.createElement("input")).value="t",ot.type="radio",y.radioValue="t"===ot.value;var ht,gt=k.expr.attrHandle;k.fn.extend({attr:function(e,t){return _(this,k.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){k.removeAttr(this,e)})}}),k.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?k.prop(e,t,n):(1===o&&k.isXMLDoc(e)||(i=k.attrHooks[t.toLowerCase()]||(k.expr.match.bool.test(t)?ht:void 0)),void 0!==n?null===n?void k.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=k.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(R);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ht={set:function(e,t,n){return!1===t?k.removeAttr(e,n):e.setAttribute(n,n),n}},k.each(k.expr.match.bool.source.match(/\w+/g),function(e,t){var a=gt[t]||k.find.attr;gt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=gt[o],gt[o]=r,r=null!=a(e,t,n)?o:null,gt[o]=i),r}});var vt=/^(?:input|select|textarea|button)$/i,yt=/^(?:a|area)$/i;function mt(e){return(e.match(R)||[]).join(" ")}function xt(e){return e.getAttribute&&e.getAttribute("class")||""}function bt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(R)||[]}k.fn.extend({prop:function(e,t){return _(this,k.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[k.propFix[e]||e]})}}),k.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&k.isXMLDoc(e)||(t=k.propFix[t]||t,i=k.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=k.find.attr(e,"tabindex");return t?parseInt(t,10):vt.test(e.nodeName)||yt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(k.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),k.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){k.propFix[this.toLowerCase()]=this}),k.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).addClass(t.call(this,e,xt(this)))});if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).removeClass(t.call(this,e,xt(this)))});if(!arguments.length)return this.attr("class","");if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){k(this).toggleClass(i.call(this,e,xt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=k(this),r=bt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=xt(this))&&Q.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Q.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+mt(xt(n))+" ").indexOf(t))return!0;return!1}});var wt=/\r/g;k.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,k(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=k.map(t,function(e){return null==e?"":e+""})),(r=k.valHooks[this.type]||k.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=k.valHooks[t.type]||k.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(wt,""):null==e?"":e:void 0}}),k.extend({valHooks:{option:{get:function(e){var t=k.find.attr(e,"value");return null!=t?t:mt(k.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=k(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=k.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<k.inArray(k.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),k.each(["radio","checkbox"],function(){k.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<k.inArray(k(e).val(),t)}},y.checkOn||(k.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var Tt=/^(?:focusinfocus|focusoutblur)$/,Ct=function(e){e.stopPropagation()};k.extend(k.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!Tt.test(d+k.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[k.expando]?e:new k.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:k.makeArray(t,[e]),c=k.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,Tt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Q.get(o,"events")||{})[e.type]&&Q.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&G(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!G(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),k.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,Ct),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,Ct),k.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=k.extend(new k.Event,n,{type:e,isSimulated:!0});k.event.trigger(r,null,t)}}),k.fn.extend({trigger:function(e,t){return this.each(function(){k.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return k.event.trigger(e,t,n,!0)}}),y.focusin||k.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){k.event.simulate(r,e.target,k.event.fix(e))};k.event.special[r]={setup:function(){var e=this.ownerDocument||this,t=Q.access(e,r);t||e.addEventListener(n,i,!0),Q.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=Q.access(e,r)-1;t?Q.access(e,r,t):(e.removeEventListener(n,i,!0),Q.remove(e,r))}}});var Et=C.location,kt=Date.now(),St=/\?/;k.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||k.error("Invalid XML: "+e),t};var Nt=/\[\]$/,At=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,jt=/^(?:input|select|textarea|keygen)/i;function qt(n,e,r,i){var t;if(Array.isArray(e))k.each(e,function(e,t){r||Nt.test(n)?i(n,t):qt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)qt(n+"["+t+"]",e[t],r,i)}k.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!k.isPlainObject(e))k.each(e,function(){i(this.name,this.value)});else for(n in e)qt(n,e[n],t,i);return r.join("&")},k.fn.extend({serialize:function(){return k.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=k.prop(this,"elements");return e?k.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!k(this).is(":disabled")&&jt.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=k(this).val();return null==n?null:Array.isArray(n)?k.map(n,function(e){return{name:t.name,value:e.replace(At,"\r\n")}}):{name:t.name,value:n.replace(At,"\r\n")}}).get()}});var Lt=/%20/g,Ht=/#.*$/,Ot=/([?&])_=[^&]*/,Pt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Rt=/^(?:GET|HEAD)$/,Mt=/^\/\//,It={},Wt={},$t="*/".concat("*"),Ft=E.createElement("a");function Bt(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(R)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function _t(t,i,o,a){var s={},u=t===Wt;function l(e){var r;return s[e]=!0,k.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function zt(e,t){var n,r,i=k.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&k.extend(!0,e,r),e}Ft.href=Et.href,k.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Et.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Et.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$t,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":k.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?zt(zt(e,k.ajaxSettings),t):zt(k.ajaxSettings,e)},ajaxPrefilter:Bt(It),ajaxTransport:Bt(Wt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=k.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?k(y):k.event,x=k.Deferred(),b=k.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Pt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Et.href)+"").replace(Mt,Et.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(R)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Ft.protocol+"//"+Ft.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=k.param(v.data,v.traditional)),_t(It,v,t,T),h)return T;for(i in(g=k.event&&v.global)&&0==k.active++&&k.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Rt.test(v.type),f=v.url.replace(Ht,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Lt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(St.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Ot,"$1"),o=(St.test(f)?"&":"?")+"_="+kt+++o),v.url=f+o),v.ifModified&&(k.lastModified[f]&&T.setRequestHeader("If-Modified-Since",k.lastModified[f]),k.etag[f]&&T.setRequestHeader("If-None-Match",k.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+$t+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=_t(Wt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(k.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(k.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--k.active||k.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return k.get(e,t,n,"json")},getScript:function(e,t){return k.get(e,void 0,t,"script")}}),k.each(["get","post"],function(e,i){k[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),k.ajax(k.extend({url:e,type:i,dataType:r,data:t,success:n},k.isPlainObject(e)&&e))}}),k._evalUrl=function(e,t){return k.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){k.globalEval(e,t)}})},k.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=k(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){k(this).wrapInner(n.call(this,e))}):this.each(function(){var e=k(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){k(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){k(this).replaceWith(this.childNodes)}),this}}),k.expr.pseudos.hidden=function(e){return!k.expr.pseudos.visible(e)},k.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},k.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},Xt=k.ajaxSettings.xhr();y.cors=!!Xt&&"withCredentials"in Xt,y.ajax=Xt=!!Xt,k.ajaxTransport(function(i){var o,a;if(y.cors||Xt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Ut[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),k.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),k.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return k.globalEval(e),e}}}),k.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),k.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=k("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=mt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&k.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?k("<div>").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),k.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),k.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),k.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||k.guid++,i},k.holdReady=function(e){e?k.readyWait++:k.ready(!0)},k.isArray=Array.isArray,k.parseJSON=JSON.parse,k.nodeName=A,k.isFunction=m,k.isWindow=x,k.camelCase=V,k.type=w,k.now=Date.now,k.isNumeric=function(e){var t=k.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return k});var Qt=C.jQuery,Jt=C.$;return k.noConflict=function(e){return C.$===k&&(C.$=Jt),e&&C.jQuery===k&&(C.jQuery=Qt),k},e||(C.jQuery=C.$=k),k});
diff --git a/html/docsets/FMDB.docset/Contents/Resources/Documents/search.json b/html/docsets/FMDB.docset/Contents/Resources/Documents/search.json
new file mode 100644
index 0000000..19c218f
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/Documents/search.json
@@ -0,0 +1 @@
+{"Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock":{"name":"FMDBExecuteStatementsCallbackBlock","abstract":"<p>Callback block used by <code>executeStatements:withResultBlock:</code></p>"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeInteger":{"name":"SqliteValueTypeInteger","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeFloat":{"name":"SqliteValueTypeFloat","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeText":{"name":"SqliteValueTypeText","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeBlob":{"name":"SqliteValueTypeBlob","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeNull":{"name":"SqliteValueTypeNull","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModePassive":{"name":"FMDBCheckpointModePassive","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeFull":{"name":"FMDBCheckpointModeFull","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeRestart":{"name":"FMDBCheckpointModeRestart","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeTruncate":{"name":"FMDBCheckpointModeTruncate","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html":{"name":"FMDBCheckpointMode","abstract":"<p>Enumeration used in checkpoint methods.</p>"},"Enums/SqliteValueType.html":{"name":"SqliteValueType","abstract":"<p>Undocumented</p>"},"Constants.html#/c:@FMDBVersionNumber":{"name":"FMDBVersionNumber","abstract":"<p>Undocumented</p>"},"Constants.html#/c:@FMDBVersionString":{"name":"FMDBVersionString","abstract":"<p>Undocumented</p>"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)parentDB":{"name":"parentDB","abstract":"<p>Undocumented</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)query":{"name":"query","abstract":"<p>Executed query</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)columnNameToIndexMap":{"name":"columnNameToIndexMap","abstract":"<p><code>NSMutableDictionary</code> mapping column names to numeric index</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)statement":{"name":"statement","abstract":"<p><code><a href=\"36f8f5912051ae747ef441d6511ca4cbClasses/FMStatement.html\">FMStatement</a></code> used by result set.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)close":{"name":"-close","abstract":"<p>Close result set</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)next":{"name":"-next","abstract":"<p>Retrieve next row for result set.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)nextWithError:":{"name":"-nextWithError:","abstract":"<p>Retrieve next row for result set.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)step":{"name":"-step","abstract":"<p>Perform SQL statement.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)stepWithError:":{"name":"-stepWithError:","abstract":"<p>Perform SQL statement.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)hasAnotherRow":{"name":"-hasAnotherRow","abstract":"<p>Did the last call to <code>&lt;next&gt;</code> succeed in retrieving another row?</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)columnCount":{"name":"columnCount","abstract":"<p>How many columns in result set</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnIndexForName:":{"name":"-columnIndexForName:","abstract":"<p>Column index for column name</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnNameForIndex:":{"name":"-columnNameForIndex:","abstract":"<p>Column name for column index</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)intForColumn:":{"name":"-intForColumn:","abstract":"<p>Result set integer value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)intForColumnIndex:":{"name":"-intForColumnIndex:","abstract":"<p>Result set integer value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longForColumn:":{"name":"-longForColumn:","abstract":"<p>Result set <code>long</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longForColumnIndex:":{"name":"-longForColumnIndex:","abstract":"<p>Result set long value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longLongIntForColumn:":{"name":"-longLongIntForColumn:","abstract":"<p>Result set <code>long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longLongIntForColumnIndex:":{"name":"-longLongIntForColumnIndex:","abstract":"<p>Result set <code>long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumn:":{"name":"-unsignedLongLongIntForColumn:","abstract":"<p>Result set <code>unsigned long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumnIndex:":{"name":"-unsignedLongLongIntForColumnIndex:","abstract":"<p>Result set <code>unsigned long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)boolForColumn:":{"name":"-boolForColumn:","abstract":"<p>Result set <code>BOOL</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)boolForColumnIndex:":{"name":"-boolForColumnIndex:","abstract":"<p>Result set <code>BOOL</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)doubleForColumn:":{"name":"-doubleForColumn:","abstract":"<p>Result set <code>double</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)doubleForColumnIndex:":{"name":"-doubleForColumnIndex:","abstract":"<p>Result set <code>double</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)stringForColumn:":{"name":"-stringForColumn:","abstract":"<p>Result set <code>NSString</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)stringForColumnIndex:":{"name":"-stringForColumnIndex:","abstract":"<p>Result set <code>NSString</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dateForColumn:":{"name":"-dateForColumn:","abstract":"<p>Result set <code>NSDate</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dateForColumnIndex:":{"name":"-dateForColumnIndex:","abstract":"<p>Result set <code>NSDate</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataForColumn:":{"name":"-dataForColumn:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataForColumnIndex:":{"name":"-dataForColumnIndex:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)UTF8StringForColumn:":{"name":"-UTF8StringForColumn:","abstract":"<p>Result set <code>(const unsigned char *)</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)UTF8StringForColumnName:":{"name":"-UTF8StringForColumnName:","abstract":"<p>Undocumented</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)UTF8StringForColumnIndex:":{"name":"-UTF8StringForColumnIndex:","abstract":"<p>Result set <code>(const unsigned char *)</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForColumn:":{"name":"-objectForColumn:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForColumnName:":{"name":"-objectForColumnName:","abstract":"<p>Undocumented</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForColumnIndex:":{"name":"-objectForColumnIndex:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectAtIndexedSubscript:":{"name":"-objectAtIndexedSubscript:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataNoCopyForColumn:":{"name":"-dataNoCopyForColumn:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataNoCopyForColumnIndex:":{"name":"-dataNoCopyForColumnIndex:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnIndexIsNull:":{"name":"-columnIndexIsNull:","abstract":"<p>Is the column <code>NULL</code> ?</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnIsNull:":{"name":"-columnIsNull:","abstract":"<p>Is the column <code>NULL</code> ?</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)resultDictionary":{"name":"resultDictionary","abstract":"<p>Returns a dictionary of the row results mapped to case sensitive keys of the column names. </p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)resultDict":{"name":"-resultDict","abstract":"<p>Returns a dictionary of the row results</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)kvcMagic:":{"name":"-kvcMagic:","abstract":"<p>Performs <code>setValue</code> to yield support for key value observing.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)bindWithArray:":{"name":"-bindWithArray:","abstract":"<p>Bind array of values to prepared statement.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)bindWithDictionary:":{"name":"-bindWithDictionary:","abstract":"<p>Bind dictionary of values to prepared statement.</p>","parent_name":"FMResultSet"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path":{"name":"path","abstract":"<p>Path of database</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)openFlags":{"name":"openFlags","abstract":"<p>Open flags</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)vfsName":{"name":"vfsName","abstract":"<p>Custom virtual file system name</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:":{"name":"+databaseQueueWithPath:","abstract":"<p>Create queue using path.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:":{"name":"+databaseQueueWithURL:","abstract":"<p>Create queue using file URL.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:flags:":{"name":"+databaseQueueWithPath:flags:","abstract":"<p>Create queue using path and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:flags:":{"name":"+databaseQueueWithURL:flags:","abstract":"<p>Create queue using file URL and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithPath:":{"name":"-initWithPath:","abstract":"<p>Create queue using path.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithURL:":{"name":"-initWithURL:","abstract":"<p>Create queue using file URL.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:":{"name":"-initWithPath:flags:","abstract":"<p>Create queue using path and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:":{"name":"-initWithURL:flags:","abstract":"<p>Create queue using file URL and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:vfs:":{"name":"-initWithPath:flags:vfs:","abstract":"<p>Create queue using path and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:vfs:":{"name":"-initWithURL:flags:vfs:","abstract":"<p>Create queue using file URL and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseClass":{"name":"+databaseClass","abstract":"<p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)close":{"name":"-close","abstract":"<p>Close database used by queue.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)interrupt":{"name":"-interrupt","abstract":"<p>Interupt pending database operation.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inDatabase:":{"name":"-inDatabase:","abstract":"<p>Synchronously perform database operations on queue.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inTransaction:":{"name":"-inTransaction:","abstract":"<p>Synchronously perform database operations on queue, using transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inDeferredTransaction:":{"name":"-inDeferredTransaction:","abstract":"<p>Synchronously perform database operations on queue, using deferred transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inExclusiveTransaction:":{"name":"-inExclusiveTransaction:","abstract":"<p>Synchronously perform database operations on queue, using exclusive transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inImmediateTransaction:":{"name":"-inImmediateTransaction:","abstract":"<p>Synchronously perform database operations on queue, using immediate transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inSavePoint:":{"name":"-inSavePoint:","abstract":"<p>Synchronously perform database operations using save point.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)checkpoint:error:":{"name":"-checkpoint:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:error:":{"name":"-checkpoint:name:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:logFrameCount:checkpointCount:error:":{"name":"-checkpoint:name:logFrameCount:checkpointCount:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path":{"name":"path","abstract":"<p>Database path</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)delegate":{"name":"delegate","abstract":"<p>Delegate object</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)maximumNumberOfDatabasesToCreate":{"name":"maximumNumberOfDatabasesToCreate","abstract":"<p>Maximum number of databases to create</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)openFlags":{"name":"openFlags","abstract":"<p>Open flags</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)vfsName":{"name":"vfsName","abstract":"<p>Custom virtual file system name</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:":{"name":"+databasePoolWithPath:","abstract":"<p>Create pool using path.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:":{"name":"+databasePoolWithURL:","abstract":"<p>Create pool using file URL.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:flags:":{"name":"+databasePoolWithPath:flags:","abstract":"<p>Create pool using path and specified flags</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:flags:":{"name":"+databasePoolWithURL:flags:","abstract":"<p>Create pool using file URL and specified flags</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithPath:":{"name":"-initWithPath:","abstract":"<p>Create pool using path.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithURL:":{"name":"-initWithURL:","abstract":"<p>Create pool using file URL.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:":{"name":"-initWithPath:flags:","abstract":"<p>Create pool using path and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:":{"name":"-initWithURL:flags:","abstract":"<p>Create pool using file URL and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:vfs:":{"name":"-initWithPath:flags:vfs:","abstract":"<p>Create pool using path and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:vfs:":{"name":"-initWithURL:flags:vfs:","abstract":"<p>Create pool using file URL and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databaseClass":{"name":"+databaseClass","abstract":"<p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)countOfCheckedInDatabases":{"name":"countOfCheckedInDatabases","abstract":"<p>Number of checked-in databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)countOfCheckedOutDatabases":{"name":"countOfCheckedOutDatabases","abstract":"<p>Number of checked-out databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)countOfOpenDatabases":{"name":"countOfOpenDatabases","abstract":"<p>Total number of databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)releaseAllDatabases":{"name":"-releaseAllDatabases","abstract":"<p>Release all databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inDatabase:":{"name":"-inDatabase:","abstract":"<p>Synchronously perform database operations in pool.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inTransaction:":{"name":"-inTransaction:","abstract":"<p>Synchronously perform database operations in pool using transaction.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inExclusiveTransaction:":{"name":"-inExclusiveTransaction:","abstract":"<p>Synchronously perform database operations in pool using exclusive transaction.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inDeferredTransaction:":{"name":"-inDeferredTransaction:","abstract":"<p>Synchronously perform database operations in pool using deferred transaction.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inImmediateTransaction:":{"name":"-inImmediateTransaction:","abstract":"<p>Synchronously perform database operations on queue, using immediate transactions.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inSavePoint:":{"name":"-inSavePoint:","abstract":"<p>Synchronously perform database operations in pool using save point.</p>","parent_name":"FMDatabasePool"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_statement":{"name":"_statement","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_query":{"name":"_query","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_useCount":{"name":"_useCount","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_inUse":{"name":"_inUse","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)useCount":{"name":"useCount","abstract":"<p>Usage count</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)query":{"name":"query","abstract":"<p>SQL statement</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)statement":{"name":"statement","abstract":"<p>SQLite sqlite3_stmt</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)inUse":{"name":"inUse","abstract":"<p>Indication of whether the statement is in use</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(im)close":{"name":"-close","abstract":"<p>Close statement</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(im)reset":{"name":"-reset","abstract":"<p>Reset statement</p>","parent_name":"FMStatement"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)traceExecution":{"name":"traceExecution","abstract":"<p>Whether should trace execution</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)checkedOut":{"name":"checkedOut","abstract":"<p>Whether checked out or not</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)crashOnErrors":{"name":"crashOnErrors","abstract":"<p>Crash on errors</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)logsErrors":{"name":"logsErrors","abstract":"<p>Logs errors</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)cachedStatements":{"name":"cachedStatements","abstract":"<p>Dictionary of cached statements</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)databaseWithPath:":{"name":"+databaseWithPath:","abstract":"<p>Create a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)databaseWithURL:":{"name":"+databaseWithURL:","abstract":"<p>Create a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)initWithPath:":{"name":"-initWithPath:","abstract":"<p>Initialize a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)initWithURL:":{"name":"-initWithURL:","abstract":"<p>Initialize a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)isOpen":{"name":"isOpen","abstract":"<p>Is the database open or not?</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)open":{"name":"-open","abstract":"<p>Opening a new database connection</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)openWithFlags:":{"name":"-openWithFlags:","abstract":"<p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)openWithFlags:vfs:":{"name":"-openWithFlags:vfs:","abstract":"<p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)close":{"name":"-close","abstract":"<p>Closing a database connection</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)goodConnection":{"name":"goodConnection","abstract":"<p>Test to see if we have a good connection to the database.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withErrorAndBindings:":{"name":"-executeUpdate:withErrorAndBindings:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)update:withErrorAndBindings:":{"name":"-update:withErrorAndBindings:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:":{"name":"-executeUpdate:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdateWithFormat:":{"name":"-executeUpdateWithFormat:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withArgumentsInArray:":{"name":"-executeUpdate:withArgumentsInArray:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:values:error:":{"name":"-executeUpdate:values:error:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withParameterDictionary:":{"name":"-executeUpdate:withParameterDictionary:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withVAList:":{"name":"-executeUpdate:withVAList:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeStatements:":{"name":"-executeStatements:","abstract":"<p>Execute multiple SQL statements</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeStatements:withResultBlock:":{"name":"-executeStatements:withResultBlock:","abstract":"<p>Execute multiple SQL statements with callback handler</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)lastInsertRowId":{"name":"lastInsertRowId","abstract":"<p>Last insert rowid</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)changes":{"name":"changes","abstract":"<p>The number of rows changed by prior SQL statement.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:":{"name":"-executeQuery:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQueryWithFormat:":{"name":"-executeQueryWithFormat:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:withArgumentsInArray:":{"name":"-executeQuery:withArgumentsInArray:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:values:error:":{"name":"-executeQuery:values:error:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:withParameterDictionary:":{"name":"-executeQuery:withParameterDictionary:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:withVAList:":{"name":"-executeQuery:withVAList:","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)prepare:":{"name":"-prepare:","abstract":"<p>Prepare SQL statement.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginTransaction":{"name":"-beginTransaction","abstract":"<p>Begin a transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginDeferredTransaction":{"name":"-beginDeferredTransaction","abstract":"<p>Begin a deferred transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginImmediateTransaction":{"name":"-beginImmediateTransaction","abstract":"<p>Begin an immediate transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginExclusiveTransaction":{"name":"-beginExclusiveTransaction","abstract":"<p>Begin an exclusive transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)commit":{"name":"-commit","abstract":"<p>Commit a transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rollback":{"name":"-rollback","abstract":"<p>Rollback a transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)isInTransaction":{"name":"isInTransaction","abstract":"<p>Identify whether currently in a transaction or not</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)inTransaction":{"name":"-inTransaction","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)clearCachedStatements":{"name":"-clearCachedStatements","abstract":"<p>Clear cached statements</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)closeOpenResultSets":{"name":"-closeOpenResultSets","abstract":"<p>Close all open result sets</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)hasOpenResultSets":{"name":"hasOpenResultSets","abstract":"<p>Whether database has any open result sets</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)shouldCacheStatements":{"name":"shouldCacheStatements","abstract":"<p>Whether should cache statements or not</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)interrupt":{"name":"-interrupt","abstract":"<p>Interupt pending database operation</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)setKey:":{"name":"-setKey:","abstract":"<p>Set encryption key.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rekey:":{"name":"-rekey:","abstract":"<p>Reset encryption key</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)setKeyWithData:":{"name":"-setKeyWithData:","abstract":"<p>Set encryption key using <code>keyData</code>.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rekeyWithData:":{"name":"-rekeyWithData:","abstract":"<p>Reset encryption key using <code>keyData</code>.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)databasePath":{"name":"databasePath","abstract":"<p>The path of the database file.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)databaseURL":{"name":"databaseURL","abstract":"<p>The file URL of the database file.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)sqliteHandle":{"name":"sqliteHandle","abstract":"<p>The underlying SQLite handle .</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastErrorMessage":{"name":"-lastErrorMessage","abstract":"<p>Last error message</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastErrorCode":{"name":"-lastErrorCode","abstract":"<p>Last error code</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastExtendedErrorCode":{"name":"-lastExtendedErrorCode","abstract":"<p>Last extended error code</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)hadError":{"name":"-hadError","abstract":"<p>Had error</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastError":{"name":"-lastError","abstract":"<p>Last error</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)maxBusyRetryTimeInterval":{"name":"maxBusyRetryTimeInterval","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)startSavePointWithName:error:":{"name":"-startSavePointWithName:error:","abstract":"<p>Start save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)releaseSavePointWithName:error:":{"name":"-releaseSavePointWithName:error:","abstract":"<p>Release save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rollbackToSavePointWithName:error:":{"name":"-rollbackToSavePointWithName:error:","abstract":"<p>Roll back to save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)inSavePoint:":{"name":"-inSavePoint:","abstract":"<p>Start save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)checkpoint:error:":{"name":"-checkpoint:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)checkpoint:name:error:":{"name":"-checkpoint:name:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)checkpoint:name:logFrameCount:checkpointCount:error:":{"name":"-checkpoint:name:logFrameCount:checkpointCount:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)isSQLiteThreadSafe":{"name":"+isSQLiteThreadSafe","abstract":"<p>Test to see if the library is threadsafe</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)limitFor:value:":{"name":"-limitFor:value:","abstract":"<p>Examine/set limits</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)sqliteLibVersion":{"name":"+sqliteLibVersion","abstract":"<p>Run-time library version numbers</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)FMDBUserVersion":{"name":"+FMDBUserVersion","abstract":"<p>The FMDB version number as a string in the form of <code>&quot;2.7.7&quot;</code> .</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)FMDBVersion":{"name":"+FMDBVersion","abstract":"<p>The FMDB version</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)makeFunctionNamed:arguments:block:":{"name":"-makeFunctionNamed:arguments:block:","abstract":"<p>Adds SQL functions or aggregates or to redefine the behavior of existing SQL functions or aggregates.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)makeFunctionNamed:maximumArguments:withBlock:":{"name":"-makeFunctionNamed:maximumArguments:withBlock:","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueType:":{"name":"-valueType:","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueInt:":{"name":"-valueInt:","abstract":"<p>Get integer value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueLong:":{"name":"-valueLong:","abstract":"<p>Get long value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueDouble:":{"name":"-valueDouble:","abstract":"<p>Get double value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueData:":{"name":"-valueData:","abstract":"<p>Get <code>NSData</code> value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueString:":{"name":"-valueString:","abstract":"<p>Get string value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultNullInContext:":{"name":"-resultNullInContext:","abstract":"<p>Return null value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultInt:context:":{"name":"-resultInt:context:","abstract":"<p>Return integer value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultLong:context:":{"name":"-resultLong:context:","abstract":"<p>Return long value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultDouble:context:":{"name":"-resultDouble:context:","abstract":"<p>Return double value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultData:context:":{"name":"-resultData:context:","abstract":"<p>Return <code>NSData</code> object from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultString:context:":{"name":"-resultString:context:","abstract":"<p>Return string value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultError:context:":{"name":"-resultError:context:","abstract":"<p>Return error string from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultErrorCode:context:":{"name":"-resultErrorCode:context:","abstract":"<p>Return error code from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultErrorNoMemoryInContext:":{"name":"-resultErrorNoMemoryInContext:","abstract":"<p>Report memory error in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultErrorTooBigInContext:":{"name":"-resultErrorTooBigInContext:","abstract":"<p>Report that string or BLOB is too long to represent in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)storeableDateFormat:":{"name":"+storeableDateFormat:","abstract":"<p>Generate an <code>NSDateFormatter</code> that won&rsquo;t be broken by permutations of timezones or locales.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)hasDateFormatter":{"name":"-hasDateFormatter","abstract":"<p>Test whether the database has a date formatter assigned.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)setDateFormat:":{"name":"-setDateFormat:","abstract":"<p>Set to a date formatter to use string dates with sqlite instead of the default UNIX timestamps.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)dateFromString:":{"name":"-dateFromString:","abstract":"<p>Convert the supplied NSString to NSDate, using the current database formatter.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)stringFromDate:":{"name":"-stringFromDate:","abstract":"<p>Convert the supplied NSDate to NSString, using the current database formatter.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)intForQuery:":{"name":"-intForQuery:","abstract":"<p>Return <code>int</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)longForQuery:":{"name":"-longForQuery:","abstract":"<p>Return <code>long</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)boolForQuery:":{"name":"-boolForQuery:","abstract":"<p>Return <code>BOOL</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)doubleForQuery:":{"name":"-doubleForQuery:","abstract":"<p>Return <code>double</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)stringForQuery:":{"name":"-stringForQuery:","abstract":"<p>Return <code>NSString</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)dataForQuery:":{"name":"-dataForQuery:","abstract":"<p>Return <code>NSData</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)dateForQuery:":{"name":"-dateForQuery:","abstract":"<p>Return <code>NSDate</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)tableExists:":{"name":"-tableExists:","abstract":"<p>Does table exist in database?</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)getSchema":{"name":"-getSchema","abstract":"<p>The schema of the database.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)getTableSchema:":{"name":"-getTableSchema:","abstract":"<p>The schema of the database.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)columnExists:inTableWithName:":{"name":"-columnExists:inTableWithName:","abstract":"<p>Test to see if particular column exists for particular table in database</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)columnExists:columnName:":{"name":"-columnExists:columnName:","abstract":"<p>Test to see if particular column exists for particular table in database</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)validateSQL:error:":{"name":"-validateSQL:error:","abstract":"<p>Validate SQL statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)applicationID":{"name":"applicationID","abstract":"<p>Retrieve application ID</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)applicationIDString":{"name":"applicationIDString","abstract":"<p>Retrieve application ID string</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)userVersion":{"name":"userVersion","abstract":"<p>Retrieve user version</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html":{"name":"FMDatabase","abstract":"<p>A SQLite (<a href=\"https://sqlite.org/\">https://sqlite.org/</a>) Objective-C wrapper.</p>"},"Classes/FMStatement.html":{"name":"FMStatement","abstract":"<p>Objective-C wrapper for <code>sqlite3_stmt</code></p>"},"Classes/FMDatabasePool.html":{"name":"FMDatabasePool","abstract":"<p>Pool of <code><a href=\"36f8f5912051ae747ef441d6511ca4cbClasses/FMDatabase.html\">FMDatabase</a></code> objects.</p>"},"Classes/FMDatabaseQueue.html":{"name":"FMDatabaseQueue","abstract":"<p>To perform queries and updates on multiple threads, you&rsquo;ll want to use <code>FMDatabaseQueue</code> .</p>"},"Classes/FMResultSet.html":{"name":"FMResultSet","abstract":"<p>Represents the results of executing a query on an <code><a href=\"36f8f5912051ae747ef441d6511ca4cbClasses/FMDatabase.html\">FMDatabase</a></code> .</p>"},"Categories/NSObject%28FMDatabasePoolDelegate%29.html#/c:objc(cs)NSObject(im)databasePool:shouldAddDatabaseToPool:":{"name":"-databasePool:shouldAddDatabaseToPool:","abstract":"<p>Asks the delegate whether database should be added to the pool. </p>","parent_name":"NSObject(FMDatabasePoolDelegate)"},"Categories/NSObject%28FMDatabasePoolDelegate%29.html#/c:objc(cs)NSObject(im)databasePool:didAddDatabase:":{"name":"-databasePool:didAddDatabase:","abstract":"<p>Tells the delegate that database was added to the pool.</p>","parent_name":"NSObject(FMDatabasePoolDelegate)"},"Categories/NSObject%28FMDatabasePoolDelegate%29.html":{"name":"NSObject(FMDatabasePoolDelegate)","abstract":"<p>FMDatabasePool delegate category</p>"},"Categories.html":{"name":"Categories","abstract":"<p>The following categories are available globally.</p>"},"Classes.html":{"name":"Classes","abstract":"<p>The following classes are available globally.</p>"},"Constants.html":{"name":"Constants","abstract":"<p>The following constants are available globally.</p>"},"Enums.html":{"name":"Enumerations","abstract":"<p>The following enumerations are available globally.</p>"},"Type%20Definitions.html":{"name":"Type Definitions","abstract":"<p>The following type definitions are available globally.</p>"}} \ No newline at end of file
diff --git a/html/docsets/FMDB.docset/Contents/Resources/docSet.dsidx b/html/docsets/FMDB.docset/Contents/Resources/docSet.dsidx
new file mode 100644
index 0000000..93cf3c5
--- /dev/null
+++ b/html/docsets/FMDB.docset/Contents/Resources/docSet.dsidx
Binary files differ
diff --git a/html/docsets/FMDB.tgz b/html/docsets/FMDB.tgz
new file mode 100644
index 0000000..7301f54
--- /dev/null
+++ b/html/docsets/FMDB.tgz
Binary files differ
diff --git a/html/hierarchy.html b/html/hierarchy.html
deleted file mode 100644
index 2ba7884..0000000
--- a/html/hierarchy.html
+++ /dev/null
@@ -1,114 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMDB Hierarchy</title>
-
- <link rel="stylesheet" href="css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="index.html">Home</a></li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview-contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMDB Hierarchy</h1>
-
-
- <div class="index-column hierarchy-column">
- <h2 class="index-title">Class Hierarchy</h2>
-
-<ul>
-
- <li>NSObject
-<ul>
-
- <li><a href="Classes/FMDatabase.html">FMDatabase</a></li>
-
- <li><a href="Classes/FMDatabasePool.html">FMDatabasePool</a></li>
-
- <li><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></li>
-
- <li><a href="Classes/FMResultSet.html">FMResultSet</a></li>
-
- <li><a href="Classes/FMSimpleTokenizer.html">FMSimpleTokenizer</a></li>
-
- <li><a href="Classes/FMStatement.html">FMStatement</a></li>
-
- <li><a href="Classes/FMStopWordTokenizer.html">FMStopWordTokenizer</a></li>
-
- <li><a href="Classes/FMTextOffsets.html">FMTextOffsets</a></li>
-
-</ul>
-</li>
-
-</ul>
-
- </div>
-
-
-
- <div class="index-column">
-
-
-
- <h2 class="index-title">Category References</h2>
- <ul>
-
- <li><a href="Categories/FMDatabase+FMDatabaseAdditions.html">FMDatabase(FMDatabaseAdditions)</a></li>
-
- <li><a href="Categories/FMDatabase+FTS3.html">FMDatabase(FTS3)</a></li>
-
- <li><a href="Categories/FMResultSet+FTS3.html">FMResultSet(FTS3)</a></li>
-
- <li><a href="Categories/NSObject+FMDatabasePoolDelegate.html">NSObject(FMDatabasePoolDelegate)</a></li>
-
- </ul>
-
- </div>
-
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </main>
- </div>
- </div>
- </article>
-
- <script src="js/script.js"></script>
-</body>
-</html> \ No newline at end of file
diff --git a/html/img/button_bar_background.png b/html/img/button_bar_background.png
deleted file mode 100644
index 71d1019..0000000
--- a/html/img/button_bar_background.png
+++ /dev/null
Binary files differ
diff --git a/html/img/carat.png b/html/img/carat.png
new file mode 100755
index 0000000..29d2f7f
--- /dev/null
+++ b/html/img/carat.png
Binary files differ
diff --git a/html/img/dash.png b/html/img/dash.png
new file mode 100755
index 0000000..6f694c7
--- /dev/null
+++ b/html/img/dash.png
Binary files differ
diff --git a/html/img/disclosure.png b/html/img/disclosure.png
deleted file mode 100644
index 4c5cbf4..0000000
--- a/html/img/disclosure.png
+++ /dev/null
Binary files differ
diff --git a/html/img/disclosure_open.png b/html/img/disclosure_open.png
deleted file mode 100644
index 82396fe..0000000
--- a/html/img/disclosure_open.png
+++ /dev/null
Binary files differ
diff --git a/html/img/gh.png b/html/img/gh.png
new file mode 100755
index 0000000..628da97
--- /dev/null
+++ b/html/img/gh.png
Binary files differ
diff --git a/html/img/library_background.png b/html/img/library_background.png
deleted file mode 100644
index 3006248..0000000
--- a/html/img/library_background.png
+++ /dev/null
Binary files differ
diff --git a/html/img/title_background.png b/html/img/title_background.png
deleted file mode 100644
index 846e496..0000000
--- a/html/img/title_background.png
+++ /dev/null
Binary files differ
diff --git a/html/index.html b/html/index.html
index 15933e5..69e945c 100644
--- a/html/index.html
+++ b/html/index.html
@@ -1,114 +1,584 @@
<!DOCTYPE html>
-<html>
-<head>
- <meta charset="utf-8">
-
- <title>FMDB Reference</title>
-
- <link rel="stylesheet" href="css/style.css">
- <meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
- <meta name="generator" content="appledoc 2.2.1 (build 1334)">
-</head>
-<body class="appledoc">
- <header>
- <div class="container" class="hide-in-xcode">
-
- <h1 id="library-title">
- <a href="index.html">FMDB </a>
- </h1>
-
- <p id="developer-home">
- <a href="index.html">ccgus</a>
- </p>
-
- </div>
- </header>
-
- <aside>
- <div class="container">
- <nav>
- <ul id="header-buttons" role="toolbar">
- <li><a href="hierarchy.html">Hierarchy</a></li>
- </ul>
- </nav>
- </div>
- </aside>
-
- <article>
- <div id="overview-contents" class="container">
- <div id="content">
- <main role="main">
- <h1 class="title">FMDB Reference</h1>
-
-
-
- <div class="index-container">
-
-
-
- <div class="index-column">
- <h2 class="index-title">Class References</h2>
- <ul>
-
- <li><a href="Classes/FMDatabase.html">FMDatabase</a></li>
-
- <li><a href="Classes/FMDatabasePool.html">FMDatabasePool</a></li>
-
- <li><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></li>
-
- <li><a href="Classes/FMResultSet.html">FMResultSet</a></li>
-
- <li><a href="Classes/FMSimpleTokenizer.html">FMSimpleTokenizer</a></li>
-
- <li><a href="Classes/FMStatement.html">FMStatement</a></li>
-
- <li><a href="Classes/FMStopWordTokenizer.html">FMStopWordTokenizer</a></li>
-
- <li><a href="Classes/FMTextOffsets.html">FMTextOffsets</a></li>
-
- </ul>
- </div>
-
-
-
- <div class="index-column">
-
-
-
-
-
- <h2 class="index-title">Category References</h2>
- <ul>
-
- <li><a href="Categories/FMDatabase+FMDatabaseAdditions.html">FMDatabase(FMDatabaseAdditions)</a></li>
-
- <li><a href="Categories/FMDatabase+FTS3.html">FMDatabase(FTS3)</a></li>
-
- <li><a href="Categories/FMResultSet+FTS3.html">FMResultSet(FTS3)</a></li>
-
- <li><a href="Categories/NSObject+FMDatabasePoolDelegate.html">NSObject(FMDatabasePoolDelegate)</a></li>
-
- </ul>
-
- </div>
-
- </div>
-
- <footer>
- <div class="footer-copyright">
-
- <p class="copyright">Copyright &copy; 2017 ccgus. All rights reserved. Updated: 2017-06-07</p>
-
-
- <p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
-
- </div>
- </footer>
- </main>
- </div>
- </div>
- </article>
-
- <script src="js/script.js"></script>
-</body>
-</html> \ No newline at end of file
+<html lang="en">
+ <head>
+ <title>FMDB Reference</title>
+ <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
+ <link rel="stylesheet" type="text/css" href="css/highlight.css" />
+ <meta charset='utf-8'>
+ <script src="js/jquery.min.js" defer></script>
+ <script src="js/jazzy.js" defer></script>
+
+ </head>
+ <body>
+ <a title="FMDB Reference"></a>
+ <header>
+ <div class="content-wrapper">
+ <p><a href="index.html">FMDB 2.7.7 Docs</a> (89% documented)</p>
+ <p class="header-right"><a href="https://github.com/ccgus/fmdb"><img src="img/gh.png"/>View on GitHub</a></p>
+ </div>
+ </header>
+ <div class="content-wrapper">
+ <p id="breadcrumbs">
+ <a href="index.html">FMDB Reference</a>
+ <img id="carat" src="img/carat.png" />
+ FMDB Reference
+ </p>
+ </div>
+ <div class="content-wrapper">
+ <nav class="sidebar">
+ <ul class="nav-groups">
+ <li class="nav-group-name">
+ <a href="Categories.html">Categories</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Categories/NSObject%28FMDatabasePoolDelegate%29.html">NSObject(FMDatabasePoolDelegate)</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Classes.html">Classes</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabase.html">FMDatabase</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabasePool.html">FMDatabasePool</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMResultSet.html">FMResultSet</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Classes/FMStatement.html">FMStatement</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Constants.html">Constants</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionNumber">FMDBVersionNumber</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Constants.html#/c:@FMDBVersionString">FMDBVersionString</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Enums.html">Enumerations</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Enums/FMDBCheckpointMode.html">FMDBCheckpointMode</a>
+ </li>
+ <li class="nav-group-task">
+ <a href="Enums/SqliteValueType.html">SqliteValueType</a>
+ </li>
+ </ul>
+ </li>
+ <li class="nav-group-name">
+ <a href="Type%20Definitions.html">Type Definitions</a>
+ <ul class="nav-group-tasks">
+ <li class="nav-group-task">
+ <a href="Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock">FMDBExecuteStatementsCallbackBlock</a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </nav>
+ <article class="main-content">
+ <section>
+ <section class="section">
+
+ <h1 id='fmdb-v2-7' class='heading'>FMDB v2.7</h1>
+
+<!--[![Platform](https://img.shields.io/cocoapods/p/FMDB.svg?style=flat)](http://cocoadocs.org/docsets/Alamofire)-->
+
+<p><a href="https://img.shields.io/cocoapods/v/FMDB.svg"><img src="https://img.shields.io/cocoapods/v/FMDB.svg" alt="CocoaPods Compatible"></a>
+<a href="https://github.com/Carthage/Carthage"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat" alt="Carthage Compatible"></a></p>
+
+<p>This is an Objective-C wrapper around <a href="https://sqlite.org/">SQLite</a>.</p>
+<h2 id='the-fmdb-mailing-list' class='heading'>The FMDB Mailing List:</h2>
+
+<p><a href="https://groups.google.com/group/fmdb">https://groups.google.com/group/fmdb</a></p>
+<h2 id='read-the-sqlite-faq' class='heading'>Read the SQLite FAQ:</h2>
+
+<p><a href="https://www.sqlite.org/faq.html">https://www.sqlite.org/faq.html</a></p>
+
+<p>Since FMDB is built on top of SQLite, you&rsquo;re going to want to read this page top to bottom at least once. And while you&rsquo;re there, make sure to bookmark the SQLite Documentation page: <a href="https://www.sqlite.org/docs.html">https://www.sqlite.org/docs.html</a></p>
+<h2 id='contributing' class='heading'>Contributing</h2>
+
+<p>Do you have an awesome idea that deserves to be in FMDB? You might consider pinging ccgus first to make sure he hasn&rsquo;t already ruled it out for some reason. Otherwise pull requests are great, and make sure you stick to the local coding conventions. However, please be patient and if you haven&rsquo;t heard anything from ccgus for a week or more, you might want to send a note asking what&rsquo;s up.</p>
+<h2 id='installing' class='heading'>Installing</h2>
+<h3 id='cocoapods' class='heading'>CocoaPods</h3>
+
+<p>FMDB can be installed using <a href="https://cocoapods.org/">CocoaPods</a>.</p>
+
+<p>If you haven&rsquo;t done so already, you might want to initialize the project, to have it produce a <code>Podfile</code> template for you:</p>
+<pre class="highlight plaintext"><code>$ pod init
+</code></pre>
+
+<p>Then, edit the <code>Podfile</code>, adding <code>FMDB</code>:</p>
+<pre class="highlight ruby"><code><span class="c1"># Uncomment the next line to define a global platform for your project</span>
+<span class="c1"># platform :ios, '9.0'</span>
+
+<span class="n">target</span> <span class="s1">'MyApp'</span> <span class="k">do</span>
+ <span class="c1"># Comment the next line if you're not using Swift and don't want to use dynamic frameworks</span>
+ <span class="n">use_frameworks!</span>
+
+ <span class="c1"># Pods for MyApp2</span>
+
+ <span class="n">pod</span> <span class="s1">'FMDB'</span>
+ <span class="c1"># pod 'FMDB/FTS' # FMDB with FTS</span>
+ <span class="c1"># pod 'FMDB/standalone' # FMDB with latest SQLite amalgamation source</span>
+ <span class="c1"># pod 'FMDB/standalone/FTS' # FMDB with latest SQLite amalgamation source and FTS</span>
+ <span class="c1"># pod 'FMDB/SQLCipher' # FMDB with SQLCipher</span>
+<span class="k">end</span>
+</code></pre>
+
+<p>Then install the pods:</p>
+<pre class="highlight plaintext"><code>$ pod install
+</code></pre>
+
+<p>Then open the <code>.xcworkspace</code> rather than the <code>.xcodeproj</code>.</p>
+
+<p>For more information on Cocoapods visit <a href="https://cocoapods.org">https://cocoapods.org</a>.</p>
+
+<p><strong>If using FMDB with <a href="https://www.zetetic.net/sqlcipher/">SQLCipher</a> you must use the FMDB/SQLCipher subspec. The FMDB/SQLCipher subspec declares SQLCipher as a dependency, allowing FMDB to be compiled with the <code>-DSQLITE_HAS_CODEC</code> flag.</strong></p>
+<h3 id='carthage' class='heading'>Carthage</h3>
+
+<p>Once you make sure you have <a href="https://github.com/Carthage/Carthage/releases">the latest version of Carthage</a>, you can open up a command line terminal, navigate to your project&rsquo;s main directory, and then do the following commands:</p>
+<pre class="highlight plaintext"><code>$ echo ' github "ccgus/fmdb" ' &gt; ./Cartfile
+$ carthage update
+</code></pre>
+
+<p>You can then configure your project as outlined in Carthage&rsquo;s <a href="https://github.com/Carthage/Carthage#getting-started">Getting Started</a> (i.e. for iOS, adding the framework to the &ldquo;Link Binary with Libraries&rdquo; in your target and adding the <code>copy-frameworks</code> script; in macOS, adding the framework to the list of &ldquo;Embedded Binaries&rdquo;).</p>
+<h2 id='fmdb-class-reference' class='heading'>FMDB Class Reference:</h2>
+
+<p><a href="https://ccgus.github.io/fmdb/html/index.html">https://ccgus.github.io/fmdb/html/index.html</a></p>
+<h2 id='automatic-reference-counting-arc-or-manual-memory-management' class='heading'>Automatic Reference Counting (ARC) or Manual Memory Management?</h2>
+
+<p>You can use either style in your Cocoa project. FMDB will figure out which you are using at compile time and do the right thing.</p>
+<h2 id='what-39-s-new-in-fmdb-2-7' class='heading'>What&rsquo;s New in FMDB 2.7</h2>
+
+<p>FMDB 2.7 attempts to support a more natural interface. This represents a fairly significant change for Swift developers (audited for nullability; shifted to properties in external interfaces where possible rather than methods; etc.). For Objective-C developers, this should be a fairly seamless transition (unless you were using the ivars that were previously exposed in the public interface, which you shouldn&rsquo;t have been doing, anyway!). </p>
+<h3 id='nullability-and-swift-optionals' class='heading'>Nullability and Swift Optionals</h3>
+
+<p>FMDB 2.7 is largely the same as prior versions, but has been audited for nullability. For Objective-C users, this simply means that if you perform a static analysis of your FMDB-based project, you may receive more meaningful warnings as you review your project, but there are likely to be few, if any, changes necessary in your code.</p>
+
+<p>For Swift users, this nullability audit results in changes that are not entirely backward compatible with FMDB 2.6, but is a little more Swifty. Before FMDB was audited for nullability, Swift was forced to defensively assume that variables were optional, but the library now more accurately knows which properties and method parameters are optional, and which are not.</p>
+
+<p>This means, though, that Swift code written for FMDB 2.7 may require changes. For example, consider the following Swift 3/Swift 4 code for FMDB 2.6:</p>
+<pre class="highlight swift"><code><span class="n">queue</span><span class="o">.</span><span class="n">inTransaction</span> <span class="p">{</span> <span class="n">db</span><span class="p">,</span> <span class="n">rollback</span> <span class="k">in</span>
+ <span class="k">do</span> <span class="p">{</span>
+ <span class="k">guard</span> <span class="k">let</span> <span class="nv">db</span> <span class="o">==</span> <span class="n">db</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="c1">// handle error here</span>
+ <span class="k">return</span>
+ <span class="p">}</span>
+
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">2</span><span class="p">])</span>
+ <span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="p">?</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>Because FMDB 2.6 was not audited for nullability, Swift inferred that <code>db</code> and <code>rollback</code> were optionals. But, now, in FMDB 2.7, Swift now knows that, for example, neither <code>db</code> nor <code>rollback</code> above can be <code>nil</code>, so they are no longer optionals. Thus it becomes:</p>
+<pre class="highlight swift"><code><span class="n">queue</span><span class="o">.</span><span class="n">inTransaction</span> <span class="p">{</span> <span class="n">db</span><span class="p">,</span> <span class="n">rollback</span> <span class="k">in</span>
+ <span class="k">do</span> <span class="p">{</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO foo (bar) VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">2</span><span class="p">])</span>
+ <span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+<h3 id='custom-functions' class='heading'>Custom Functions</h3>
+
+<p>In the past, when writing custom functions, you would have to generally include your own <code>@autoreleasepool</code> block to avoid problems when writing functions that scanned through a large table. Now, FMDB will automatically wrap it in an autorelease pool, so you don&rsquo;t have to.</p>
+
+<p>Also, in the past, when retrieving the values passed to the function, you had to drop down to the SQLite C API and include your own <code>sqlite3_value_XXX</code> calls. There are now <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> methods, <code>valueInt</code>, <code>valueString</code>, etc., so you can stay within Swift and/or Objective-C, without needing to call the C functions yourself. Likewise, when specifying the return values, you no longer need to call <code>sqlite3_result_XXX</code> C API, but rather you can use <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> methods, <code>resultInt</code>, <code>resultString</code>, etc. There is a new <code>enum</code> for <code>valueType</code> called <code><a href="Enums/SqliteValueType.html">SqliteValueType</a></code>, which can be used for checking the type of parameter passed to the custom function.</p>
+
+<p>Thus, you can do something like (as of Swift 3):</p>
+<pre class="highlight swift"><code><span class="n">db</span><span class="o">.</span><span class="nf">makeFunctionNamed</span><span class="p">(</span><span class="s">"RemoveDiacritics"</span><span class="p">,</span> <span class="nv">arguments</span><span class="p">:</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span> <span class="n">context</span><span class="p">,</span> <span class="n">argc</span><span class="p">,</span> <span class="n">argv</span> <span class="k">in</span>
+ <span class="k">guard</span> <span class="n">db</span><span class="o">.</span><span class="nf">valueType</span><span class="p">(</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="o">==</span> <span class="o">.</span><span class="n">text</span> <span class="o">||</span> <span class="n">db</span><span class="o">.</span><span class="nf">valueType</span><span class="p">(</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="o">==</span> <span class="o">.</span><span class="n">null</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="n">db</span><span class="o">.</span><span class="nf">resultError</span><span class="p">(</span><span class="s">"Expected string parameter"</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="n">context</span><span class="p">)</span>
+ <span class="k">return</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="k">let</span> <span class="nv">string</span> <span class="o">=</span> <span class="n">db</span><span class="o">.</span><span class="nf">valueString</span><span class="p">(</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">])?</span><span class="o">.</span><span class="nf">folding</span><span class="p">(</span><span class="nv">options</span><span class="p">:</span> <span class="o">.</span><span class="n">diacriticInsensitive</span><span class="p">,</span> <span class="nv">locale</span><span class="p">:</span> <span class="kc">nil</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">db</span><span class="o">.</span><span class="nf">resultString</span><span class="p">(</span><span class="n">string</span><span class="p">,</span> <span class="nv">context</span><span class="p">:</span> <span class="n">context</span><span class="p">)</span>
+ <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="n">db</span><span class="o">.</span><span class="nf">resultNull</span><span class="p">(</span><span class="nv">context</span><span class="p">:</span> <span class="n">context</span><span class="p">)</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>And you can then use that function in your SQL (in this case, matching both &ldquo;Jose&rdquo; and &ldquo;José&rdquo;):</p>
+<pre class="highlight sql"><code><span class="k">SELECT</span> <span class="o">*</span> <span class="k">FROM</span> <span class="n">employees</span> <span class="k">WHERE</span> <span class="n">RemoveDiacritics</span><span class="p">(</span><span class="n">first_name</span><span class="p">)</span> <span class="k">LIKE</span> <span class="s1">'jose'</span>
+</code></pre>
+
+<p>Note, the method <code>makeFunctionNamed:maximumArguments:withBlock:</code> has been renamed to <code>makeFunctionNamed:arguments:block:</code>, to more accurately reflect the functional intent of the second parameter.</p>
+<h3 id='api-changes' class='heading'>API Changes</h3>
+
+<p>In addition to the <code>makeFunctionNamed</code> noted above, there are a few other API changes. Specifically, </p>
+
+<ul>
+<li><p>To become consistent with the rest of the API, the methods <code>objectForColumnName</code> and <code>UTF8StringForColumnName</code> have been renamed to <code>objectForColumn</code> and <code>UTF8StringForColumn</code>.</p></li>
+<li><p>Note, the <code>objectForColumn</code> (and the associted subscript operator) now returns <code>nil</code> if an invalid column name/index is passed to it. It used to return <code>NSNull</code>.</p></li>
+<li><p>To avoid confusion with <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> method <code>inTransaction</code>, which performs transactions, the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> method to determine whether you are in a transaction or not, <code>inTransaction</code>, has been replaced with a read-only property, <code>isInTransaction</code>. </p></li>
+<li><p>Several functions have been converted to properties, namely, <code>databasePath</code>, <code>maxBusyRetryTimeInterval</code>, <code>shouldCacheStatements</code>, <code>sqliteHandle</code>, <code>hasOpenResultSets</code>, <code>lastInsertRowId</code>, <code>changes</code>, <code>goodConnection</code>, <code>columnCount</code>, <code>resultDictionary</code>, <code>applicationID</code>, <code>applicationIDString</code>, <code>userVersion</code>, <code>countOfCheckedInDatabases</code>, <code>countOfCheckedOutDatabases</code>, and <code>countOfOpenDatabases</code>. For Objective-C users, this has little material impact, but for Swift users, it results in a slightly more natural interface. Note: For Objective-C developers, previously versions of FMDB exposed many ivars (but we hope you weren&rsquo;t using them directly, anyway!), but the implmentation details for these are no longer exposed.</p></li>
+</ul>
+<h3 id='url-methods' class='heading'>URL Methods</h3>
+
+<p>In keeping with Apple&rsquo;s shift from paths to URLs, there are now <code>NSURL</code> renditions of the various <code>init</code> methods, previously only accepting paths. </p>
+<h2 id='usage' class='heading'>Usage</h2>
+
+<p>There are three main classes in FMDB:</p>
+
+<ol>
+<li><code><a href="Classes/FMDatabase.html">FMDatabase</a></code> - Represents a single SQLite database. Used for executing SQL statements.</li>
+<li><code><a href="Classes/FMResultSet.html">FMResultSet</a></code> - Represents the results of executing a query on an <code><a href="Classes/FMDatabase.html">FMDatabase</a></code>.</li>
+<li><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> - If you&rsquo;re wanting to perform queries and updates on multiple threads, you&rsquo;ll want to use this class. It&rsquo;s described in the &ldquo;Thread Safety&rdquo; section below.</li>
+</ol>
+<h3 id='database-creation' class='heading'>Database Creation</h3>
+
+<p>An <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> is created with a path to a SQLite database file. This path can be one of these three:</p>
+
+<ol>
+<li>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</li>
+<li>An empty string (<code>@&quot;&quot;</code>). An empty database is created at a temporary location. This database is deleted when the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> connection is closed.</li>
+<li><code>NULL</code>. An in-memory database is created. This database will be destroyed when the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> connection is closed.</li>
+</ol>
+
+<p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="https://www.sqlite.org/inmemorydb.html">https://www.sqlite.org/inmemorydb.html</a>)</p>
+<pre class="highlight objective_c"><code><span class="n">NSString</span> <span class="o">*</span><span class="n">path</span> <span class="o">=</span> <span class="p">[</span><span class="n">NSTemporaryDirectory</span><span class="p">()</span> <span class="nf">stringByAppendingPathComponent</span><span class="p">:</span><span class="s">@"tmp.db"</span><span class="p">];</span>
+<span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabase</span> <span class="nf">databaseWithPath</span><span class="p">:</span><span class="n">path</span><span class="p">];</span>
+</code></pre>
+<h3 id='opening' class='heading'>Opening</h3>
+
+<p>Before you can interact with the database, it must be opened. Opening fails if there are insufficient resources or permissions to open and/or create the database.</p>
+<pre class="highlight objective_c"><code><span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="p">[</span><span class="n">db</span> <span class="nf">open</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">// [db release]; // uncomment this line in manual referencing code; in ARC, this is not necessary/permitted
+</span> <span class="n">db</span> <span class="o">=</span> <span class="nb">nil</span><span class="p">;</span>
+ <span class="k">return</span><span class="p">;</span>
+<span class="p">}</span>
+</code></pre>
+<h3 id='executing-updates' class='heading'>Executing Updates</h3>
+
+<p>Any sort of SQL statement which is not a <code>SELECT</code> statement qualifies as an update. This includes <code>CREATE</code>, <code>UPDATE</code>, <code>INSERT</code>, <code>ALTER</code>, <code>COMMIT</code>, <code>BEGIN</code>, <code>DETACH</code>, <code>DELETE</code>, <code>DROP</code>, <code>END</code>, <code>EXPLAIN</code>, <code>VACUUM</code>, and <code>REPLACE</code> statements (plus many more). Basically, if your SQL statement does not begin with <code>SELECT</code>, it is an update statement.</p>
+
+<p>Executing updates returns a single value, a <code>BOOL</code>. A return value of <code>YES</code> means the update was successfully executed, and a return value of <code>NO</code> means that some error was encountered. You may invoke the <code>-lastErrorMessage</code> and <code>-lastErrorCode</code> methods to retrieve more information.</p>
+<h3 id='executing-queries' class='heading'>Executing Queries</h3>
+
+<p>A <code>SELECT</code> statement is a query and is executed via one of the <code>-executeQuery...</code> methods.</p>
+
+<p>Executing queries returns an <code><a href="Classes/FMResultSet.html">FMResultSet</a></code> object if successful, and <code>nil</code> upon failure. You should use the <code>-lastErrorMessage</code> and <code>-lastErrorCode</code> methods to determine why a query failed.</p>
+
+<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to &ldquo;step&rdquo; from one record to the other. With FMDB, the easiest way to do that is like this:</p>
+<pre class="highlight objective_c"><code><span class="n">FMResultSet</span> <span class="o">*</span><span class="n">s</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT * FROM myTable"</span><span class="p">];</span>
+<span class="k">while</span> <span class="p">([</span><span class="n">s</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="c1">//retrieve values for each record
+</span><span class="p">}</span>
+</code></pre>
+
+<p>You must always invoke <code><a href="Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)next">-[FMResultSet next]</a></code> before attempting to access the values returned in a query, even if you&rsquo;re only expecting one:</p>
+<pre class="highlight objective_c"><code><span class="n">FMResultSet</span> <span class="o">*</span><span class="n">s</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"SELECT COUNT(*) FROM myTable"</span><span class="p">];</span>
+<span class="k">if</span> <span class="p">([</span><span class="n">s</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">totalCount</span> <span class="o">=</span> <span class="p">[</span><span class="n">s</span> <span class="nf">intForColumnIndex</span><span class="p">:</span><span class="mi">0</span><span class="p">];</span>
+<span class="p">}</span>
+</code></pre>
+
+<p><code><a href="Classes/FMResultSet.html">FMResultSet</a></code> has many methods to retrieve data in an appropriate format:</p>
+
+<ul>
+<li><code>intForColumn:</code></li>
+<li><code>longForColumn:</code></li>
+<li><code>longLongIntForColumn:</code></li>
+<li><code>boolForColumn:</code></li>
+<li><code>doubleForColumn:</code></li>
+<li><code>stringForColumn:</code></li>
+<li><code>dateForColumn:</code></li>
+<li><code>dataForColumn:</code></li>
+<li><code>dataNoCopyForColumn:</code></li>
+<li><code>UTF8StringForColumn:</code></li>
+<li><code>objectForColumn:</code></li>
+</ul>
+
+<p>Each of these methods also has a <code>{type}ForColumnIndex:</code> variant that is used to retrieve the data based on the position of the column in the results, as opposed to the column&rsquo;s name.</p>
+
+<p>Typically, there&rsquo;s no need to <code>-close</code> an <code><a href="Classes/FMResultSet.html">FMResultSet</a></code> yourself, since that happens when either the result set is exhausted. However, if you only pull out a single request or any other number of requests which don&rsquo;t exhaust the result set, you will need to call the <code>-close</code> method on the <code><a href="Classes/FMResultSet.html">FMResultSet</a></code>.</p>
+<h3 id='closing' class='heading'>Closing</h3>
+
+<p>When you have finished executing queries and updates on the database, you should <code>-close</code> the <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> connection so that SQLite will relinquish any resources it has acquired during the course of its operation.</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">db</span> <span class="nf">close</span><span class="p">];</span>
+</code></pre>
+<h3 id='transactions' class='heading'>Transactions</h3>
+
+<p><code><a href="Classes/FMDatabase.html">FMDatabase</a></code> can begin and commit a transaction by invoking one of the appropriate methods or executing a begin/end transaction statement.</p>
+<h3 id='multiple-statements-and-batch-stuff' class='heading'>Multiple Statements and Batch Stuff</h3>
+
+<p>You can use <code><a href="Classes/FMDatabase.html">FMDatabase</a></code>&lsquo;s executeStatements:withResultBlock: to do multiple statements in a string:</p>
+<pre class="highlight objective_c"><code><span class="n">NSString</span> <span class="o">*</span><span class="n">sql</span> <span class="o">=</span> <span class="s">@"create table bulktest1 (id integer primary key autoincrement, x text);"</span>
+ <span class="s">"create table bulktest2 (id integer primary key autoincrement, y text);"</span>
+ <span class="s">"create table bulktest3 (id integer primary key autoincrement, z text);"</span>
+ <span class="s">"insert into bulktest1 (x) values ('XXX');"</span>
+ <span class="s">"insert into bulktest2 (y) values ('YYY');"</span>
+ <span class="s">"insert into bulktest3 (z) values ('ZZZ');"</span><span class="p">;</span>
+
+<span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeStatements</span><span class="p">:</span><span class="n">sql</span><span class="p">];</span>
+
+<span class="n">sql</span> <span class="o">=</span> <span class="s">@"select count(*) as count from bulktest1;"</span>
+ <span class="s">"select count(*) as count from bulktest2;"</span>
+ <span class="s">"select count(*) as count from bulktest3;"</span><span class="p">;</span>
+
+<span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">self</span><span class="p">.</span><span class="n">db</span> <span class="nf">executeStatements</span><span class="p">:</span><span class="n">sql</span> <span class="nf">withResultBlock</span><span class="p">:</span><span class="o">^</span><span class="kt">int</span><span class="p">(</span><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">dictionary</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">NSInteger</span> <span class="n">count</span> <span class="o">=</span> <span class="p">[</span><span class="n">dictionary</span><span class="p">[</span><span class="s">@"count"</span><span class="p">]</span> <span class="nf">integerValue</span><span class="p">];</span>
+ <span class="n">XCTAssertEqual</span><span class="p">(</span><span class="n">count</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="s">@"expected one record for dictionary %@"</span><span class="p">,</span> <span class="n">dictionary</span><span class="p">);</span>
+ <span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}];</span>
+</code></pre>
+<h3 id='data-sanitization' class='heading'>Data Sanitization</h3>
+
+<p>When providing a SQL statement to FMDB, you should not attempt to &ldquo;sanitize&rdquo; any values before insertion. Instead, you should use the standard SQLite binding syntax:</p>
+<pre class="highlight sql"><code><span class="k">INSERT</span> <span class="k">INTO</span> <span class="n">myTable</span> <span class="k">VALUES</span> <span class="p">(</span><span class="o">?</span><span class="p">,</span> <span class="o">?</span><span class="p">,</span> <span class="o">?</span><span class="p">,</span> <span class="o">?</span><span class="p">)</span>
+</code></pre>
+
+<p>The <code>?</code> character is recognized by SQLite as a placeholder for a value to be inserted. The execution methods all accept a variable number of arguments (or a representation of those arguments, such as an <code>NSArray</code>, <code>NSDictionary</code>, or a <code>va_list</code>), which are properly escaped for you.</p>
+
+<p>And, to use that SQL with the <code>?</code> placeholders from Objective-C:</p>
+<pre class="highlight objective_c"><code><span class="n">NSInteger</span> <span class="n">identifier</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="n">NSString</span> <span class="o">*</span><span class="n">name</span> <span class="o">=</span> <span class="s">@"Liam O'Flaherty (</span><span class="se">\"</span><span class="s">the famous Irish author</span><span class="se">\"</span><span class="s">)"</span><span class="p">;</span>
+<span class="n">NSDate</span> <span class="o">*</span><span class="n">date</span> <span class="o">=</span> <span class="p">[</span><span class="n">NSDate</span> <span class="nf">date</span><span class="p">];</span>
+<span class="n">NSString</span> <span class="o">*</span><span class="n">comment</span> <span class="o">=</span> <span class="nb">nil</span><span class="p">;</span>
+
+<span class="n">BOOL</span> <span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO authors (identifier, name, date, comment) VALUES (?, ?, ?, ?)"</span><span class="p">,</span> <span class="err">@</span><span class="p">(</span><span class="n">identifier</span><span class="p">),</span> <span class="n">name</span><span class="p">,</span> <span class="n">date</span><span class="p">,</span> <span class="n">comment</span> <span class="p">?:</span> <span class="p">[</span><span class="n">NSNull</span> <span class="nf">null</span><span class="p">]];</span>
+<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">success</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">NSLog</span><span class="p">(</span><span class="s">@"error = %@"</span><span class="p">,</span> <span class="p">[</span><span class="n">db</span> <span class="nf">lastErrorMessage</span><span class="p">]);</span>
+<span class="p">}</span>
+</code></pre>
+
+<blockquote>
+<p><strong>Note:</strong> Fundamental data types, like the <code>NSInteger</code> variable <code>identifier</code>, should be as a <code>NSNumber</code> objects, achieved by using the <code>@</code> syntax, shown above. Or you can use the <code>[NSNumber numberWithInt:identifier]</code> syntax, too.</p>
+
+<p>Likewise, SQL <code>NULL</code> values should be inserted as <code>[NSNull null]</code>. For example, in the case of <code>comment</code> which might be <code>nil</code> (and is in this example), you can use the <code>comment ?: [NSNull null]</code> syntax, which will insert the string if <code>comment</code> is not <code>nil</code>, but will insert <code>[NSNull null]</code> if it is <code>nil</code>.</p>
+</blockquote>
+
+<p>In Swift, you would use <code>executeUpdate(values:)</code>, which not only is a concise Swift syntax, but also <code>throws</code> errors for proper error handling:</p>
+<pre class="highlight swift"><code><span class="k">do</span> <span class="p">{</span>
+ <span class="k">let</span> <span class="nv">identifier</span> <span class="o">=</span> <span class="mi">42</span>
+ <span class="k">let</span> <span class="nv">name</span> <span class="o">=</span> <span class="s">"Liam O'Flaherty (</span><span class="se">\"</span><span class="s">the famous Irish author</span><span class="se">\"</span><span class="s">)"</span>
+ <span class="k">let</span> <span class="nv">date</span> <span class="o">=</span> <span class="kt">Date</span><span class="p">()</span>
+ <span class="k">let</span> <span class="nv">comment</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span>
+
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO authors (identifier, name, date, comment) VALUES (?, ?, ?, ?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="n">identifier</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">date</span><span class="p">,</span> <span class="n">comment</span> <span class="p">??</span> <span class="kt">NSNull</span><span class="p">()])</span>
+<span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"error = </span><span class="se">\(</span><span class="n">error</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
+<span class="p">}</span>
+</code></pre>
+
+<blockquote>
+<p><strong>Note:</strong> In Swift, you don&rsquo;t have to wrap fundamental numeric types like you do in Objective-C. But if you are going to insert an optional string, you would probably use the <code>comment ?? NSNull()</code> syntax (i.e., if it is <code>nil</code>, use <code>NSNull</code>, otherwise use the string).</p>
+</blockquote>
+
+<p>Alternatively, you may use named parameters syntax:</p>
+<pre class="highlight sql"><code><span class="k">INSERT</span> <span class="k">INTO</span> <span class="n">authors</span> <span class="p">(</span><span class="n">identifier</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">date</span><span class="p">,</span> <span class="k">comment</span><span class="p">)</span> <span class="k">VALUES</span> <span class="p">(:</span><span class="n">identifier</span><span class="p">,</span> <span class="p">:</span><span class="n">name</span><span class="p">,</span> <span class="p">:</span><span class="n">date</span><span class="p">,</span> <span class="p">:</span><span class="k">comment</span><span class="p">)</span>
+</code></pre>
+
+<p>The parameters <em>must</em> start with a colon. SQLite itself supports other characters, but internally the dictionary keys are prefixed with a colon, do <strong>not</strong> include the colon in your dictionary keys.</p>
+<pre class="highlight objective_c"><code><span class="n">NSDictionary</span> <span class="o">*</span><span class="n">arguments</span> <span class="o">=</span> <span class="p">@{</span><span class="s">@"identifier"</span><span class="o">:</span> <span class="err">@</span><span class="p">(</span><span class="n">identifier</span><span class="p">),</span> <span class="s">@"name"</span><span class="o">:</span> <span class="n">name</span><span class="p">,</span> <span class="s">@"date"</span><span class="o">:</span> <span class="n">date</span><span class="p">,</span> <span class="s">@"comment"</span><span class="o">:</span> <span class="n">comment</span> <span class="p">?:</span> <span class="p">[</span><span class="n">NSNull</span> <span class="nf">null</span><span class="p">]};</span>
+<span class="n">BOOL</span> <span class="n">success</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO authors (identifier, name, date, comment) VALUES (:identifier, :name, :date, :comment)"</span> <span class="nf">withParameterDictionary</span><span class="p">:</span><span class="n">arguments</span><span class="p">];</span>
+<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">success</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">NSLog</span><span class="p">(</span><span class="s">@"error = %@"</span><span class="p">,</span> <span class="p">[</span><span class="n">db</span> <span class="nf">lastErrorMessage</span><span class="p">]);</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>The key point is that one should not use <code>NSString</code> method <code>stringWithFormat</code> to manually insert values into the SQL statement, itself. Nor should one Swift string interpolation to insert values into the SQL. Use <code>?</code> placeholders for values to be inserted into the database (or used in <code>WHERE</code> clauses in <code>SELECT</code> statements).</p>
+
+<h2 id="threads">Using FMDatabaseQueue and Thread Safety.</h2>
+
+<p>Using a single instance of <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> from multiple threads at once is a bad idea. It has always been OK to make a <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object <em>per thread</em>. Just don&rsquo;t share a single instance across threads, and definitely not across multiple threads at the same time. Bad things will eventually happen and you&rsquo;ll eventually get something to crash, or maybe get an exception, or maybe meteorites will fall out of the sky and hit your Mac Pro. <em>This would suck</em>.</p>
+
+<p><strong>So don&rsquo;t instantiate a single <code><a href="Classes/FMDatabase.html">FMDatabase</a></code> object and use it across multiple threads.</strong></p>
+
+<p>Instead, use <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code>. Instantiate a single <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> and use it across multiple threads. The <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> object will synchronize and coordinate access across the multiple threads. Here&rsquo;s how to use it:</p>
+
+<p>First, make your queue.</p>
+<pre class="highlight objective_c"><code><span class="n">FMDatabaseQueue</span> <span class="o">*</span><span class="n">queue</span> <span class="o">=</span> <span class="p">[</span><span class="n">FMDatabaseQueue</span> <span class="nf">databaseQueueWithPath</span><span class="p">:</span><span class="n">aPath</span><span class="p">];</span>
+</code></pre>
+
+<p>Then use it like so:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inDatabase</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@1</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@2</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@3</span><span class="p">];</span>
+
+ <span class="n">FMResultSet</span> <span class="o">*</span><span class="n">rs</span> <span class="o">=</span> <span class="p">[</span><span class="n">db</span> <span class="nf">executeQuery</span><span class="p">:</span><span class="s">@"select * from foo"</span><span class="p">];</span>
+ <span class="k">while</span> <span class="p">([</span><span class="n">rs</span> <span class="nf">next</span><span class="p">])</span> <span class="p">{</span>
+ <span class="err">…</span>
+ <span class="p">}</span>
+<span class="p">}];</span>
+</code></pre>
+
+<p>An easy way to wrap things up in a transaction can be done like this:</p>
+<pre class="highlight objective_c"><code><span class="p">[</span><span class="n">queue</span> <span class="nf">inTransaction</span><span class="p">:</span><span class="o">^</span><span class="p">(</span><span class="n">FMDatabase</span> <span class="o">*</span><span class="n">db</span><span class="p">,</span> <span class="n">BOOL</span> <span class="o">*</span><span class="n">rollback</span><span class="p">)</span> <span class="p">{</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@1</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@2</span><span class="p">];</span>
+ <span class="p">[</span><span class="n">db</span> <span class="nf">executeUpdate</span><span class="p">:</span><span class="s">@"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="mi">@3</span><span class="p">];</span>
+
+ <span class="k">if</span> <span class="p">(</span><span class="n">whoopsSomethingWrongHappened</span><span class="p">)</span> <span class="p">{</span>
+ <span class="o">*</span><span class="n">rollback</span> <span class="o">=</span> <span class="nb">YES</span><span class="p">;</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span>
+
+ <span class="c1">// etc ...
+</span><span class="p">}];</span>
+</code></pre>
+
+<p>The Swift equivalent would be:</p>
+<pre class="highlight swift"><code><span class="n">queue</span><span class="o">.</span><span class="n">inTransaction</span> <span class="p">{</span> <span class="n">db</span><span class="p">,</span> <span class="n">rollback</span> <span class="k">in</span>
+ <span class="k">do</span> <span class="p">{</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">1</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">2</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">db</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"INSERT INTO myTable VALUES (?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="mi">3</span><span class="p">])</span>
+
+ <span class="k">if</span> <span class="n">whoopsSomethingWrongHappened</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="k">return</span>
+ <span class="p">}</span>
+
+ <span class="c1">// etc ...</span>
+ <span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="n">rollback</span><span class="o">.</span><span class="n">pointee</span> <span class="o">=</span> <span class="kc">true</span>
+ <span class="nf">print</span><span class="p">(</span><span class="n">error</span><span class="p">)</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</code></pre>
+
+<p>(Note, as of Swift 3, use <code>pointee</code>. But in Swift 2.3, use <code>memory</code> rather than <code>pointee</code>.)</p>
+
+<p><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code> will run the blocks on a serialized queue (hence the name of the class). So if you call <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code>&rsquo;s methods from multiple threads at the same time, they will be executed in the order they are received. This way queries and updates won&rsquo;t step on each other&rsquo;s toes, and every one is happy.</p>
+
+<p><strong>Note:</strong> The calls to <code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code>&rsquo;s methods are blocking. So even though you are passing along blocks, they will <strong>not</strong> be run on another thread.</p>
+<h2 id='making-custom-sqlite-functions-based-on-blocks' class='heading'>Making custom sqlite functions, based on blocks.</h2>
+
+<p>You can do this! For an example, look for <code>-makeFunctionNamed:</code> in main.m</p>
+<h2 id='swift' class='heading'>Swift</h2>
+
+<p>You can use FMDB in Swift projects too.</p>
+
+<p>To do this, you must:</p>
+
+<ol>
+<li>Copy the relevant <code>.m</code> and <code>.h</code> files from the FMDB <code>src</code> folder into your project.</li>
+</ol>
+
+<p>You can copy all of them (which is easiest), or only the ones you need. Likely you will need <a href="https://ccgus.github.io/fmdb/html/Classes/FMDatabase.html"><code><a href="Classes/FMDatabase.html">FMDatabase</a></code></a> and <a href="https://ccgus.github.io/fmdb/html/Classes/FMResultSet.html"><code><a href="Classes/FMResultSet.html">FMResultSet</a></code></a> at a minimum. <a href="https://ccgus.github.io/fmdb/html/Categories/FMDatabase+FMDatabaseAdditions.html"><code>FMDatabaseAdditions</code></a> provides some very useful convenience methods, so you will likely want that, too. If you are doing multithreaded access to a database, <a href="https://ccgus.github.io/fmdb/html/Classes/FMDatabaseQueue.html"><code><a href="Classes/FMDatabaseQueue.html">FMDatabaseQueue</a></code></a> is quite useful, too. If you choose to not copy all of the files from the <code>src</code> directory, though, you may want to update <code>FMDB.h</code> to only reference the files that you included in your project.</p>
+
+<p>Note, if you&rsquo;re copying all of the files from the <code>src</code> folder into to your project (which is recommended), you may want to drag the individual files into your project, not the folder, itself, because if you drag the folder, you won&rsquo;t be prompted to add the bridging header (see next point).</p>
+
+<ol>
+<li>If prompted to create a &ldquo;bridging header&rdquo;, you should do so. If not prompted and if you don&rsquo;t already have a bridging header, add one.</li>
+</ol>
+
+<p>For more information on bridging headers, see <a href="https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html#//apple_ref/doc/uid/TP40014216-CH10-XID_76">Swift and Objective-C in the Same Project</a>.</p>
+
+<ol>
+<li><p>In your bridging header, add a line that says:</p>
+<pre class="highlight objective_c"><code><span class="cp">#import "FMDB.h"
+</span></code></pre></li>
+<li><p>Use the variations of <code>executeQuery</code> and <code>executeUpdate</code> with the <code>sql</code> and <code>values</code> parameters with <code>try</code> pattern, as shown below. These renditions of <code>executeQuery</code> and <code>executeUpdate</code> both <code>throw</code> errors in true Swift fashion.</p></li>
+</ol>
+
+<p>If you do the above, you can then write Swift code that uses <code><a href="Classes/FMDatabase.html">FMDatabase</a></code>. For example, as of Swift 3:</p>
+<pre class="highlight swift"><code><span class="k">let</span> <span class="nv">fileURL</span> <span class="o">=</span> <span class="k">try!</span> <span class="kt">FileManager</span><span class="o">.</span><span class="k">default</span>
+ <span class="o">.</span><span class="nf">url</span><span class="p">(</span><span class="nv">for</span><span class="p">:</span> <span class="o">.</span><span class="n">applicationSupportDirectory</span><span class="p">,</span> <span class="nv">in</span><span class="p">:</span> <span class="o">.</span><span class="n">userDomainMask</span><span class="p">,</span> <span class="nv">appropriateFor</span><span class="p">:</span> <span class="kc">nil</span><span class="p">,</span> <span class="nv">create</span><span class="p">:</span> <span class="kc">true</span><span class="p">)</span>
+ <span class="o">.</span><span class="nf">appendingPathComponent</span><span class="p">(</span><span class="s">"test.sqlite"</span><span class="p">)</span>
+
+<span class="k">let</span> <span class="nv">database</span> <span class="o">=</span> <span class="kt">FMDatabase</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="n">fileURL</span><span class="p">)</span>
+
+<span class="k">guard</span> <span class="n">database</span><span class="o">.</span><span class="nf">open</span><span class="p">()</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"Unable to open database"</span><span class="p">)</span>
+ <span class="k">return</span>
+<span class="p">}</span>
+
+<span class="k">do</span> <span class="p">{</span>
+ <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"create table test(x text, y text, z text)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="kc">nil</span><span class="p">)</span>
+ <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"insert into test (x, y, z) values (?, ?, ?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="s">"a"</span><span class="p">,</span> <span class="s">"b"</span><span class="p">,</span> <span class="s">"c"</span><span class="p">])</span>
+ <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeUpdate</span><span class="p">(</span><span class="s">"insert into test (x, y, z) values (?, ?, ?)"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="p">[</span><span class="s">"e"</span><span class="p">,</span> <span class="s">"f"</span><span class="p">,</span> <span class="s">"g"</span><span class="p">])</span>
+
+ <span class="k">let</span> <span class="nv">rs</span> <span class="o">=</span> <span class="k">try</span> <span class="n">database</span><span class="o">.</span><span class="nf">executeQuery</span><span class="p">(</span><span class="s">"select x, y, z from test"</span><span class="p">,</span> <span class="nv">values</span><span class="p">:</span> <span class="kc">nil</span><span class="p">)</span>
+ <span class="k">while</span> <span class="n">rs</span><span class="o">.</span><span class="nf">next</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">if</span> <span class="k">let</span> <span class="nv">x</span> <span class="o">=</span> <span class="n">rs</span><span class="o">.</span><span class="nf">string</span><span class="p">(</span><span class="nv">forColumn</span><span class="p">:</span> <span class="s">"x"</span><span class="p">),</span> <span class="k">let</span> <span class="nv">y</span> <span class="o">=</span> <span class="n">rs</span><span class="o">.</span><span class="nf">string</span><span class="p">(</span><span class="nv">forColumn</span><span class="p">:</span> <span class="s">"y"</span><span class="p">),</span> <span class="k">let</span> <span class="nv">z</span> <span class="o">=</span> <span class="n">rs</span><span class="o">.</span><span class="nf">string</span><span class="p">(</span><span class="nv">forColumn</span><span class="p">:</span> <span class="s">"z"</span><span class="p">)</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"x = </span><span class="se">\(</span><span class="n">x</span><span class="se">)</span><span class="s">; y = </span><span class="se">\(</span><span class="n">y</span><span class="se">)</span><span class="s">; z = </span><span class="se">\(</span><span class="n">z</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+<span class="p">}</span> <span class="k">catch</span> <span class="p">{</span>
+ <span class="nf">print</span><span class="p">(</span><span class="s">"failed: </span><span class="se">\(</span><span class="n">error</span><span class="o">.</span><span class="n">localizedDescription</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
+<span class="p">}</span>
+
+<span class="n">database</span><span class="o">.</span><span class="nf">close</span><span class="p">()</span>
+</code></pre>
+<h2 id='history' class='heading'>History</h2>
+
+<p>The history and changes are availbe on its <a href="https://github.com/ccgus/fmdb">GitHub page</a> and are summarized in the &ldquo;CHANGES_AND_TODO_LIST.txt&rdquo; file.</p>
+<h2 id='contributors' class='heading'>Contributors</h2>
+
+<p>The contributors to FMDB are contained in the &ldquo;Contributors.txt&rdquo; file.</p>
+<h2 id='additional-projects-using-fmdb-which-might-be-interesting-to-the-discerning-developer' class='heading'>Additional projects using FMDB, which might be interesting to the discerning developer.</h2>
+
+<ul>
+<li>FMDBMigrationManager, A SQLite schema migration management system for FMDB: <a href="https://github.com/layerhq/FMDBMigrationManager">https://github.com/layerhq/FMDBMigrationManager</a></li>
+<li>FCModel, An alternative to Core Data for people who like having direct SQL access: <a href="https://github.com/marcoarment/FCModel">https://github.com/marcoarment/FCModel</a></li>
+</ul>
+<h2 id='quick-notes-on-fmdb-39-s-coding-style' class='heading'>Quick notes on FMDB&rsquo;s coding style</h2>
+
+<p>Spaces, not tabs. Square brackets, not dot notation. Look at what FMDB already does with curly brackets and such, and stick to that style.</p>
+<h2 id='reporting-bugs' class='heading'>Reporting bugs</h2>
+
+<p>Reduce your bug down to the smallest amount of code possible. You want to make it super easy for the developers to see and reproduce your bug. If it helps, pretend that the person who can fix your bug is active on shipping 3 major products, works on a handful of open source projects, has a newborn baby, and is generally very very busy.</p>
+
+<p>And we&rsquo;ve even added a template function to main.m (FMDBReportABugFunction) in the FMDB distribution to help you out:</p>
+
+<ul>
+<li>Open up fmdb project in Xcode.</li>
+<li>Open up main.m and modify the FMDBReportABugFunction to reproduce your bug.
+
+<ul>
+<li>Setup your table(s) in the code.</li>
+<li>Make your query or update(s).</li>
+<li>Add some assertions which demonstrate the bug.</li>
+</ul></li>
+</ul>
+
+<p>Then you can bring it up on the FMDB mailing list by showing your nice and compact FMDBReportABugFunction, or you can report the bug via the github FMDB bug reporter.</p>
+
+<p><strong>Optional:</strong></p>
+
+<p>Figure out where the bug is, fix it, and send a patch in or bring that up on the mailing list. Make sure all the other tests run after your modifications.</p>
+<h2 id='support' class='heading'>Support</h2>
+
+<p>The support channels for FMDB are the mailing list (see above), filing a bug here, or maybe on Stack Overflow. So that is to say, support is provided by the community and on a voluntary basis.</p>
+
+<p>FMDB development is overseen by Gus Mueller of Flying Meat. If FMDB been helpful to you, consider purchasing an app from FM or telling all your friends about it.</p>
+<h2 id='license' class='heading'>License</h2>
+
+<p>The license for FMDB is contained in the &ldquo;License.txt&rdquo; file.</p>
+
+<p>If you happen to come across either Gus Mueller or Rob Ryan in a bar, you might consider purchasing a drink of their choosing if FMDB has been useful to you.</p>
+
+<p>(The drink is for them of course, shame on you for trying to keep it.)</p>
+
+ </section>
+ </section>
+ <section id="footer">
+ <p>&copy; 2020 <a class="link" href="https://github.com/ccgus/fmdb" target="_blank" rel="external">Gus Mueller, Flying Meat</a>. All rights reserved. (Last updated: 2020-05-09)</p>
+ <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
+ </section>
+ </article>
+ </div>
+ </body>
+</div>
+</html>
diff --git a/html/js/jazzy.js b/html/js/jazzy.js
new file mode 100755
index 0000000..1e55d6e
--- /dev/null
+++ b/html/js/jazzy.js
@@ -0,0 +1,70 @@
+window.jazzy = {'docset': false}
+if (typeof window.dash != 'undefined') {
+ document.documentElement.className += ' dash'
+ window.jazzy.docset = true
+}
+if (navigator.userAgent.match(/xcode/i)) {
+ document.documentElement.className += ' xcode'
+ window.jazzy.docset = true
+}
+
+function toggleItem($link, $content) {
+ var animationDuration = 300;
+ $link.toggleClass('token-open');
+ $content.slideToggle(animationDuration);
+}
+
+function itemLinkToContent($link) {
+ return $link.parent().parent().next();
+}
+
+// On doc load + hash-change, open any targetted item
+function openCurrentItemIfClosed() {
+ if (window.jazzy.docset) {
+ return;
+ }
+ var $link = $(`a[name="${location.hash.substring(1)}"]`).nextAll('.token');
+ $content = itemLinkToContent($link);
+ if ($content.is(':hidden')) {
+ toggleItem($link, $content);
+ }
+}
+
+$(openCurrentItemIfClosed);
+$(window).on('hashchange', openCurrentItemIfClosed);
+
+// On item link ('token') click, toggle its discussion
+$('.token').on('click', function(event) {
+ if (window.jazzy.docset) {
+ return;
+ }
+ var $link = $(this);
+ toggleItem($link, itemLinkToContent($link));
+
+ // Keeps the document from jumping to the hash.
+ var href = $link.attr('href');
+ if (history.pushState) {
+ history.pushState({}, '', href);
+ } else {
+ location.hash = href;
+ }
+ event.preventDefault();
+});
+
+// Clicks on links to the current, closed, item need to open the item
+$("a:not('.token')").on('click', function() {
+ if (location == this.href) {
+ openCurrentItemIfClosed();
+ }
+});
+
+// KaTeX rendering
+if ("katex" in window) {
+ $($('.math').each( (_, element) => {
+ katex.render(element.textContent, element, {
+ displayMode: $(element).hasClass('m-block'),
+ throwOnError: false,
+ trust: true
+ });
+ }))
+}
diff --git a/html/js/jquery.min.js b/html/js/jquery.min.js
new file mode 100644
index 0000000..a1c07fd
--- /dev/null
+++ b/html/js/jquery.min.js
@@ -0,0 +1,2 @@
+/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}k.fn=k.prototype={jquery:f,constructor:k,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=k.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return k.each(this,e)},map:function(n){return this.pushStack(k.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},k.extend=k.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(k.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||k.isPlainObject(n)?n:{},i=!1,a[t]=k.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},k.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t){b(e,{nonce:t&&t.nonce})},each:function(e,t){var n,r=0;if(d(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},trim:function(e){return null==e?"":(e+"").replace(p,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(d(Object(e))?k.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(d(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g.apply([],a)},guid:1,support:y}),"function"==typeof Symbol&&(k.fn[Symbol.iterator]=t[Symbol.iterator]),k.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var h=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,k="sizzle"+1*new Date,m=n.document,S=0,r=0,p=ue(),x=ue(),N=ue(),A=ue(),D=function(e,t){return e===t&&(l=!0),0},j={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",$=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",F=new RegExp(M+"+","g"),B=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="<a id='"+k+"'></a><select id='"+k+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!==C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!==C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&j.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(D),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(F," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[S,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===S&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[k]||(a[k]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[S,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[k]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace(B,"$1"));return s[k]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[S,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[k]||(e[k]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===S&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[k]&&(v=Ce(v)),y&&!y[k]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[k]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(B,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace(B," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=N[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[k]?i.push(a):o.push(a);(a=N(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=S+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t===C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument===C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(S=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(S=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=k.split("").sort(D).join("")===k,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);k.find=h,k.expr=h.selectors,k.expr[":"]=k.expr.pseudos,k.uniqueSort=k.unique=h.uniqueSort,k.text=h.getText,k.isXMLDoc=h.isXML,k.contains=h.contains,k.escapeSelector=h.escape;var T=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&k(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},N=k.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var D=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1<i.call(n,e)!==r}):k.filter(n,e,r)}k.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?k.find.matchesSelector(r,e)?[r]:[]:k.find.matches(e,k.grep(t,function(e){return 1===e.nodeType}))},k.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(k(e).filter(function(){for(t=0;t<r;t++)if(k.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)k.find(e,i[t],n);return 1<r?k.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&N.test(e)?k(e):e||[],!1).length}});var q,L=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(k.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&k(e);if(!N.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&k.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?k.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(k(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(k.uniqueSort(k.merge(this.get(),k(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),k.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return T(e,"parentNode")},parentsUntil:function(e,t,n){return T(e,"parentNode",n)},next:function(e){return P(e,"nextSibling")},prev:function(e){return P(e,"previousSibling")},nextAll:function(e){return T(e,"nextSibling")},prevAll:function(e){return T(e,"previousSibling")},nextUntil:function(e,t,n){return T(e,"nextSibling",n)},prevUntil:function(e,t,n){return T(e,"previousSibling",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return"undefined"!=typeof e.contentDocument?e.contentDocument:(A(e,"template")&&(e=e.content||e),k.merge([],e.childNodes))}},function(r,i){k.fn[r]=function(e,t){var n=k.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=k.filter(t,n)),1<this.length&&(O[r]||k.uniqueSort(n),H.test(r)&&n.reverse()),this.pushStack(n)}});var R=/[^\x20\t\r\n\f]+/g;function M(e){return e}function I(e){throw e}function W(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}k.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},k.each(e.match(R)||[],function(e,t){n[t]=!0}),n):k.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){k.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return k.each(arguments,function(e,t){var n;while(-1<(n=k.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<k.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},k.extend({Deferred:function(e){var o=[["notify","progress",k.Callbacks("memory"),k.Callbacks("memory"),2],["resolve","done",k.Callbacks("once memory"),k.Callbacks("once memory"),0,"resolved"],["reject","fail",k.Callbacks("once memory"),k.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return k.Deferred(function(r){k.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,M,s),l(u,o,I,s)):(u++,t.call(e,l(u,o,M,s),l(u,o,I,s),l(u,o,M,o.notifyWith))):(a!==M&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){k.Deferred.exceptionHook&&k.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==I&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(k.Deferred.getStackHook&&(t.stackTrace=k.Deferred.getStackHook()),C.setTimeout(t))}}return k.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:M,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:M)),o[2][3].add(l(0,e,m(n)?n:I))}).promise()},promise:function(e){return null!=e?k.extend(e,a):a}},s={};return k.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=k.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(W(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)W(i[t],a(t),o.reject);return o.promise()}});var $=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;k.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&$.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},k.readyException=function(e){C.setTimeout(function(){throw e})};var F=k.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),k.ready()}k.fn.ready=function(e){return F.then(e)["catch"](function(e){k.readyException(e)}),this},k.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--k.readyWait:k.isReady)||(k.isReady=!0)!==e&&0<--k.readyWait||F.resolveWith(E,[k])}}),k.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(k.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var _=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)_(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(k(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},z=/^-ms-/,U=/-([a-z])/g;function X(e,t){return t.toUpperCase()}function V(e){return e.replace(z,"ms-").replace(U,X)}var G=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function Y(){this.expando=k.expando+Y.uid++}Y.uid=1,Y.prototype={cache:function(e){var t=e[this.expando];return t||(t={},G(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[V(t)]=n;else for(r in t)i[V(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][V(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(V):(t=V(t))in r?[t]:t.match(R)||[]).length;while(n--)delete r[t[n]]}(void 0===t||k.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!k.isEmptyObject(t)}};var Q=new Y,J=new Y,K=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Z=/[A-Z]/g;function ee(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(Z,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:K.test(i)?JSON.parse(i):i)}catch(e){}J.set(e,t,n)}else n=void 0;return n}k.extend({hasData:function(e){return J.hasData(e)||Q.hasData(e)},data:function(e,t,n){return J.access(e,t,n)},removeData:function(e,t){J.remove(e,t)},_data:function(e,t,n){return Q.access(e,t,n)},_removeData:function(e,t){Q.remove(e,t)}}),k.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=J.get(o),1===o.nodeType&&!Q.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=V(r.slice(5)),ee(o,r,i[r]));Q.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){J.set(this,n)}):_(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=J.get(o,n))?t:void 0!==(t=ee(o,n))?t:void 0;this.each(function(){J.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){J.remove(this,e)})}}),k.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Q.get(e,t),n&&(!r||Array.isArray(n)?r=Q.access(e,t,k.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=k.queue(e,t),r=n.length,i=n.shift(),o=k._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){k.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Q.get(e,n)||Q.access(e,n,{empty:k.Callbacks("once memory").add(function(){Q.remove(e,[t+"queue",n])})})}}),k.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?k.queue(this[0],t):void 0===n?this:this.each(function(){var e=k.queue(this,t,n);k._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&k.dequeue(this,t)})},dequeue:function(e){return this.each(function(){k.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=k.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Q.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var te=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ne=new RegExp("^(?:([+-])=|)("+te+")([a-z%]*)$","i"),re=["Top","Right","Bottom","Left"],ie=E.documentElement,oe=function(e){return k.contains(e.ownerDocument,e)},ae={composed:!0};ie.getRootNode&&(oe=function(e){return k.contains(e.ownerDocument,e)||e.getRootNode(ae)===e.ownerDocument});var se=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&oe(e)&&"none"===k.css(e,"display")},ue=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];for(o in i=n.apply(e,r||[]),t)e.style[o]=a[o];return i};function le(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return k.css(e,t,"")},u=s(),l=n&&n[3]||(k.cssNumber[t]?"":"px"),c=e.nodeType&&(k.cssNumber[t]||"px"!==l&&+u)&&ne.exec(k.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)k.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,k.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ce={};function fe(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Q.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&se(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ce[s])||(o=a.body.appendChild(a.createElement(s)),u=k.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ce[s]=u)))):"none"!==n&&(l[c]="none",Q.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}k.fn.extend({show:function(){return fe(this,!0)},hide:function(){return fe(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){se(this)?k(this).show():k(this).hide()})}});var pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Q.set(e[n],"globalEval",!t||Q.get(t[n],"globalEval"))}ge.optgroup=ge.option,ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td;var me,xe,be=/<|&#?\w+;/;function we(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))k.merge(p,o.nodeType?[o]:o);else if(be.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+k.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;k.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<k.inArray(o,r))i&&i.push(o);else if(l=oe(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}me=E.createDocumentFragment().appendChild(E.createElement("div")),(xe=E.createElement("input")).setAttribute("type","radio"),xe.setAttribute("checked","checked"),xe.setAttribute("name","t"),me.appendChild(xe),y.checkClone=me.cloneNode(!0).cloneNode(!0).lastChild.checked,me.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,s)){a=k.event.handlers.call(this,s,l),t=0;while((i=a[t++])&&!s.isPropagationStopped()){s.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!s.isImmediatePropagationStopped())s.rnamespace&&!1!==o.namespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((k.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<k(i,this).index(l):k.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(k.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[k.expando]?e:new k.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click",ke),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&De(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Q.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},k.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},k.Event=function(e,t){if(!(this instanceof k.Event))return new k.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?ke:Se,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&k.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[k.expando]=!0},k.Event.prototype={constructor:k.Event,isDefaultPrevented:Se,isPropagationStopped:Se,isImmediatePropagationStopped:Se,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=ke,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=ke,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=ke,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},k.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&Te.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Ce.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},k.event.addProp),k.each({focus:"focusin",blur:"focusout"},function(e,t){k.event.special[e]={setup:function(){return De(this,e,Ne),!1},trigger:function(){return De(this,e),!0},delegateType:t}}),k.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){k.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||k.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),k.fn.extend({on:function(e,t,n,r){return Ae(this,e,t,n,r)},one:function(e,t,n,r){return Ae(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,k(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Se),this.each(function(){k.event.remove(this,e,n,t)})}});var je=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/<script|<style|<link/i,Le=/checked\s*(?:[^=]|=\s*.checked.)/i,He=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n<r;n++)k.event.add(t,i,l[i][n]);J.hasData(e)&&(s=J.access(e),u=k.extend({},s),J.set(t,u))}}function Ie(n,r,i,o){r=g.apply([],r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Le.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),Ie(t,r,i,o)});if(f&&(t=(e=we(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=k.map(ve(e,"script"),Pe)).length;c<f;c++)u=e,c!==p&&(u=k.clone(u,!0,!0),s&&k.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,k.map(a,Re),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Q.access(u,"globalEval")&&k.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?k._evalUrl&&!u.noModule&&k._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")}):b(u.textContent.replace(He,""),u,l))}return n}function We(e,t,n){for(var r,i=t?k.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||k.cleanData(ve(r)),r.parentNode&&(n&&oe(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}k.extend({htmlPrefilter:function(e){return e.replace(je,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Me(o[r],a[r]);else Me(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=k.event.special,o=0;void 0!==(n=e[o]);o++)if(G(n)){if(t=n[Q.expando]){if(t.events)for(r in t.events)i[r]?k.event.remove(n,r):k.removeEvent(n,r,t.handle);n[Q.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),k.fn.extend({detach:function(e){return We(this,e,!0)},remove:function(e){return We(this,e)},text:function(e){return _(this,function(e){return void 0===e?k.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return Ie(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Oe(this,e).appendChild(e)})},prepend:function(){return Ie(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Oe(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return Ie(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(k.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return k.clone(this,e,t)})},html:function(e){return _(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!qe.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=k.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(k.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return Ie(this,arguments,function(e){var t=this.parentNode;k.inArray(this,n)<0&&(k.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),k.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){k.fn[e]=function(e){for(var t,n=[],r=k(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),k(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var $e=new RegExp("^("+te+")(?!px)[a-z%]+$","i"),Fe=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Be=new RegExp(re.join("|"),"i");function _e(e,t,n){var r,i,o,a,s=e.style;return(n=n||Fe(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||oe(e)||(a=k.style(e,t)),!y.pixelBoxStyles()&&$e.test(a)&&Be.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(u){s.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",u.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",ie.appendChild(s).appendChild(u);var e=C.getComputedStyle(u);n="1%"!==e.top,a=12===t(e.marginLeft),u.style.right="60%",o=36===t(e.right),r=36===t(e.width),u.style.position="absolute",i=12===t(u.offsetWidth/3),ie.removeChild(s),u=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s=E.createElement("div"),u=E.createElement("div");u.style&&(u.style.backgroundClip="content-box",u.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===u.style.backgroundClip,k.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),a},scrollboxSize:function(){return e(),i}}))}();var Ue=["Webkit","Moz","ms"],Xe=E.createElement("div").style,Ve={};function Ge(e){var t=k.cssProps[e]||Ve[e];return t||(e in Xe?e:Ve[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Ue.length;while(n--)if((e=Ue[n]+t)in Xe)return e}(e)||e)}var Ye=/^(none|table(?!-c[ea]).+)/,Qe=/^--/,Je={position:"absolute",visibility:"hidden",display:"block"},Ke={letterSpacing:"0",fontWeight:"400"};function Ze(e,t,n){var r=ne.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function et(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=k.css(e,n+re[a],!0,i)),r?("content"===n&&(u-=k.css(e,"padding"+re[a],!0,i)),"margin"!==n&&(u-=k.css(e,"border"+re[a]+"Width",!0,i))):(u+=k.css(e,"padding"+re[a],!0,i),"padding"!==n?u+=k.css(e,"border"+re[a]+"Width",!0,i):s+=k.css(e,"border"+re[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function tt(e,t,n){var r=Fe(e),i=(!y.boxSizingReliable()||n)&&"border-box"===k.css(e,"boxSizing",!1,r),o=i,a=_e(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if($e.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||"auto"===a||!parseFloat(a)&&"inline"===k.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===k.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+et(e,t,n||(i?"border":"content"),o,r,a)+"px"}function nt(e,t,n,r,i){return new nt.prototype.init(e,t,n,r,i)}k.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=_e(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=V(t),u=Qe.test(t),l=e.style;if(u||(t=Ge(s)),a=k.cssHooks[t]||k.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=ne.exec(n))&&i[1]&&(n=le(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(k.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=V(t);return Qe.test(t)||(t=Ge(s)),(a=k.cssHooks[t]||k.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=_e(e,t,r)),"normal"===i&&t in Ke&&(i=Ke[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),k.each(["height","width"],function(e,u){k.cssHooks[u]={get:function(e,t,n){if(t)return!Ye.test(k.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?tt(e,u,n):ue(e,Je,function(){return tt(e,u,n)})},set:function(e,t,n){var r,i=Fe(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===k.css(e,"boxSizing",!1,i),s=n?et(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-et(e,u,"border",!1,i)-.5)),s&&(r=ne.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=k.css(e,u)),Ze(0,t,s)}}}),k.cssHooks.marginLeft=ze(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(_e(e,"marginLeft"))||e.getBoundingClientRect().left-ue(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),k.each({margin:"",padding:"",border:"Width"},function(i,o){k.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+re[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(k.cssHooks[i+o].set=Ze)}),k.fn.extend({css:function(e,t){return _(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Fe(e),i=t.length;a<i;a++)o[t[a]]=k.css(e,t[a],!1,r);return o}return void 0!==n?k.style(e,t,n):k.css(e,t)},e,t,1<arguments.length)}}),((k.Tween=nt).prototype={constructor:nt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||k.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(k.cssNumber[n]?"":"px")},cur:function(){var e=nt.propHooks[this.prop];return e&&e.get?e.get(this):nt.propHooks._default.get(this)},run:function(e){var t,n=nt.propHooks[this.prop];return this.options.duration?this.pos=t=k.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):nt.propHooks._default.set(this),this}}).init.prototype=nt.prototype,(nt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=k.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){k.fx.step[e.prop]?k.fx.step[e.prop](e):1!==e.elem.nodeType||!k.cssHooks[e.prop]&&null==e.elem.style[Ge(e.prop)]?e.elem[e.prop]=e.now:k.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=nt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},k.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},k.fx=nt.prototype.init,k.fx.step={};var rt,it,ot,at,st=/^(?:toggle|show|hide)$/,ut=/queueHooks$/;function lt(){it&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(lt):C.setTimeout(lt,k.fx.interval),k.fx.tick())}function ct(){return C.setTimeout(function(){rt=void 0}),rt=Date.now()}function ft(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=re[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function pt(e,t,n){for(var r,i=(dt.tweeners[t]||[]).concat(dt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function dt(o,e,t){var n,a,r=0,i=dt.prefilters.length,s=k.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=rt||ct(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:k.extend({},e),opts:k.extend(!0,{specialEasing:{},easing:k.easing._default},t),originalProperties:e,originalOptions:t,startTime:rt||ct(),duration:t.duration,tweens:[],createTween:function(e,t){var n=k.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=V(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=k.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=dt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(k._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return k.map(c,pt,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),k.fx.timer(k.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}k.Animation=k.extend(dt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return le(n.elem,e,ne.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(R);for(var n,r=0,i=e.length;r<i;r++)n=e[r],dt.tweeners[n]=dt.tweeners[n]||[],dt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&se(e),v=Q.get(e,"fxshow");for(r in n.queue||(null==(a=k._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,k.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],st.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||k.style(e,r)}if((u=!k.isEmptyObject(t))||!k.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Q.get(e,"display")),"none"===(c=k.css(e,"display"))&&(l?c=l:(fe([e],!0),l=e.style.display||l,c=k.css(e,"display"),fe([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===k.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Q.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&fe([e],!0),p.done(function(){for(r in g||fe([e]),Q.remove(e,"fxshow"),d)k.style(e,r,d[r])})),u=pt(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?dt.prefilters.unshift(e):dt.prefilters.push(e)}}),k.speed=function(e,t,n){var r=e&&"object"==typeof e?k.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return k.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in k.fx.speeds?r.duration=k.fx.speeds[r.duration]:r.duration=k.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&k.dequeue(this,r.queue)},r},k.fn.extend({fadeTo:function(e,t,n,r){return this.filter(se).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=k.isEmptyObject(t),o=k.speed(e,n,r),a=function(){var e=dt(this,k.extend({},t),o);(i||Q.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&!1!==i&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=k.timers,r=Q.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&ut.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||k.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Q.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=k.timers,o=n?n.length:0;for(t.finish=!0,k.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),k.each(["toggle","show","hide"],function(e,r){var i=k.fn[r];k.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(ft(r,!0),e,t,n)}}),k.each({slideDown:ft("show"),slideUp:ft("hide"),slideToggle:ft("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){k.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),k.timers=[],k.fx.tick=function(){var e,t=0,n=k.timers;for(rt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||k.fx.stop(),rt=void 0},k.fx.timer=function(e){k.timers.push(e),k.fx.start()},k.fx.interval=13,k.fx.start=function(){it||(it=!0,lt())},k.fx.stop=function(){it=null},k.fx.speeds={slow:600,fast:200,_default:400},k.fn.delay=function(r,e){return r=k.fx&&k.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},ot=E.createElement("input"),at=E.createElement("select").appendChild(E.createElement("option")),ot.type="checkbox",y.checkOn=""!==ot.value,y.optSelected=at.selected,(ot=E.createElement("input")).value="t",ot.type="radio",y.radioValue="t"===ot.value;var ht,gt=k.expr.attrHandle;k.fn.extend({attr:function(e,t){return _(this,k.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){k.removeAttr(this,e)})}}),k.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?k.prop(e,t,n):(1===o&&k.isXMLDoc(e)||(i=k.attrHooks[t.toLowerCase()]||(k.expr.match.bool.test(t)?ht:void 0)),void 0!==n?null===n?void k.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=k.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(R);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ht={set:function(e,t,n){return!1===t?k.removeAttr(e,n):e.setAttribute(n,n),n}},k.each(k.expr.match.bool.source.match(/\w+/g),function(e,t){var a=gt[t]||k.find.attr;gt[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=gt[o],gt[o]=r,r=null!=a(e,t,n)?o:null,gt[o]=i),r}});var vt=/^(?:input|select|textarea|button)$/i,yt=/^(?:a|area)$/i;function mt(e){return(e.match(R)||[]).join(" ")}function xt(e){return e.getAttribute&&e.getAttribute("class")||""}function bt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(R)||[]}k.fn.extend({prop:function(e,t){return _(this,k.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[k.propFix[e]||e]})}}),k.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&k.isXMLDoc(e)||(t=k.propFix[t]||t,i=k.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=k.find.attr(e,"tabindex");return t?parseInt(t,10):vt.test(e.nodeName)||yt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(k.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),k.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){k.propFix[this.toLowerCase()]=this}),k.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).addClass(t.call(this,e,xt(this)))});if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){k(this).removeClass(t.call(this,e,xt(this)))});if(!arguments.length)return this.attr("class","");if((e=bt(t)).length)while(n=this[u++])if(i=xt(n),r=1===n.nodeType&&" "+mt(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=mt(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){k(this).toggleClass(i.call(this,e,xt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=k(this),r=bt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=xt(this))&&Q.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Q.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+mt(xt(n))+" ").indexOf(t))return!0;return!1}});var wt=/\r/g;k.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,k(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=k.map(t,function(e){return null==e?"":e+""})),(r=k.valHooks[this.type]||k.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=k.valHooks[t.type]||k.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(wt,""):null==e?"":e:void 0}}),k.extend({valHooks:{option:{get:function(e){var t=k.find.attr(e,"value");return null!=t?t:mt(k.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=k(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=k.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<k.inArray(k.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),k.each(["radio","checkbox"],function(){k.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<k.inArray(k(e).val(),t)}},y.checkOn||(k.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var Tt=/^(?:focusinfocus|focusoutblur)$/,Ct=function(e){e.stopPropagation()};k.extend(k.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!Tt.test(d+k.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[k.expando]?e:new k.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:k.makeArray(t,[e]),c=k.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,Tt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Q.get(o,"events")||{})[e.type]&&Q.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&G(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!G(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),k.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,Ct),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,Ct),k.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=k.extend(new k.Event,n,{type:e,isSimulated:!0});k.event.trigger(r,null,t)}}),k.fn.extend({trigger:function(e,t){return this.each(function(){k.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return k.event.trigger(e,t,n,!0)}}),y.focusin||k.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){k.event.simulate(r,e.target,k.event.fix(e))};k.event.special[r]={setup:function(){var e=this.ownerDocument||this,t=Q.access(e,r);t||e.addEventListener(n,i,!0),Q.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=Q.access(e,r)-1;t?Q.access(e,r,t):(e.removeEventListener(n,i,!0),Q.remove(e,r))}}});var Et=C.location,kt=Date.now(),St=/\?/;k.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||k.error("Invalid XML: "+e),t};var Nt=/\[\]$/,At=/\r?\n/g,Dt=/^(?:submit|button|image|reset|file)$/i,jt=/^(?:input|select|textarea|keygen)/i;function qt(n,e,r,i){var t;if(Array.isArray(e))k.each(e,function(e,t){r||Nt.test(n)?i(n,t):qt(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)qt(n+"["+t+"]",e[t],r,i)}k.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!k.isPlainObject(e))k.each(e,function(){i(this.name,this.value)});else for(n in e)qt(n,e[n],t,i);return r.join("&")},k.fn.extend({serialize:function(){return k.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=k.prop(this,"elements");return e?k.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!k(this).is(":disabled")&&jt.test(this.nodeName)&&!Dt.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=k(this).val();return null==n?null:Array.isArray(n)?k.map(n,function(e){return{name:t.name,value:e.replace(At,"\r\n")}}):{name:t.name,value:n.replace(At,"\r\n")}}).get()}});var Lt=/%20/g,Ht=/#.*$/,Ot=/([?&])_=[^&]*/,Pt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Rt=/^(?:GET|HEAD)$/,Mt=/^\/\//,It={},Wt={},$t="*/".concat("*"),Ft=E.createElement("a");function Bt(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(R)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function _t(t,i,o,a){var s={},u=t===Wt;function l(e){var r;return s[e]=!0,k.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function zt(e,t){var n,r,i=k.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&k.extend(!0,e,r),e}Ft.href=Et.href,k.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Et.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Et.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":$t,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":k.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?zt(zt(e,k.ajaxSettings),t):zt(k.ajaxSettings,e)},ajaxPrefilter:Bt(It),ajaxTransport:Bt(Wt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=k.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?k(y):k.event,x=k.Deferred(),b=k.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=Pt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||Et.href)+"").replace(Mt,Et.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(R)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Ft.protocol+"//"+Ft.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=k.param(v.data,v.traditional)),_t(It,v,t,T),h)return T;for(i in(g=k.event&&v.global)&&0==k.active++&&k.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Rt.test(v.type),f=v.url.replace(Ht,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Lt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(St.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Ot,"$1"),o=(St.test(f)?"&":"?")+"_="+kt+++o),v.url=f+o),v.ifModified&&(k.lastModified[f]&&T.setRequestHeader("If-Modified-Since",k.lastModified[f]),k.etag[f]&&T.setRequestHeader("If-None-Match",k.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+$t+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=_t(Wt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(k.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(k.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--k.active||k.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return k.get(e,t,n,"json")},getScript:function(e,t){return k.get(e,void 0,t,"script")}}),k.each(["get","post"],function(e,i){k[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),k.ajax(k.extend({url:e,type:i,dataType:r,data:t,success:n},k.isPlainObject(e)&&e))}}),k._evalUrl=function(e,t){return k.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){k.globalEval(e,t)}})},k.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=k(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){k(this).wrapInner(n.call(this,e))}):this.each(function(){var e=k(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){k(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){k(this).replaceWith(this.childNodes)}),this}}),k.expr.pseudos.hidden=function(e){return!k.expr.pseudos.visible(e)},k.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},k.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},Xt=k.ajaxSettings.xhr();y.cors=!!Xt&&"withCredentials"in Xt,y.ajax=Xt=!!Xt,k.ajaxTransport(function(i){var o,a;if(y.cors||Xt&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Ut[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),k.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),k.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return k.globalEval(e),e}}}),k.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),k.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=k("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=mt(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&k.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?k("<div>").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),k.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),k.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),k.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||k.guid++,i},k.holdReady=function(e){e?k.readyWait++:k.ready(!0)},k.isArray=Array.isArray,k.parseJSON=JSON.parse,k.nodeName=A,k.isFunction=m,k.isWindow=x,k.camelCase=V,k.type=w,k.now=Date.now,k.isNumeric=function(e){var t=k.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},"function"==typeof define&&define.amd&&define("jquery",[],function(){return k});var Qt=C.jQuery,Jt=C.$;return k.noConflict=function(e){return C.$===k&&(C.$=Jt),e&&C.jQuery===k&&(C.jQuery=Qt),k},e||(C.jQuery=C.$=k),k});
diff --git a/html/js/script.js b/html/js/script.js
deleted file mode 100644
index 4074361..0000000
--- a/html/js/script.js
+++ /dev/null
@@ -1,59 +0,0 @@
-function $() {
- return document.querySelector.apply(document, arguments);
-}
-
-if (navigator.userAgent.indexOf("Xcode") != -1) {
- document.documentElement.classList.add("xcode");
-}
-
-var jumpTo = $("#jump-to");
-
-if (jumpTo) {
- jumpTo.addEventListener("change", function(e) {
- location.hash = this.options[this.selectedIndex].value;
- });
-}
-
-function hashChanged() {
- if (/^#\/\/api\//.test(location.hash)) {
- var element = document.querySelector("a[name='" + location.hash.substring(1) + "']");
-
- if (!element) {
- return;
- }
-
- element = element.parentNode;
-
- element.classList.remove("hide");
- fixScrollPosition(element);
- }
-}
-
-function fixScrollPosition(element) {
- var scrollTop = element.offsetTop - 150;
- document.documentElement.scrollTop = scrollTop;
- document.body.scrollTop = scrollTop;
-}
-
-[].forEach.call(document.querySelectorAll(".section-method"), function(element) {
- element.classList.add("hide");
-
- element.querySelector(".method-title a").addEventListener("click", function(e) {
- var info = element.querySelector(".method-info"),
- infoContainer = element.querySelector(".method-info-container");
-
- element.classList.add("animating");
- info.style.height = (infoContainer.clientHeight + 40) + "px";
- fixScrollPosition(element);
- element.classList.toggle("hide");
- if (element.classList.contains("hide")) {
- e.preventDefault();
- }
- setTimeout(function() {
- element.classList.remove("animating");
- }, 300);
- });
-});
-
-window.addEventListener("hashchange", hashChanged);
-hashChanged();
diff --git a/html/search.json b/html/search.json
new file mode 100644
index 0000000..19c218f
--- /dev/null
+++ b/html/search.json
@@ -0,0 +1 @@
+{"Type%20Definitions.html#/c:FMDatabase.h@T@FMDBExecuteStatementsCallbackBlock":{"name":"FMDBExecuteStatementsCallbackBlock","abstract":"<p>Callback block used by <code>executeStatements:withResultBlock:</code></p>"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeInteger":{"name":"SqliteValueTypeInteger","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeFloat":{"name":"SqliteValueTypeFloat","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeText":{"name":"SqliteValueTypeText","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeBlob":{"name":"SqliteValueTypeBlob","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/SqliteValueType.html#/c:@E@SqliteValueType@SqliteValueTypeNull":{"name":"SqliteValueTypeNull","abstract":"<p>Undocumented</p>","parent_name":"SqliteValueType"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModePassive":{"name":"FMDBCheckpointModePassive","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeFull":{"name":"FMDBCheckpointModeFull","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeRestart":{"name":"FMDBCheckpointModeRestart","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html#/c:@E@FMDBCheckpointMode@FMDBCheckpointModeTruncate":{"name":"FMDBCheckpointModeTruncate","abstract":"<p>Undocumented</p>","parent_name":"FMDBCheckpointMode"},"Enums/FMDBCheckpointMode.html":{"name":"FMDBCheckpointMode","abstract":"<p>Enumeration used in checkpoint methods.</p>"},"Enums/SqliteValueType.html":{"name":"SqliteValueType","abstract":"<p>Undocumented</p>"},"Constants.html#/c:@FMDBVersionNumber":{"name":"FMDBVersionNumber","abstract":"<p>Undocumented</p>"},"Constants.html#/c:@FMDBVersionString":{"name":"FMDBVersionString","abstract":"<p>Undocumented</p>"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)parentDB":{"name":"parentDB","abstract":"<p>Undocumented</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)query":{"name":"query","abstract":"<p>Executed query</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)columnNameToIndexMap":{"name":"columnNameToIndexMap","abstract":"<p><code>NSMutableDictionary</code> mapping column names to numeric index</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)statement":{"name":"statement","abstract":"<p><code><a href=\"36f8f5912051ae747ef441d6511ca4cbClasses/FMStatement.html\">FMStatement</a></code> used by result set.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)close":{"name":"-close","abstract":"<p>Close result set</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)next":{"name":"-next","abstract":"<p>Retrieve next row for result set.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)nextWithError:":{"name":"-nextWithError:","abstract":"<p>Retrieve next row for result set.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)step":{"name":"-step","abstract":"<p>Perform SQL statement.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)stepWithError:":{"name":"-stepWithError:","abstract":"<p>Perform SQL statement.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)hasAnotherRow":{"name":"-hasAnotherRow","abstract":"<p>Did the last call to <code>&lt;next&gt;</code> succeed in retrieving another row?</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)columnCount":{"name":"columnCount","abstract":"<p>How many columns in result set</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnIndexForName:":{"name":"-columnIndexForName:","abstract":"<p>Column index for column name</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnNameForIndex:":{"name":"-columnNameForIndex:","abstract":"<p>Column name for column index</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)intForColumn:":{"name":"-intForColumn:","abstract":"<p>Result set integer value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)intForColumnIndex:":{"name":"-intForColumnIndex:","abstract":"<p>Result set integer value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longForColumn:":{"name":"-longForColumn:","abstract":"<p>Result set <code>long</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longForColumnIndex:":{"name":"-longForColumnIndex:","abstract":"<p>Result set long value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longLongIntForColumn:":{"name":"-longLongIntForColumn:","abstract":"<p>Result set <code>long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)longLongIntForColumnIndex:":{"name":"-longLongIntForColumnIndex:","abstract":"<p>Result set <code>long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumn:":{"name":"-unsignedLongLongIntForColumn:","abstract":"<p>Result set <code>unsigned long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)unsignedLongLongIntForColumnIndex:":{"name":"-unsignedLongLongIntForColumnIndex:","abstract":"<p>Result set <code>unsigned long long int</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)boolForColumn:":{"name":"-boolForColumn:","abstract":"<p>Result set <code>BOOL</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)boolForColumnIndex:":{"name":"-boolForColumnIndex:","abstract":"<p>Result set <code>BOOL</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)doubleForColumn:":{"name":"-doubleForColumn:","abstract":"<p>Result set <code>double</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)doubleForColumnIndex:":{"name":"-doubleForColumnIndex:","abstract":"<p>Result set <code>double</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)stringForColumn:":{"name":"-stringForColumn:","abstract":"<p>Result set <code>NSString</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)stringForColumnIndex:":{"name":"-stringForColumnIndex:","abstract":"<p>Result set <code>NSString</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dateForColumn:":{"name":"-dateForColumn:","abstract":"<p>Result set <code>NSDate</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dateForColumnIndex:":{"name":"-dateForColumnIndex:","abstract":"<p>Result set <code>NSDate</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataForColumn:":{"name":"-dataForColumn:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataForColumnIndex:":{"name":"-dataForColumnIndex:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)UTF8StringForColumn:":{"name":"-UTF8StringForColumn:","abstract":"<p>Result set <code>(const unsigned char *)</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)UTF8StringForColumnName:":{"name":"-UTF8StringForColumnName:","abstract":"<p>Undocumented</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)UTF8StringForColumnIndex:":{"name":"-UTF8StringForColumnIndex:","abstract":"<p>Result set <code>(const unsigned char *)</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForColumn:":{"name":"-objectForColumn:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForColumnName:":{"name":"-objectForColumnName:","abstract":"<p>Undocumented</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForColumnIndex:":{"name":"-objectForColumnIndex:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectForKeyedSubscript:":{"name":"-objectForKeyedSubscript:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)objectAtIndexedSubscript:":{"name":"-objectAtIndexedSubscript:","abstract":"<p>Result set object for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataNoCopyForColumn:":{"name":"-dataNoCopyForColumn:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)dataNoCopyForColumnIndex:":{"name":"-dataNoCopyForColumnIndex:","abstract":"<p>Result set <code>NSData</code> value for column.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnIndexIsNull:":{"name":"-columnIndexIsNull:","abstract":"<p>Is the column <code>NULL</code> ?</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)columnIsNull:":{"name":"-columnIsNull:","abstract":"<p>Is the column <code>NULL</code> ?</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(py)resultDictionary":{"name":"resultDictionary","abstract":"<p>Returns a dictionary of the row results mapped to case sensitive keys of the column names. </p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)resultDict":{"name":"-resultDict","abstract":"<p>Returns a dictionary of the row results</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)kvcMagic:":{"name":"-kvcMagic:","abstract":"<p>Performs <code>setValue</code> to yield support for key value observing.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)bindWithArray:":{"name":"-bindWithArray:","abstract":"<p>Bind array of values to prepared statement.</p>","parent_name":"FMResultSet"},"Classes/FMResultSet.html#/c:objc(cs)FMResultSet(im)bindWithDictionary:":{"name":"-bindWithDictionary:","abstract":"<p>Bind dictionary of values to prepared statement.</p>","parent_name":"FMResultSet"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)path":{"name":"path","abstract":"<p>Path of database</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)openFlags":{"name":"openFlags","abstract":"<p>Open flags</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(py)vfsName":{"name":"vfsName","abstract":"<p>Custom virtual file system name</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:":{"name":"+databaseQueueWithPath:","abstract":"<p>Create queue using path.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:":{"name":"+databaseQueueWithURL:","abstract":"<p>Create queue using file URL.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithPath:flags:":{"name":"+databaseQueueWithPath:flags:","abstract":"<p>Create queue using path and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseQueueWithURL:flags:":{"name":"+databaseQueueWithURL:flags:","abstract":"<p>Create queue using file URL and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithPath:":{"name":"-initWithPath:","abstract":"<p>Create queue using path.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithURL:":{"name":"-initWithURL:","abstract":"<p>Create queue using file URL.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:":{"name":"-initWithPath:flags:","abstract":"<p>Create queue using path and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:":{"name":"-initWithURL:flags:","abstract":"<p>Create queue using file URL and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithPath:flags:vfs:":{"name":"-initWithPath:flags:vfs:","abstract":"<p>Create queue using path and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)initWithURL:flags:vfs:":{"name":"-initWithURL:flags:vfs:","abstract":"<p>Create queue using file URL and specified flags.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(cm)databaseClass":{"name":"+databaseClass","abstract":"<p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)close":{"name":"-close","abstract":"<p>Close database used by queue.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)interrupt":{"name":"-interrupt","abstract":"<p>Interupt pending database operation.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inDatabase:":{"name":"-inDatabase:","abstract":"<p>Synchronously perform database operations on queue.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inTransaction:":{"name":"-inTransaction:","abstract":"<p>Synchronously perform database operations on queue, using transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inDeferredTransaction:":{"name":"-inDeferredTransaction:","abstract":"<p>Synchronously perform database operations on queue, using deferred transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inExclusiveTransaction:":{"name":"-inExclusiveTransaction:","abstract":"<p>Synchronously perform database operations on queue, using exclusive transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inImmediateTransaction:":{"name":"-inImmediateTransaction:","abstract":"<p>Synchronously perform database operations on queue, using immediate transactions.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)inSavePoint:":{"name":"-inSavePoint:","abstract":"<p>Synchronously perform database operations using save point.</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)checkpoint:error:":{"name":"-checkpoint:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:error:":{"name":"-checkpoint:name:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabaseQueue.html#/c:objc(cs)FMDatabaseQueue(im)checkpoint:name:logFrameCount:checkpointCount:error:":{"name":"-checkpoint:name:logFrameCount:checkpointCount:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabaseQueue"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)path":{"name":"path","abstract":"<p>Database path</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)delegate":{"name":"delegate","abstract":"<p>Delegate object</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)maximumNumberOfDatabasesToCreate":{"name":"maximumNumberOfDatabasesToCreate","abstract":"<p>Maximum number of databases to create</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)openFlags":{"name":"openFlags","abstract":"<p>Open flags</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)vfsName":{"name":"vfsName","abstract":"<p>Custom virtual file system name</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:":{"name":"+databasePoolWithPath:","abstract":"<p>Create pool using path.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:":{"name":"+databasePoolWithURL:","abstract":"<p>Create pool using file URL.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithPath:flags:":{"name":"+databasePoolWithPath:flags:","abstract":"<p>Create pool using path and specified flags</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databasePoolWithURL:flags:":{"name":"+databasePoolWithURL:flags:","abstract":"<p>Create pool using file URL and specified flags</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithPath:":{"name":"-initWithPath:","abstract":"<p>Create pool using path.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithURL:":{"name":"-initWithURL:","abstract":"<p>Create pool using file URL.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:":{"name":"-initWithPath:flags:","abstract":"<p>Create pool using path and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:":{"name":"-initWithURL:flags:","abstract":"<p>Create pool using file URL and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithPath:flags:vfs:":{"name":"-initWithPath:flags:vfs:","abstract":"<p>Create pool using path and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)initWithURL:flags:vfs:":{"name":"-initWithURL:flags:vfs:","abstract":"<p>Create pool using file URL and specified flags.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(cm)databaseClass":{"name":"+databaseClass","abstract":"<p>Returns the Class of &lsquo;FMDatabase&rsquo; subclass, that will be used to instantiate database object.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)countOfCheckedInDatabases":{"name":"countOfCheckedInDatabases","abstract":"<p>Number of checked-in databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)countOfCheckedOutDatabases":{"name":"countOfCheckedOutDatabases","abstract":"<p>Number of checked-out databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(py)countOfOpenDatabases":{"name":"countOfOpenDatabases","abstract":"<p>Total number of databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)releaseAllDatabases":{"name":"-releaseAllDatabases","abstract":"<p>Release all databases in pool</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inDatabase:":{"name":"-inDatabase:","abstract":"<p>Synchronously perform database operations in pool.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inTransaction:":{"name":"-inTransaction:","abstract":"<p>Synchronously perform database operations in pool using transaction.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inExclusiveTransaction:":{"name":"-inExclusiveTransaction:","abstract":"<p>Synchronously perform database operations in pool using exclusive transaction.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inDeferredTransaction:":{"name":"-inDeferredTransaction:","abstract":"<p>Synchronously perform database operations in pool using deferred transaction.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inImmediateTransaction:":{"name":"-inImmediateTransaction:","abstract":"<p>Synchronously perform database operations on queue, using immediate transactions.</p>","parent_name":"FMDatabasePool"},"Classes/FMDatabasePool.html#/c:objc(cs)FMDatabasePool(im)inSavePoint:":{"name":"-inSavePoint:","abstract":"<p>Synchronously perform database operations in pool using save point.</p>","parent_name":"FMDatabasePool"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_statement":{"name":"_statement","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_query":{"name":"_query","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_useCount":{"name":"_useCount","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement@_inUse":{"name":"_inUse","abstract":"<p>Undocumented</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)useCount":{"name":"useCount","abstract":"<p>Usage count</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)query":{"name":"query","abstract":"<p>SQL statement</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)statement":{"name":"statement","abstract":"<p>SQLite sqlite3_stmt</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(py)inUse":{"name":"inUse","abstract":"<p>Indication of whether the statement is in use</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(im)close":{"name":"-close","abstract":"<p>Close statement</p>","parent_name":"FMStatement"},"Classes/FMStatement.html#/c:objc(cs)FMStatement(im)reset":{"name":"-reset","abstract":"<p>Reset statement</p>","parent_name":"FMStatement"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)traceExecution":{"name":"traceExecution","abstract":"<p>Whether should trace execution</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)checkedOut":{"name":"checkedOut","abstract":"<p>Whether checked out or not</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)crashOnErrors":{"name":"crashOnErrors","abstract":"<p>Crash on errors</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)logsErrors":{"name":"logsErrors","abstract":"<p>Logs errors</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)cachedStatements":{"name":"cachedStatements","abstract":"<p>Dictionary of cached statements</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)databaseWithPath:":{"name":"+databaseWithPath:","abstract":"<p>Create a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)databaseWithURL:":{"name":"+databaseWithURL:","abstract":"<p>Create a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)initWithPath:":{"name":"-initWithPath:","abstract":"<p>Initialize a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)initWithURL:":{"name":"-initWithURL:","abstract":"<p>Initialize a <code>FMDatabase</code> object.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)isOpen":{"name":"isOpen","abstract":"<p>Is the database open or not?</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)open":{"name":"-open","abstract":"<p>Opening a new database connection</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)openWithFlags:":{"name":"-openWithFlags:","abstract":"<p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)openWithFlags:vfs:":{"name":"-openWithFlags:vfs:","abstract":"<p>Opening a new database connection with flags and an optional virtual file system (VFS)</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)close":{"name":"-close","abstract":"<p>Closing a database connection</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)goodConnection":{"name":"goodConnection","abstract":"<p>Test to see if we have a good connection to the database.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withErrorAndBindings:":{"name":"-executeUpdate:withErrorAndBindings:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)update:withErrorAndBindings:":{"name":"-update:withErrorAndBindings:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:":{"name":"-executeUpdate:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdateWithFormat:":{"name":"-executeUpdateWithFormat:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withArgumentsInArray:":{"name":"-executeUpdate:withArgumentsInArray:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:values:error:":{"name":"-executeUpdate:values:error:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withParameterDictionary:":{"name":"-executeUpdate:withParameterDictionary:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeUpdate:withVAList:":{"name":"-executeUpdate:withVAList:","abstract":"<p>Execute single update statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeStatements:":{"name":"-executeStatements:","abstract":"<p>Execute multiple SQL statements</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeStatements:withResultBlock:":{"name":"-executeStatements:withResultBlock:","abstract":"<p>Execute multiple SQL statements with callback handler</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)lastInsertRowId":{"name":"lastInsertRowId","abstract":"<p>Last insert rowid</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)changes":{"name":"changes","abstract":"<p>The number of rows changed by prior SQL statement.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:":{"name":"-executeQuery:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQueryWithFormat:":{"name":"-executeQueryWithFormat:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:withArgumentsInArray:":{"name":"-executeQuery:withArgumentsInArray:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:values:error:":{"name":"-executeQuery:values:error:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:withParameterDictionary:":{"name":"-executeQuery:withParameterDictionary:","abstract":"<p>Execute select statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)executeQuery:withVAList:":{"name":"-executeQuery:withVAList:","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)prepare:":{"name":"-prepare:","abstract":"<p>Prepare SQL statement.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginTransaction":{"name":"-beginTransaction","abstract":"<p>Begin a transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginDeferredTransaction":{"name":"-beginDeferredTransaction","abstract":"<p>Begin a deferred transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginImmediateTransaction":{"name":"-beginImmediateTransaction","abstract":"<p>Begin an immediate transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)beginExclusiveTransaction":{"name":"-beginExclusiveTransaction","abstract":"<p>Begin an exclusive transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)commit":{"name":"-commit","abstract":"<p>Commit a transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rollback":{"name":"-rollback","abstract":"<p>Rollback a transaction</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)isInTransaction":{"name":"isInTransaction","abstract":"<p>Identify whether currently in a transaction or not</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)inTransaction":{"name":"-inTransaction","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)clearCachedStatements":{"name":"-clearCachedStatements","abstract":"<p>Clear cached statements</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)closeOpenResultSets":{"name":"-closeOpenResultSets","abstract":"<p>Close all open result sets</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)hasOpenResultSets":{"name":"hasOpenResultSets","abstract":"<p>Whether database has any open result sets</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)shouldCacheStatements":{"name":"shouldCacheStatements","abstract":"<p>Whether should cache statements or not</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)interrupt":{"name":"-interrupt","abstract":"<p>Interupt pending database operation</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)setKey:":{"name":"-setKey:","abstract":"<p>Set encryption key.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rekey:":{"name":"-rekey:","abstract":"<p>Reset encryption key</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)setKeyWithData:":{"name":"-setKeyWithData:","abstract":"<p>Set encryption key using <code>keyData</code>.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rekeyWithData:":{"name":"-rekeyWithData:","abstract":"<p>Reset encryption key using <code>keyData</code>.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)databasePath":{"name":"databasePath","abstract":"<p>The path of the database file.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)databaseURL":{"name":"databaseURL","abstract":"<p>The file URL of the database file.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)sqliteHandle":{"name":"sqliteHandle","abstract":"<p>The underlying SQLite handle .</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastErrorMessage":{"name":"-lastErrorMessage","abstract":"<p>Last error message</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastErrorCode":{"name":"-lastErrorCode","abstract":"<p>Last error code</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastExtendedErrorCode":{"name":"-lastExtendedErrorCode","abstract":"<p>Last extended error code</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)hadError":{"name":"-hadError","abstract":"<p>Had error</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)lastError":{"name":"-lastError","abstract":"<p>Last error</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)maxBusyRetryTimeInterval":{"name":"maxBusyRetryTimeInterval","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)startSavePointWithName:error:":{"name":"-startSavePointWithName:error:","abstract":"<p>Start save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)releaseSavePointWithName:error:":{"name":"-releaseSavePointWithName:error:","abstract":"<p>Release save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)rollbackToSavePointWithName:error:":{"name":"-rollbackToSavePointWithName:error:","abstract":"<p>Roll back to save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)inSavePoint:":{"name":"-inSavePoint:","abstract":"<p>Start save point</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)checkpoint:error:":{"name":"-checkpoint:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)checkpoint:name:error:":{"name":"-checkpoint:name:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)checkpoint:name:logFrameCount:checkpointCount:error:":{"name":"-checkpoint:name:logFrameCount:checkpointCount:error:","abstract":"<p>Performs a WAL checkpoint</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)isSQLiteThreadSafe":{"name":"+isSQLiteThreadSafe","abstract":"<p>Test to see if the library is threadsafe</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)limitFor:value:":{"name":"-limitFor:value:","abstract":"<p>Examine/set limits</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)sqliteLibVersion":{"name":"+sqliteLibVersion","abstract":"<p>Run-time library version numbers</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)FMDBUserVersion":{"name":"+FMDBUserVersion","abstract":"<p>The FMDB version number as a string in the form of <code>&quot;2.7.7&quot;</code> .</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)FMDBVersion":{"name":"+FMDBVersion","abstract":"<p>The FMDB version</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)makeFunctionNamed:arguments:block:":{"name":"-makeFunctionNamed:arguments:block:","abstract":"<p>Adds SQL functions or aggregates or to redefine the behavior of existing SQL functions or aggregates.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)makeFunctionNamed:maximumArguments:withBlock:":{"name":"-makeFunctionNamed:maximumArguments:withBlock:","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueType:":{"name":"-valueType:","abstract":"<p>Undocumented</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueInt:":{"name":"-valueInt:","abstract":"<p>Get integer value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueLong:":{"name":"-valueLong:","abstract":"<p>Get long value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueDouble:":{"name":"-valueDouble:","abstract":"<p>Get double value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueData:":{"name":"-valueData:","abstract":"<p>Get <code>NSData</code> value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)valueString:":{"name":"-valueString:","abstract":"<p>Get string value of parameter in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultNullInContext:":{"name":"-resultNullInContext:","abstract":"<p>Return null value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultInt:context:":{"name":"-resultInt:context:","abstract":"<p>Return integer value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultLong:context:":{"name":"-resultLong:context:","abstract":"<p>Return long value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultDouble:context:":{"name":"-resultDouble:context:","abstract":"<p>Return double value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultData:context:":{"name":"-resultData:context:","abstract":"<p>Return <code>NSData</code> object from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultString:context:":{"name":"-resultString:context:","abstract":"<p>Return string value from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultError:context:":{"name":"-resultError:context:","abstract":"<p>Return error string from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultErrorCode:context:":{"name":"-resultErrorCode:context:","abstract":"<p>Return error code from custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultErrorNoMemoryInContext:":{"name":"-resultErrorNoMemoryInContext:","abstract":"<p>Report memory error in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)resultErrorTooBigInContext:":{"name":"-resultErrorTooBigInContext:","abstract":"<p>Report that string or BLOB is too long to represent in custom function.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(cm)storeableDateFormat:":{"name":"+storeableDateFormat:","abstract":"<p>Generate an <code>NSDateFormatter</code> that won&rsquo;t be broken by permutations of timezones or locales.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)hasDateFormatter":{"name":"-hasDateFormatter","abstract":"<p>Test whether the database has a date formatter assigned.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)setDateFormat:":{"name":"-setDateFormat:","abstract":"<p>Set to a date formatter to use string dates with sqlite instead of the default UNIX timestamps.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)dateFromString:":{"name":"-dateFromString:","abstract":"<p>Convert the supplied NSString to NSDate, using the current database formatter.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)stringFromDate:":{"name":"-stringFromDate:","abstract":"<p>Convert the supplied NSDate to NSString, using the current database formatter.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)intForQuery:":{"name":"-intForQuery:","abstract":"<p>Return <code>int</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)longForQuery:":{"name":"-longForQuery:","abstract":"<p>Return <code>long</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)boolForQuery:":{"name":"-boolForQuery:","abstract":"<p>Return <code>BOOL</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)doubleForQuery:":{"name":"-doubleForQuery:","abstract":"<p>Return <code>double</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)stringForQuery:":{"name":"-stringForQuery:","abstract":"<p>Return <code>NSString</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)dataForQuery:":{"name":"-dataForQuery:","abstract":"<p>Return <code>NSData</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)dateForQuery:":{"name":"-dateForQuery:","abstract":"<p>Return <code>NSDate</code> value for query</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)tableExists:":{"name":"-tableExists:","abstract":"<p>Does table exist in database?</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)getSchema":{"name":"-getSchema","abstract":"<p>The schema of the database.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)getTableSchema:":{"name":"-getTableSchema:","abstract":"<p>The schema of the database.</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)columnExists:inTableWithName:":{"name":"-columnExists:inTableWithName:","abstract":"<p>Test to see if particular column exists for particular table in database</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)columnExists:columnName:":{"name":"-columnExists:columnName:","abstract":"<p>Test to see if particular column exists for particular table in database</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(im)validateSQL:error:":{"name":"-validateSQL:error:","abstract":"<p>Validate SQL statement</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)applicationID":{"name":"applicationID","abstract":"<p>Retrieve application ID</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)applicationIDString":{"name":"applicationIDString","abstract":"<p>Retrieve application ID string</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html#/c:objc(cs)FMDatabase(py)userVersion":{"name":"userVersion","abstract":"<p>Retrieve user version</p>","parent_name":"FMDatabase"},"Classes/FMDatabase.html":{"name":"FMDatabase","abstract":"<p>A SQLite (<a href=\"https://sqlite.org/\">https://sqlite.org/</a>) Objective-C wrapper.</p>"},"Classes/FMStatement.html":{"name":"FMStatement","abstract":"<p>Objective-C wrapper for <code>sqlite3_stmt</code></p>"},"Classes/FMDatabasePool.html":{"name":"FMDatabasePool","abstract":"<p>Pool of <code><a href=\"36f8f5912051ae747ef441d6511ca4cbClasses/FMDatabase.html\">FMDatabase</a></code> objects.</p>"},"Classes/FMDatabaseQueue.html":{"name":"FMDatabaseQueue","abstract":"<p>To perform queries and updates on multiple threads, you&rsquo;ll want to use <code>FMDatabaseQueue</code> .</p>"},"Classes/FMResultSet.html":{"name":"FMResultSet","abstract":"<p>Represents the results of executing a query on an <code><a href=\"36f8f5912051ae747ef441d6511ca4cbClasses/FMDatabase.html\">FMDatabase</a></code> .</p>"},"Categories/NSObject%28FMDatabasePoolDelegate%29.html#/c:objc(cs)NSObject(im)databasePool:shouldAddDatabaseToPool:":{"name":"-databasePool:shouldAddDatabaseToPool:","abstract":"<p>Asks the delegate whether database should be added to the pool. </p>","parent_name":"NSObject(FMDatabasePoolDelegate)"},"Categories/NSObject%28FMDatabasePoolDelegate%29.html#/c:objc(cs)NSObject(im)databasePool:didAddDatabase:":{"name":"-databasePool:didAddDatabase:","abstract":"<p>Tells the delegate that database was added to the pool.</p>","parent_name":"NSObject(FMDatabasePoolDelegate)"},"Categories/NSObject%28FMDatabasePoolDelegate%29.html":{"name":"NSObject(FMDatabasePoolDelegate)","abstract":"<p>FMDatabasePool delegate category</p>"},"Categories.html":{"name":"Categories","abstract":"<p>The following categories are available globally.</p>"},"Classes.html":{"name":"Classes","abstract":"<p>The following classes are available globally.</p>"},"Constants.html":{"name":"Constants","abstract":"<p>The following constants are available globally.</p>"},"Enums.html":{"name":"Enumerations","abstract":"<p>The following enumerations are available globally.</p>"},"Type%20Definitions.html":{"name":"Type Definitions","abstract":"<p>The following type definitions are available globally.</p>"}} \ No newline at end of file
diff --git a/html/undocumented.json b/html/undocumented.json
new file mode 100644
index 0000000..652841c
--- /dev/null
+++ b/html/undocumented.json
@@ -0,0 +1,180 @@
+{
+ "warnings": [
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDB.h",
+ "line": 3,
+ "symbol": "FMDBVersionNumber",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.constant",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDB.h",
+ "line": 4,
+ "symbol": "FMDBVersionString",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.constant",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 50,
+ "symbol": "FMDBCheckpointMode.FMDBCheckpointModePassive",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 51,
+ "symbol": "FMDBCheckpointMode.FMDBCheckpointModeFull",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 52,
+ "symbol": "FMDBCheckpointMode.FMDBCheckpointModeRestart",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 53,
+ "symbol": "FMDBCheckpointMode.FMDBCheckpointModeTruncate",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 698,
+ "symbol": "FMDatabase.-executeQuery:withVAList:",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.method.instance",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 805,
+ "symbol": "FMDatabase.-inTransaction",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.method.instance",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 995,
+ "symbol": "FMDatabase.maxBusyRetryTimeInterval",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.property",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1195,
+ "symbol": "FMDatabase.-makeFunctionNamed:maximumArguments:withBlock:",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.method.instance",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1197,
+ "symbol": "SqliteValueType",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enum",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1197,
+ "symbol": "SqliteValueType",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.typedef",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1198,
+ "symbol": "SqliteValueType.SqliteValueTypeInteger",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1199,
+ "symbol": "SqliteValueType.SqliteValueTypeFloat",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1200,
+ "symbol": "SqliteValueType.SqliteValueTypeText",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1201,
+ "symbol": "SqliteValueType.SqliteValueTypeBlob",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1202,
+ "symbol": "SqliteValueType.SqliteValueTypeNull",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.enumcase",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1205,
+ "symbol": "FMDatabase.-valueType:",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.method.instance",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1457,
+ "symbol": "FMStatement._statement",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.ivar",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1458,
+ "symbol": "FMStatement._query",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.ivar",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1459,
+ "symbol": "FMStatement._useCount",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.ivar",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMDatabase.h",
+ "line": 1460,
+ "symbol": "FMStatement._inUse",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.ivar",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMResultSet.h",
+ "line": 29,
+ "symbol": "FMResultSet.parentDB",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.property",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMResultSet.h",
+ "line": 321,
+ "symbol": "FMResultSet.-UTF8StringForColumnName:",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.method.instance",
+ "warning": "undocumented"
+ },
+ {
+ "file": "/Users/rryan/Desktop/fmdb/src/fmdb/FMResultSet.h",
+ "line": 343,
+ "symbol": "FMResultSet.-objectForColumnName:",
+ "symbol_kind": "sourcekitten.source.lang.objc.decl.method.instance",
+ "warning": "undocumented"
+ }
+ ],
+ "source_directory": "/Users/rryan/Desktop/fmdb"
+} \ No newline at end of file
diff --git a/images/bg_hr.png b/images/bg_hr.png
deleted file mode 100644
index 7973bd6..0000000
--- a/images/bg_hr.png
+++ /dev/null
Binary files differ
diff --git a/images/blacktocat.png b/images/blacktocat.png
deleted file mode 100644
index 6e264fe..0000000
--- a/images/blacktocat.png
+++ /dev/null
Binary files differ
diff --git a/images/icon_download.png b/images/icon_download.png
deleted file mode 100644
index a2a287f..0000000
--- a/images/icon_download.png
+++ /dev/null
Binary files differ
diff --git a/images/sprite_download.png b/images/sprite_download.png
deleted file mode 100644
index f2babd5..0000000
--- a/images/sprite_download.png
+++ /dev/null
Binary files differ
diff --git a/index.html b/index.html
index 5d3be71..2841d5a 100644
--- a/index.html
+++ b/index.html
@@ -1,305 +1,13 @@
<!DOCTYPE html>
<html>
-
<head>
- <meta charset='utf-8' />
- <meta http-equiv="X-UA-Compatible" content="chrome=1" />
- <meta name="description" content="Fmdb : A Cocoa / Objective-C wrapper around SQLite" />
-
- <link rel="stylesheet" type="text/css" media="screen" href="stylesheets/stylesheet.css">
-
- <title>Fmdb</title>
+ <meta http-equiv="Refresh" content="0; url=https://ccgus.github.io/fmdb/html/index.html" />
+ <script type="text/javascript">
+ window.location.href = "https://ccgus.github.io/fmdb/html/index.html"
+ </script>
+ <title>Page Redirection</title>
</head>
-
<body>
-
- <!-- HEADER -->
- <div id="header_wrap" class="outer">
- <header class="inner">
- <a id="forkme_banner" href="https://github.com/ccgus/fmdb">Fork Me on GitHub</a>
-
- <h1 id="project_title">Fmdb</h1>
- <h2 id="project_tagline">A Cocoa / Objective-C wrapper around SQLite</h2>
-
- <section id="downloads">
- <a class="zip_download_link" href="https://github.com/ccgus/fmdb/zipball/master">Download this project as a .zip file</a>
- <a class="tar_download_link" href="https://github.com/ccgus/fmdb/tarball/master">Download this project as a tar.gz file</a>
- </section>
- </header>
- </div>
-
- <!-- MAIN CONTENT -->
- <div id="main_content_wrap" class="outer">
- <section id="main_content" class="inner">
- <h1>FMDB</h1>
-
-<p>This is an Objective-C wrapper around SQLite: <a href="http://sqlite.org/">http://sqlite.org/</a></p>
-
-<p>Also refer to the <a href="html/index.html">FMDB Class Reference</a> documentation.</p>
-
-<h2>The FMDB Mailing List:</h2>
-
-<p><a href="http://groups.google.com/group/fmdb">http://groups.google.com/group/fmdb</a></p>
-
-<h2>Read the SQLite FAQ:</h2>
-
-<p><a href="http://www.sqlite.org/faq.html">http://www.sqlite.org/faq.html</a></p>
-
-<p>Since FMDB is built on top of SQLite, you're going to want to read this page top to bottom at least once. And while you're there, make sure to bookmark the SQLite Documentation page: <a href="http://www.sqlite.org/docs.html">http://www.sqlite.org/docs.html</a></p>
-
-<h2>Automatic Reference Counting (ARC) or Manual Memory Management?</h2>
-
-<p>You can use either style in your Cocoa project. FMDB Will figure out which you are using at compile time and do the right thing.</p>
-
-<h2>Usage</h2>
-
-<p>There are three main classes in FMDB:</p>
-
-<ol>
-<li>
-<code>FMDatabase</code> - Represents a single SQLite database. Used for executing SQL statements.</li>
-<li>
-<code>FMResultSet</code> - Represents the results of executing a query on an <code>FMDatabase</code>.</li>
-<li>
-<code>FMDatabaseQueue</code> - If you're wanting to perform queries and updates on multiple threads, you'll want to use this class. It's described in the "Thread Safety" section below.</li>
-</ol><h3>Database Creation</h3>
-
-<p>An <code>FMDatabase</code> is created with a path to a SQLite database file. This path can be one of these three:</p>
-
-<ol>
-<li>A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.</li>
-<li>An empty string (<code>@""</code>). An empty database is created at a temporary location. This database is deleted with the <code>FMDatabase</code> connection is closed.</li>
-<li>
-<code>NULL</code>. An in-memory database is created. This database will be destroyed with the <code>FMDatabase</code> connection is closed.</li>
-</ol><p>(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: <a href="http://www.sqlite.org/inmemorydb.html">http://www.sqlite.org/inmemorydb.html</a>)</p>
-
-<pre><code>FMDatabase *db = [FMDatabase databaseWithPath:@"/tmp/tmp.db"];
-</code></pre>
-
-<h3>Opening</h3>
-
-<p>Before you can interact with the database, it must be opened. Opening fails if there are insufficient resources or permissions to open and/or create the database.</p>
-
-<pre><code>if (![db open]) {
- [db release];
- return;
-}
-</code></pre>
-
-<h3>Executing Updates</h3>
-
-<p>Any sort of SQL statement which is not a <code>SELECT</code> statement qualifies as an update. This includes <code>CREATE</code>, <code>PRAGMA</code>, <code>UPDATE</code>, <code>INSERT</code>, <code>ALTER</code>, <code>COMMIT</code>, <code>BEGIN</code>, <code>DETACH</code>, <code>DELETE</code>, <code>DROP</code>, <code>END</code>, <code>EXPLAIN</code>, <code>VACUUM</code>, and <code>REPLACE</code> statements (plus many more). Basically, if your SQL statement does not begin with <code>SELECT</code>, it is an update statement.</p>
-
-<p>Executing updates returns a single value, a <code>BOOL</code>. A return value of <code>YES</code> means the update was successfully executed, and a return value of <code>NO</code> means that some error was encountered. If you use the <code>-[FMDatabase executeUpdate:error:withArgumentsInArray:orVAList:]</code> method to execute an update, you may supply an <code>NSError **</code> that will be filled in if execution fails. Otherwise you may invoke the <code>-lastErrorMessage</code> and <code>-lastErrorCode</code> methods to retrieve more information.</p>
-
-<h3>Executing Queries</h3>
-
-<p>A <code>SELECT</code> statement is a query and is executed via one of the <code>-executeQuery...</code> methods.</p>
-
-<p>Executing queries returns an <code>FMResultSet</code> object if successful, and <code>nil</code> upon failure. Like executing updates, there is a variant that accepts an <code>NSError **</code> parameter. Otherwise you should use the <code>-lastErrorMessage</code> and <code>-lastErrorCode</code> methods to determine why a query failed.</p>
-
-<p>In order to iterate through the results of your query, you use a <code>while()</code> loop. You also need to "step" from one record to the other. With FMDB, the easiest way to do that is like this:</p>
-
-<pre><code>FMResultSet *s = [db executeQuery:@"SELECT * FROM myTable"];
-while ([s next]) {
- //retrieve values for each record
-}
-</code></pre>
-
-<p>You must always invoke <code>-[FMResultSet next]</code> before attempting to access the values returned in a query, even if you're only expecting one:</p>
-
-<pre><code>FMResultSet *s = [db executeQuery:@"SELECT COUNT(*) FROM myTable"];
-if ([s next]) {
- int totalCount = [s intForColumnIndex:0];
-}
-</code></pre>
-
-<p><code>FMResultSet</code> has many methods to retrieve data in an appropriate format:</p>
-
-<ul>
-<li><code>intForColumn:</code></li>
-<li><code>longForColumn:</code></li>
-<li><code>longLongIntForColumn:</code></li>
-<li><code>boolForColumn:</code></li>
-<li><code>doubleForColumn:</code></li>
-<li><code>stringForColumn:</code></li>
-<li><code>dateForColumn:</code></li>
-<li><code>dataForColumn:</code></li>
-<li><code>dataNoCopyForColumn:</code></li>
-<li><code>UTF8StringForColumnIndex:</code></li>
-<li><code>objectForColumn:</code></li>
-</ul><p>Each of these methods also has a <code>{type}ForColumnIndex:</code> variant that is used to retrieve the data based on the position of the column in the results, as opposed to the column's name.</p>
-
-<p>Typically, there's no need to <code>-close</code> an <code>FMResultSet</code> yourself, since that happens when either the result set is deallocated, or the parent database is closed.</p>
-
-<h3>Closing</h3>
-
-<p>When you have finished executing queries and updates on the database, you should <code>-close</code> the <code>FMDatabase</code> connection so that SQLite will relinquish any resources it has acquired during the course of its operation.</p>
-
-<pre><code>[db close];
-</code></pre>
-
-<h3>Transactions</h3>
-
-<p><code>FMDatabase</code> can begin and commit a transaction by invoking one of the appropriate methods or executing a begin/end transaction statement.</p>
-
-<h3>Data Sanitization</h3>
-
-<p>When providing a SQL statement to FMDB, you should not attempt to "sanitize" any values before insertion. Instead, you should use the standard SQLite binding syntax:</p>
-
-<pre><code>INSERT INTO myTable VALUES (?, ?, ?)
-</code></pre>
-
-<p>The <code>?</code> character is recognized by SQLite as a placeholder for a value to be inserted. The execution methods all accept a variable number of arguments (or a representation of those arguments, such as an <code>NSArray</code>, <code>NSDictionary</code>, or a <code>va_list</code>), which are properly escaped for you.</p>
-
-<p>Alternatively, you may use named parameters syntax:</p>
-
-<pre><code>INSERT INTO myTable VALUES (:id, :name, :value)
-</code></pre>
-
-<p>The parameters <em>must</em> start with a colon. SQLite itself supports other characters, but internally the Dictionary keys are prefixed with a colon, do <strong>not</strong> include the colon in your dictionary keys.</p>
-
-<pre><code>NSDictionary *argsDict = [NSDictionary dictionaryWithObjectsAndKeys:@"My Name", @"name", nil];
-[db executeUpdate:@"INSERT INTO myTable (name) VALUES (:name)" withParameterDictionary:argsDict];
-</code></pre>
-
-<p>Thus, you SHOULD NOT do this (or anything like this):</p>
-
-<pre><code>[db executeUpdate:[NSString stringWithFormat:@"INSERT INTO myTable VALUES (%@)", @"this has \" lots of ' bizarre \" quotes '"]];
-</code></pre>
-
-<p>Instead, you SHOULD do:</p>
-
-<pre><code>[db executeUpdate:@"INSERT INTO myTable VALUES (?)", @"this has \" lots of ' bizarre \" quotes '"];
-</code></pre>
-
-<p>All arguments provided to the <code>-executeUpdate:</code> method (or any of the variants that accept a <code>va_list</code> as a parameter) must be objects. The following will not work (and will result in a crash):</p>
-
-<pre><code>[db executeUpdate:@"INSERT INTO myTable VALUES (?)", 42];
-</code></pre>
-
-<p>The proper way to insert a number is to box it in an <code>NSNumber</code> object:</p>
-
-<pre><code>[db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:42]];
-</code></pre>
-
-<p>Alternatively, you can use the <code>-execute*WithFormat:</code> variant to use <code>NSString</code>-style substitution:</p>
-
-<pre><code>[db executeUpdateWithFormat:@"INSERT INTO myTable VALUES (%d)", 42];
-</code></pre>
-
-<p>Internally, the <code>-execute*WithFormat:</code> methods are properly boxing things for you. The following percent modifiers are recognized: <code>%@</code>, <code>%c</code>, <code>%s</code>, <code>%d</code>, <code>%D</code>, <code>%i</code>, <code>%u</code>, <code>%U</code>, <code>%hi</code>, <code>%hu</code>, <code>%qi</code>, <code>%qu</code>, <code>%f</code>, <code>%g</code>, <code>%ld</code>, <code>%lu</code>, <code>%lld</code>, and <code>%llu</code>. Using a modifier other than those will have unpredictable results. If, for some reason, you need the <code>%</code> character to appear in your SQL statement, you should use <code>%%</code>.</p>
-
-<h2>Using FMDatabaseQueue and Thread Safety.</h2>
-
-<p>Using a single instance of <code>FMDatabase</code> from multiple threads at once is a bad idea. It has always been OK to make a <code>FMDatabase</code> object <em>per thread</em>. Just don't share a single instance across threads, and definitely not across multiple threads at the same time. Bad things will eventually happen and you'll eventually get something to crash, or maybe get an exception, or maybe meteorites will fall out of the sky and hit your Mac Pro. <em>This would suck</em>.</p>
-
-<p><strong>So don't instantiate a single FMDatabase object and use it across multiple threads.</strong></p>
-
-<p>Instead, use <code>FMDatabaseQueue</code>. It's your friend and it's here to help. Here's how to use it:</p>
-
-<p>First, make your queue.</p>
-
-<pre><code>FMDatabaseQueue *queue = [FMDatabaseQueue databaseQueueWithPath:aPath];
-</code></pre>
-
-<p>Then use it like so:</p>
-
-<pre><code>[queue inDatabase:^(FMDatabase *db) {
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:1]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:2]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:3]];
-
- FMResultSet *rs = [db executeQuery:@"select * from foo"];
- while ([rs next]) {
- …
- }
-}];
-</code></pre>
-
-<p>An easy way to wrap things up in a transaction can be done like this:</p>
-
-<pre><code>[queue inTransaction:^(FMDatabase *db, BOOL *rollback) {
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:1]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:2]];
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:3]];
-
- if (whoopsSomethingWrongHappened) {
- *rollback = YES;
- return;
- }
- // etc…
- [db executeUpdate:@"INSERT INTO myTable VALUES (?)", [NSNumber numberWithInt:4]];
-}];
-</code></pre>
-
-<p><code>FMDatabaseQueue</code> will make a serialized GCD queue in the background and execute the blocks you pass to the GCD queue. This means if you call your <code>FMDatabaseQueue</code>'s methods from multiple threads at the same time GDC will execute them in the order they are received. This means queries and updates won't step on each other's toes, and every one is happy.</p>
-
-<h2>Making custom sqlite functions, based on blocks.</h2>
-<p>You can do this! For an example, look for <code>makeFunctionNamed:</code> in main.m</p>
-
-<h2>Swift</h2>
-<p> You can use FMDB in Swift projects, too. To do this, you should: </p>
-
-<ol>
-<li>Copy the FMDB .m and .h files into your project. </li>
-<li>If prompted to create a "bridging header", you should do so. If not prompted and if you don't already have a bridging header, add one. For more information on bridging headers, see <a href="https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html#//apple_ref/doc/uid/TP40014216-CH10-XID_76">Swift and Objective-C in the Same Project</a>. </li>
-<li>In your bridging header, add a line that says: <br />
-<pre><code>#import "FMDB.h" </code></pre></li>
-<li>Use the variations of <code>executeQuery</code> and <code>executeUpdate</code> with the sql and values parameters with try pattern, as shown below.
-</p></ol>
-
-<p>These renditions of <code>executeQuery</code> and <code>executeUpdate</code> both throw errors in true Swift 2 fashion. If you do the above, you can then write Swift code that uses <code>FMDatabase</code>. For example: </p>
-
-<pre><code>let documents = try! NSFileManager.defaultManager().URLForDirectory(.DocumentDirectory, inDomain: .UserDomainMask, appropriateForURL: nil, create: false)
-let fileURL = documents.URLByAppendingPathComponent("test.sqlite")
-let database = FMDatabase(path: fileURL.path)
-
-if !database.open() {
- print("Unable to open database")
- return
-}
-
-do {
- try database.executeUpdate("create table test(x text, y text, z text)", values: nil)
- try database.executeUpdate("insert into test (x, y, z) values (?, ?, ?)", values: ["a", "b", "c"])
- try database.executeUpdate("insert into test (x, y, z) values (?, ?, ?)", values: ["e", "f", "g"])
-
- let rs = try database.executeQuery("select x, y, z from test", values: nil)
- while rs.next() {
- let x = rs.stringForColumn("x")
- let y = rs.stringForColumn("y")
- let z = rs.stringForColumn("z")
- print("x = \(x); y = \(y); z = \(z)")
- }
-} catch let error as NSError {
- print("failed: \(error.localizedDescription)")
-}
-
-database.close()</code></pre>
-<h2>History</h2>
-
-<p>The history and changes are availbe on its <a href="https://github.com/ccgus/fmdb">GitHub page</a> and are summarized in the "CHANGES_AND_TODO_LIST.txt" file.</p>
-
-<h2>Contributors</h2>
-
-<p>The contributors to FMDB are contained in the "Contributors.txt" file.</p>
-
-<h2>License</h2>
-
-<p>The license for FMDB is contained in the "License.txt" file.</p>
- </section>
- </div>
-
- <!-- FOOTER -->
- <div id="footer_wrap" class="outer">
- <footer class="inner">
- <p class="copyright">Fmdb maintained by <a href="https://github.com/ccgus">ccgus</a></p>
- <p>Published with <a href="http://pages.github.com">GitHub Pages</a></p>
- </footer>
- </div>
-
-
-
+ <p>If not redirected automatically, follow <a href="https://ccgus.github.io/fmdb/html/index.html">this link</a>.</p>
</body>
</html>
diff --git a/javascripts/main.js b/javascripts/main.js
deleted file mode 100644
index d8135d3..0000000
--- a/javascripts/main.js
+++ /dev/null
@@ -1 +0,0 @@
-console.log('This would be the main JS file.');
diff --git a/params.json b/params.json
deleted file mode 100644
index bf9c800..0000000
--- a/params.json
+++ /dev/null
@@ -1 +0,0 @@
-{"name":"Fmdb","body":"# FMDB\r\nThis is an Objective-C wrapper around SQLite: http://sqlite.org/\r\n\r\n\r\n## The FMDB Mailing List:\r\nhttp://groups.google.com/group/fmdb\r\n\r\n## Read the SQLite FAQ:\r\nhttp://www.sqlite.org/faq.html\r\n\r\nSince FMDB is built on top of SQLite, you're going to want to read this page top to bottom at least once. And while you're there, make sure to bookmark the SQLite Documentation page: http://www.sqlite.org/docs.html\r\n\r\n## Automatic Reference Counting (ARC) or Manual Memory Management?\r\nYou can use either style in your Cocoa project. FMDB Will figure out which you are using at compile time and do the right thing.\r\n\r\n## Usage\r\nThere are three main classes in FMDB:\r\n\r\n1. `FMDatabase` - Represents a single SQLite database. Used for executing SQL statements.\r\n2. `FMResultSet` - Represents the results of executing a query on an `FMDatabase`.\r\n3. `FMDatabaseQueue` - If you're wanting to perform queries and updates on multiple threads, you'll want to use this class. It's described in the \"Thread Safety\" section below.\r\n\r\n### Database Creation\r\nAn `FMDatabase` is created with a path to a SQLite database file. This path can be one of these three:\r\n\r\n1. A file system path. The file does not have to exist on disk. If it does not exist, it is created for you.\r\n2. An empty string (`@\"\"`). An empty database is created at a temporary location. This database is deleted with the `FMDatabase` connection is closed.\r\n3. `NULL`. An in-memory database is created. This database will be destroyed with the `FMDatabase` connection is closed.\r\n\r\n(For more information on temporary and in-memory databases, read the sqlite documentation on the subject: http://www.sqlite.org/inmemorydb.html)\r\n\r\n\tFMDatabase *db = [FMDatabase databaseWithPath:@\"/tmp/tmp.db\"];\r\n\t\r\n### Opening\r\n\r\nBefore you can interact with the database, it must be opened. Opening fails if there are insufficient resources or permissions to open and/or create the database.\r\n\r\n\tif (![db open]) {\r\n\t\t[db release];\r\n\t\treturn;\r\n\t}\r\n\t\r\n### Executing Updates\r\n\r\nAny sort of SQL statement which is not a `SELECT` statement qualifies as an update. This includes `CREATE`, `PRAGMA`, `UPDATE`, `INSERT`, `ALTER`, `COMMIT`, `BEGIN`, `DETACH`, `DELETE`, `DROP`, `END`, `EXPLAIN`, `VACUUM`, and `REPLACE` statements (plus many more). Basically, if your SQL statement does not begin with `SELECT`, it is an update statement.\r\n\r\nExecuting updates returns a single value, a `BOOL`. A return value of `YES` means the update was successfully executed, and a return value of `NO` means that some error was encountered. If you use the `-[FMDatabase executeUpdate:error:withArgumentsInArray:orVAList:]` method to execute an update, you may supply an `NSError **` that will be filled in if execution fails. Otherwise you may invoke the `-lastErrorMessage` and `-lastErrorCode` methods to retrieve more information.\r\n\r\n### Executing Queries\r\n\r\nA `SELECT` statement is a query and is executed via one of the `-executeQuery...` methods.\r\n\r\nExecuting queries returns an `FMResultSet` object if successful, and `nil` upon failure. Like executing updates, there is a variant that accepts an `NSError **` parameter. Otherwise you should use the `-lastErrorMessage` and `-lastErrorCode` methods to determine why a query failed.\r\n\r\nIn order to iterate through the results of your query, you use a `while()` loop. You also need to \"step\" from one record to the other. With FMDB, the easiest way to do that is like this:\r\n\r\n\tFMResultSet *s = [db executeQuery:@\"SELECT * FROM myTable\"];\r\n\twhile ([s next]) {\r\n\t\t//retrieve values for each record\r\n\t}\r\n\t\r\nYou must always invoke `-[FMResultSet next]` before attempting to access the values returned in a query, even if you're only expecting one:\r\n\r\n\tFMResultSet *s = [db executeQuery:@\"SELECT COUNT(*) FROM myTable\"];\r\n\tif ([s next]) {\r\n\t\tint totalCount = [s intForColumnIndex:0];\r\n\t}\r\n\t\r\n`FMResultSet` has many methods to retrieve data in an appropriate format:\r\n\r\n- `intForColumn:`\r\n- `longForColumn:`\r\n- `longLongIntForColumn:`\r\n- `boolForColumn:`\r\n- `doubleForColumn:`\r\n- `stringForColumn:`\r\n- `dateForColumn:`\r\n- `dataForColumn:`\r\n- `dataNoCopyForColumn:`\r\n- `UTF8StringForColumnIndex:`\r\n- `objectForColumn:`\r\n\r\nEach of these methods also has a `{type}ForColumnIndex:` variant that is used to retrieve the data based on the position of the column in the results, as opposed to the column's name.\r\n\r\nTypically, there's no need to `-close` an `FMResultSet` yourself, since that happens when either the result set is deallocated, or the parent database is closed.\r\n\r\n### Closing\r\n\r\nWhen you have finished executing queries and updates on the database, you should `-close` the `FMDatabase` connection so that SQLite will relinquish any resources it has acquired during the course of its operation.\r\n\r\n\t[db close];\r\n\t\r\n### Transactions\r\n\r\n`FMDatabase` can begin and commit a transaction by invoking one of the appropriate methods or executing a begin/end transaction statement.\r\n\r\n### Data Sanitization\r\n\r\nWhen providing a SQL statement to FMDB, you should not attempt to \"sanitize\" any values before insertion. Instead, you should use the standard SQLite binding syntax:\r\n\r\n\tINSERT INTO myTable VALUES (?, ?, ?)\r\n\t\r\nThe `?` character is recognized by SQLite as a placeholder for a value to be inserted. The execution methods all accept a variable number of arguments (or a representation of those arguments, such as an `NSArray`, `NSDictionary`, or a `va_list`), which are properly escaped for you.\r\n\r\nAlternatively, you may use named parameters syntax:\r\n\r\n INSERT INTO myTable VALUES (:id, :name, :value)\r\n \r\nThe parameters *must* start with a colon. SQLite itself supports other characters, but internally the Dictionary keys are prefixed with a colon, do **not** include the colon in your dictionary keys.\r\n\r\n NSDictionary *argsDict = [NSDictionary dictionaryWithObjectsAndKeys:@\"My Name\", @\"name\", nil];\r\n [db executeUpdate:@\"INSERT INTO myTable (name) VALUES (:name)\" withParameterDictionary:argsDict];\r\n\r\nThus, you SHOULD NOT do this (or anything like this):\r\n\r\n\t[db executeUpdate:[NSString stringWithFormat:@\"INSERT INTO myTable VALUES (%@)\", @\"this has \\\" lots of ' bizarre \\\" quotes '\"]];\r\n\t\r\nInstead, you SHOULD do:\r\n\r\n\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", @\"this has \\\" lots of ' bizarre \\\" quotes '\"];\r\n\t\r\nAll arguments provided to the `-executeUpdate:` method (or any of the variants that accept a `va_list` as a parameter) must be objects. The following will not work (and will result in a crash):\r\n\r\n\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", 42];\r\n\t\r\nThe proper way to insert a number is to box it in an `NSNumber` object:\r\n\r\n\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:42]];\r\n\t\r\nAlternatively, you can use the `-execute*WithFormat:` variant to use `NSString`-style substitution:\r\n\r\n\t[db executeUpdateWithFormat:@\"INSERT INTO myTable VALUES (%d)\", 42];\r\n\t\r\nInternally, the `-execute*WithFormat:` methods are properly boxing things for you. The following percent modifiers are recognized: `%@`, `%c`, `%s`, `%d`, `%D`, `%i`, `%u`, `%U`, `%hi`, `%hu`, `%qi`, `%qu`, `%f`, `%g`, `%ld`, `%lu`, `%lld`, and `%llu`. Using a modifier other than those will have unpredictable results. If, for some reason, you need the `%` character to appear in your SQL statement, you should use `%%`.\r\n\r\n\r\n<h2 id=\"threads\">Using FMDatabaseQueue and Thread Safety.</h2>\r\n\r\nUsing a single instance of FMDatabase from multiple threads at once is a bad idea. It has always been OK to make a FMDatabase object *per thread*. Just don't share a single instance across threads, and definitely not across multiple threads at the same time. Bad things will eventually happen and you'll eventually get something to crash, or maybe get an exception, or maybe meteorites will fall out of the sky and hit your Mac Pro. *This would suck*.\r\n\r\n**So don't instantiate a single FMDatabase object and use it across multiple threads.**\r\n\r\nInstead, use FMDatabaseQueue. It's your friend and it's here to help. Here's how to use it:\r\n\r\nFirst, make your queue.\r\n\r\n\tFMDatabaseQueue *queue = [FMDatabaseQueue databaseQueueWithPath:aPath];\r\n\r\nThen use it like so:\r\n\r\n [queue inDatabase:^(FMDatabase *db) {\r\n\t\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:1]];\r\n\t\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:2]];\r\n\t\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:3]];\r\n\t\t\r\n\t\tFMResultSet *rs = [db executeQuery:@\"select * from foo\"];\r\n while ([rs next]) {\r\n …\r\n }\r\n }];\r\n\r\nAn easy way to wrap things up in a transaction can be done like this:\r\n\r\n [queue inTransaction:^(FMDatabase *db, BOOL *rollback) {\r\n [db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:1]];\r\n\t\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:2]];\r\n\t\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:3]];\r\n\t\t\r\n\t\tif (whoopsSomethingWrongHappened) {\r\n\t\t *rollback = YES;\r\n\t\t return;\r\n\t\t}\r\n\t\t// etc…\r\n\t\t[db executeUpdate:@\"INSERT INTO myTable VALUES (?)\", [NSNumber numberWithInt:4]];\r\n }];\r\n\r\n\r\nFMDatabaseQueue will make a serialized GCD queue in the background and execute the blocks you pass to the GCD queue. This means if you call your FMDatabaseQueue's methods from multiple threads at the same time GDC will execute them in the order they are received. This means queries and updates won't step on each other's toes, and every one is happy.\r\n\r\n## Making custom sqlite functions, based on blocks.\r\n\r\nYou can do this! For an example, look for \"makeFunctionNamed:\" in main.m\r\n\r\n## History\r\n\r\nThe history and changes are availbe on its [GitHub page](https://github.com/ccgus/fmdb) and are summarized in the \"CHANGES_AND_TODO_LIST.txt\" file.\r\n\r\n## Contributors\r\n\r\nThe contributors to FMDB are contained in the \"Contributors.txt\" file.\r\n\r\n## License\r\n\r\nThe license for FMDB is contained in the \"License.txt\" file.","tagline":"A Cocoa / Objective-C wrapper around SQLite","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."} \ No newline at end of file
diff --git a/stylesheets/pygment_trac.css b/stylesheets/pygment_trac.css
deleted file mode 100644
index e65cedf..0000000
--- a/stylesheets/pygment_trac.css
+++ /dev/null
@@ -1,70 +0,0 @@
-.highlight .hll { background-color: #ffffcc }
-.highlight { background: #f0f3f3; }
-.highlight .c { color: #0099FF; font-style: italic } /* Comment */
-.highlight .err { color: #AA0000; background-color: #FFAAAA } /* Error */
-.highlight .k { color: #006699; font-weight: bold } /* Keyword */
-.highlight .o { color: #555555 } /* Operator */
-.highlight .cm { color: #0099FF; font-style: italic } /* Comment.Multiline */
-.highlight .cp { color: #009999 } /* Comment.Preproc */
-.highlight .c1 { color: #0099FF; font-style: italic } /* Comment.Single */
-.highlight .cs { color: #0099FF; font-weight: bold; font-style: italic } /* Comment.Special */
-.highlight .gd { background-color: #FFCCCC; border: 1px solid #CC0000 } /* Generic.Deleted */
-.highlight .ge { font-style: italic } /* Generic.Emph */
-.highlight .gr { color: #FF0000 } /* Generic.Error */
-.highlight .gh { color: #003300; font-weight: bold } /* Generic.Heading */
-.highlight .gi { background-color: #CCFFCC; border: 1px solid #00CC00 } /* Generic.Inserted */
-.highlight .go { color: #AAAAAA } /* Generic.Output */
-.highlight .gp { color: #000099; font-weight: bold } /* Generic.Prompt */
-.highlight .gs { font-weight: bold } /* Generic.Strong */
-.highlight .gu { color: #003300; font-weight: bold } /* Generic.Subheading */
-.highlight .gt { color: #99CC66 } /* Generic.Traceback */
-.highlight .kc { color: #006699; font-weight: bold } /* Keyword.Constant */
-.highlight .kd { color: #006699; font-weight: bold } /* Keyword.Declaration */
-.highlight .kn { color: #006699; font-weight: bold } /* Keyword.Namespace */
-.highlight .kp { color: #006699 } /* Keyword.Pseudo */
-.highlight .kr { color: #006699; font-weight: bold } /* Keyword.Reserved */
-.highlight .kt { color: #007788; font-weight: bold } /* Keyword.Type */
-.highlight .m { color: #FF6600 } /* Literal.Number */
-.highlight .s { color: #CC3300 } /* Literal.String */
-.highlight .na { color: #330099 } /* Name.Attribute */
-.highlight .nb { color: #336666 } /* Name.Builtin */
-.highlight .nc { color: #00AA88; font-weight: bold } /* Name.Class */
-.highlight .no { color: #336600 } /* Name.Constant */
-.highlight .nd { color: #9999FF } /* Name.Decorator */
-.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
-.highlight .ne { color: #CC0000; font-weight: bold } /* Name.Exception */
-.highlight .nf { color: #CC00FF } /* Name.Function */
-.highlight .nl { color: #9999FF } /* Name.Label */
-.highlight .nn { color: #00CCFF; font-weight: bold } /* Name.Namespace */
-.highlight .nt { color: #330099; font-weight: bold } /* Name.Tag */
-.highlight .nv { color: #003333 } /* Name.Variable */
-.highlight .ow { color: #000000; font-weight: bold } /* Operator.Word */
-.highlight .w { color: #bbbbbb } /* Text.Whitespace */
-.highlight .mf { color: #FF6600 } /* Literal.Number.Float */
-.highlight .mh { color: #FF6600 } /* Literal.Number.Hex */
-.highlight .mi { color: #FF6600 } /* Literal.Number.Integer */
-.highlight .mo { color: #FF6600 } /* Literal.Number.Oct */
-.highlight .sb { color: #CC3300 } /* Literal.String.Backtick */
-.highlight .sc { color: #CC3300 } /* Literal.String.Char */
-.highlight .sd { color: #CC3300; font-style: italic } /* Literal.String.Doc */
-.highlight .s2 { color: #CC3300 } /* Literal.String.Double */
-.highlight .se { color: #CC3300; font-weight: bold } /* Literal.String.Escape */
-.highlight .sh { color: #CC3300 } /* Literal.String.Heredoc */
-.highlight .si { color: #AA0000 } /* Literal.String.Interpol */
-.highlight .sx { color: #CC3300 } /* Literal.String.Other */
-.highlight .sr { color: #33AAAA } /* Literal.String.Regex */
-.highlight .s1 { color: #CC3300 } /* Literal.String.Single */
-.highlight .ss { color: #FFCC33 } /* Literal.String.Symbol */
-.highlight .bp { color: #336666 } /* Name.Builtin.Pseudo */
-.highlight .vc { color: #003333 } /* Name.Variable.Class */
-.highlight .vg { color: #003333 } /* Name.Variable.Global */
-.highlight .vi { color: #003333 } /* Name.Variable.Instance */
-.highlight .il { color: #FF6600 } /* Literal.Number.Integer.Long */
-
-.type-csharp .highlight .k { color: #0000FF }
-.type-csharp .highlight .kt { color: #0000FF }
-.type-csharp .highlight .nf { color: #000000; font-weight: normal }
-.type-csharp .highlight .nc { color: #2B91AF }
-.type-csharp .highlight .nn { color: #000000 }
-.type-csharp .highlight .s { color: #A31515 }
-.type-csharp .highlight .sc { color: #A31515 }
diff --git a/stylesheets/stylesheet.css b/stylesheets/stylesheet.css
deleted file mode 100644
index bfc7914..0000000
--- a/stylesheets/stylesheet.css
+++ /dev/null
@@ -1,429 +0,0 @@
-/*******************************************************************************
-Slate Theme for Github Pages
-by Jason Costello, @jsncostello
-*******************************************************************************/
-
-@import url(pygment_trac.css);
-
-/*******************************************************************************
-MeyerWeb Reset
-*******************************************************************************/
-
-html, body, div, span, applet, object, iframe,
-h1, h2, h3, h4, h5, h6, p, blockquote, pre,
-a, abbr, acronym, address, big, cite, code,
-del, dfn, em, img, ins, kbd, q, s, samp,
-small, strike, strong, sub, sup, tt, var,
-b, u, i, center,
-dl, dt, dd, ol, ul, li,
-fieldset, form, label, legend,
-table, caption, tbody, tfoot, thead, tr, th, td,
-article, aside, canvas, details, embed,
-figure, figcaption, footer, header, hgroup,
-menu, nav, output, ruby, section, summary,
-time, mark, audio, video {
- margin: 0;
- padding: 0;
- border: 0;
- font: inherit;
- vertical-align: baseline;
-}
-
-/* HTML5 display-role reset for older browsers */
-article, aside, details, figcaption, figure,
-footer, header, hgroup, menu, nav, section {
- display: block;
-}
-
-ol, ul {
- list-style: none;
-}
-
-blockquote, q {
-}
-
-table {
- border-collapse: collapse;
- border-spacing: 0;
-}
-
-a:focus {
- outline: none;
-}
-
-/*******************************************************************************
-Theme Styles
-*******************************************************************************/
-
-body {
- box-sizing: border-box;
- color:#373737;
- background: #212121;
- font-size: 16px;
- font-family: 'Myriad Pro', Calibri, Helvetica, Arial, sans-serif;
- line-height: 1.5;
- -webkit-font-smoothing: antialiased;
-}
-
-h1, h2, h3, h4, h5, h6 {
- margin: 10px 0;
- font-weight: 700;
- color:#222222;
- font-family: 'Lucida Grande', 'Calibri', Helvetica, Arial, sans-serif;
- letter-spacing: -1px;
-}
-
-h1 {
- font-size: 36px;
- font-weight: 700;
-}
-
-h2 {
- padding-bottom: 10px;
- font-size: 32px;
- background: url('../images/bg_hr.png') repeat-x bottom;
-}
-
-h3 {
- font-size: 24px;
-}
-
-h4 {
- font-size: 21px;
-}
-
-h5 {
- font-size: 18px;
-}
-
-h6 {
- font-size: 16px;
-}
-
-p {
- margin: 10px 0 15px 0;
-}
-
-footer p {
- color: #f2f2f2;
-}
-
-a {
- text-decoration: none;
- color: #007edf;
- text-shadow: none;
-
- transition: color 0.5s ease;
- transition: text-shadow 0.5s ease;
- -moz-transition: color 0.5s ease;
- -moz-transition: text-shadow 0.5s ease;
- -o-transition: color 0.5s ease;
- -o-transition: text-shadow 0.5s ease;
- -ms-transition: color 0.5s ease;
- -ms-transition: text-shadow 0.5s ease;
-}
-
-#main_content a:hover {
- color: #0069ba;
- text-shadow: #0090ff 0px 0px 2px;
-}
-
-footer a:hover {
- color: #43adff;
- text-shadow: #0090ff 0px 0px 2px;
-}
-
-em {
- font-style: italic;
-}
-
-strong {
- font-weight: bold;
-}
-
-img {
- position: relative;
- margin: 0 auto;
- max-width: 739px;
- padding: 5px;
- margin: 10px 0 10px 0;
- border: 1px solid #ebebeb;
-
- box-shadow: 0 0 5px #ebebeb;
- -webkit-box-shadow: 0 0 5px #ebebeb;
- -moz-box-shadow: 0 0 5px #ebebeb;
- -o-box-shadow: 0 0 5px #ebebeb;
- -ms-box-shadow: 0 0 5px #ebebeb;
-}
-
-pre, code {
- width: 100%;
- color: #222;
- background-color: #fff;
-
- font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace;
- font-size: 14px;
-
- border-radius: 2px;
- -moz-border-radius: 2px;
- -webkit-border-radius: 2px;
-
-
-
-}
-
-pre {
- width: 100%;
- padding: 10px;
- box-shadow: 0 0 10px rgba(0,0,0,.1);
- overflow: auto;
-}
-
-code {
- padding: 3px;
- margin: 0 3px;
- box-shadow: 0 0 10px rgba(0,0,0,.1);
-}
-
-pre code {
- display: block;
- box-shadow: none;
-}
-
-blockquote {
- color: #666;
- margin-bottom: 20px;
- padding: 0 0 0 20px;
- border-left: 3px solid #bbb;
-}
-
-ul, ol, dl {
- margin-bottom: 15px
-}
-
-ul li {
- list-style: inside;
- padding-left: 20px;
-}
-
-ol li {
- list-style: decimal inside;
- padding-left: 20px;
-}
-
-dl dt {
- font-weight: bold;
-}
-
-dl dd {
- padding-left: 20px;
- font-style: italic;
-}
-
-dl p {
- padding-left: 20px;
- font-style: italic;
-}
-
-hr {
- height: 1px;
- margin-bottom: 5px;
- border: none;
- background: url('../images/bg_hr.png') repeat-x center;
-}
-
-table {
- border: 1px solid #373737;
- margin-bottom: 20px;
- text-align: left;
- }
-
-th {
- font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif;
- padding: 10px;
- background: #373737;
- color: #fff;
- }
-
-td {
- padding: 10px;
- border: 1px solid #373737;
- }
-
-form {
- background: #f2f2f2;
- padding: 20px;
-}
-
-img {
- width: 100%;
- max-width: 100%;
-}
-
-/*******************************************************************************
-Full-Width Styles
-*******************************************************************************/
-
-.outer {
- width: 100%;
-}
-
-.inner {
- position: relative;
- max-width: 640px;
- padding: 20px 10px;
- margin: 0 auto;
-}
-
-#forkme_banner {
- display: block;
- position: absolute;
- top:0;
- right: 10px;
- z-index: 10;
- padding: 10px 50px 10px 10px;
- color: #fff;
- background: url('../images/blacktocat.png') #0090ff no-repeat 95% 50%;
- font-weight: 700;
- box-shadow: 0 0 10px rgba(0,0,0,.5);
- border-bottom-left-radius: 2px;
- border-bottom-right-radius: 2px;
-}
-
-#header_wrap {
- background: #212121;
- background: -moz-linear-gradient(top, #373737, #212121);
- background: -webkit-linear-gradient(top, #373737, #212121);
- background: -ms-linear-gradient(top, #373737, #212121);
- background: -o-linear-gradient(top, #373737, #212121);
- background: linear-gradient(top, #373737, #212121);
-}
-
-#header_wrap .inner {
- padding: 50px 10px 30px 10px;
-}
-
-#project_title {
- margin: 0;
- color: #fff;
- font-size: 42px;
- font-weight: 700;
- text-shadow: #111 0px 0px 10px;
-}
-
-#project_tagline {
- color: #fff;
- font-size: 24px;
- font-weight: 300;
- background: none;
- text-shadow: #111 0px 0px 10px;
-}
-
-#downloads {
- position: absolute;
- width: 210px;
- z-index: 10;
- bottom: -40px;
- right: 0;
- height: 70px;
- background: url('../images/icon_download.png') no-repeat 0% 90%;
-}
-
-.zip_download_link {
- display: block;
- float: right;
- width: 90px;
- height:70px;
- text-indent: -5000px;
- overflow: hidden;
- background: url(../images/sprite_download.png) no-repeat bottom left;
-}
-
-.tar_download_link {
- display: block;
- float: right;
- width: 90px;
- height:70px;
- text-indent: -5000px;
- overflow: hidden;
- background: url(../images/sprite_download.png) no-repeat bottom right;
- margin-left: 10px;
-}
-
-.zip_download_link:hover {
- background: url(../images/sprite_download.png) no-repeat top left;
-}
-
-.tar_download_link:hover {
- background: url(../images/sprite_download.png) no-repeat top right;
-}
-
-#main_content_wrap {
- background: #f2f2f2;
- border-top: 1px solid #111;
- border-bottom: 1px solid #111;
-}
-
-#main_content {
- padding-top: 40px;
-}
-
-#footer_wrap {
- background: #212121;
-}
-
-
-
-/*******************************************************************************
-Small Device Styles
-*******************************************************************************/
-
-@media screen and (max-width: 480px) {
- body {
- font-size:14px;
- }
-
- #downloads {
- display: none;
- }
-
- .inner {
- min-width: 320px;
- max-width: 480px;
- }
-
- #project_title {
- font-size: 32px;
- }
-
- h1 {
- font-size: 28px;
- }
-
- h2 {
- font-size: 24px;
- }
-
- h3 {
- font-size: 21px;
- }
-
- h4 {
- font-size: 18px;
- }
-
- h5 {
- font-size: 14px;
- }
-
- h6 {
- font-size: 12px;
- }
-
- code, pre {
- min-width: 320px;
- max-width: 480px;
- font-size: 11px;
- }
-
-}