1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
3
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
4
<title>Extended Result Codes</title>
5
<style type="text/css">
8
font-family: Verdana, sans-serif;
13
a:visited { color: #734559 }
15
.logo { position:absolute; margin:3px; }
31
.toolbar a { color: white; text-decoration: none; padding: 6px 12px; }
32
.toolbar a:visited { color: white; }
33
.toolbar a:hover { color: #044a64; background: white; }
35
.content { margin: 5%; }
36
.content dt { font-weight:bold; }
37
.content dd { margin-bottom: 25px; margin-left:20%; }
38
.content ul { padding:0px; padding-left: 15px; margin:0px; }
41
.se { background: url(../images/se.gif) 100% 100% no-repeat #044a64}
42
.sw { background: url(../images/sw.gif) 0% 100% no-repeat }
43
.ne { background: url(../images/ne.gif) 100% 0% no-repeat }
44
.nw { background: url(../images/nw.gif) 0% 0% no-repeat }
46
/* Things for "fancyformat" documents start here. */
47
.fancy img+p {font-style:italic}
48
.fancy .codeblock i { color: darkblue; }
49
.fancy h1,.fancy h2,.fancy h3,.fancy h4 {font-weight:normal;color:#044a64}
50
.fancy h2 { margin-left: 10px }
51
.fancy h3 { margin-left: 20px }
52
.fancy h4 { margin-left: 30px }
53
.fancy th {white-space:nowrap;text-align:left;border-bottom:solid 1px #444}
54
.fancy th, .fancy td {padding: 0.2em 1ex; vertical-align:top}
55
.fancy #toc a { color: darkblue ; text-decoration: none }
56
.fancy .todo { color: #AA3333 ; font-style : italic }
57
.fancy .todo:before { content: 'TODO:' }
58
.fancy p.todo { border: solid #AA3333 1px; padding: 1ex }
59
.fancy img { display:block; }
60
.fancy :link:hover, .fancy :visited:hover { background: wheat }
61
.fancy p,.fancy ul,.fancy ol { margin: 1em 5ex }
62
.fancy li p { margin: 1em 0 }
63
/* End of "fancyformat" specific rules. */
69
<div><!-- container div to satisfy validator -->
71
<a href="../index.html">
72
<img class="logo" src="../images/sqlite370_banner.gif" alt="SQLite Logo"
74
<div><!-- IE hack to prevent disappearing logo--></div>
75
<div class="tagline">Small. Fast. Reliable.<br>Choose any three.</div>
77
<table width=100% style="clear:both"><tr><td>
78
<div class="se"><div class="sw"><div class="ne"><div class="nw">
79
<table width=100% style="padding:0;margin:0;cell-spacing:0"><tr>
82
<a href="../about.html">About</a>
83
<a href="../sitemap.html">Sitemap</a>
84
<a href="../docs.html">Documentation</a>
85
<a href="../download.html">Download</a>
86
<a href="../copyright.html">License</a>
87
<a href="../news.html">News</a>
88
<a href="../support.html">Support</a>
91
gMsg = "Search SQLite Docs..."
92
function entersearch() {
93
var q = document.getElementById("q");
94
if( q.value == gMsg ) { q.value = "" }
95
q.style.color = "black"
96
q.style.fontStyle = "normal"
98
function leavesearch() {
99
var q = document.getElementById("q");
100
if( q.value == "" ) {
102
q.style.color = "#044a64"
103
q.style.fontStyle = "italic"
108
<div style="padding:0 1em 0px 0;white-space:nowrap">
109
<form name=f method="GET" action="http://www.sqlite.org/search">
110
<input id=q name=q type=text
111
onfocus="entersearch()" onblur="leavesearch()" style="width:24ex;padding:1px 1ex; border:solid white 1px; font-size:0.9em ; font-style:italic;color:#044a64;" value="Search SQLite Docs...">
112
<input type=submit value="Go" style="border:solid white 1px;background-color:#044a64;color:white;font-size:0.9em;padding:0 1ex">
116
</div></div></div></div>
118
<div class=startsearch></div>
120
<a href="intro.html"><h2>SQLite C Interface</h2></a><h2>Extended Result Codes</h2><blockquote><pre>#define SQLITE_IOERR_READ (SQLITE_IOERR | (1<<8))
121
#define SQLITE_IOERR_SHORT_READ (SQLITE_IOERR | (2<<8))
122
#define SQLITE_IOERR_WRITE (SQLITE_IOERR | (3<<8))
123
#define SQLITE_IOERR_FSYNC (SQLITE_IOERR | (4<<8))
124
#define SQLITE_IOERR_DIR_FSYNC (SQLITE_IOERR | (5<<8))
125
#define SQLITE_IOERR_TRUNCATE (SQLITE_IOERR | (6<<8))
126
#define SQLITE_IOERR_FSTAT (SQLITE_IOERR | (7<<8))
127
#define SQLITE_IOERR_UNLOCK (SQLITE_IOERR | (8<<8))
128
#define SQLITE_IOERR_RDLOCK (SQLITE_IOERR | (9<<8))
129
#define SQLITE_IOERR_DELETE (SQLITE_IOERR | (10<<8))
130
#define SQLITE_IOERR_BLOCKED (SQLITE_IOERR | (11<<8))
131
#define SQLITE_IOERR_NOMEM (SQLITE_IOERR | (12<<8))
132
#define SQLITE_IOERR_ACCESS (SQLITE_IOERR | (13<<8))
133
#define SQLITE_IOERR_CHECKRESERVEDLOCK (SQLITE_IOERR | (14<<8))
134
#define SQLITE_IOERR_LOCK (SQLITE_IOERR | (15<<8))
135
#define SQLITE_IOERR_CLOSE (SQLITE_IOERR | (16<<8))
136
#define SQLITE_IOERR_DIR_CLOSE (SQLITE_IOERR | (17<<8))
137
#define SQLITE_IOERR_SHMOPEN (SQLITE_IOERR | (18<<8))
138
#define SQLITE_IOERR_SHMSIZE (SQLITE_IOERR | (19<<8))
139
#define SQLITE_IOERR_SHMLOCK (SQLITE_IOERR | (20<<8))
140
#define SQLITE_IOERR_SHMMAP (SQLITE_IOERR | (21<<8))
141
#define SQLITE_IOERR_SEEK (SQLITE_IOERR | (22<<8))
142
#define SQLITE_LOCKED_SHAREDCACHE (SQLITE_LOCKED | (1<<8))
143
#define SQLITE_BUSY_RECOVERY (SQLITE_BUSY | (1<<8))
144
#define SQLITE_CANTOPEN_NOTEMPDIR (SQLITE_CANTOPEN | (1<<8))
145
#define SQLITE_CANTOPEN_ISDIR (SQLITE_CANTOPEN | (2<<8))
146
#define SQLITE_CORRUPT_VTAB (SQLITE_CORRUPT | (1<<8))
147
#define SQLITE_READONLY_RECOVERY (SQLITE_READONLY | (1<<8))
148
#define SQLITE_READONLY_CANTLOCK (SQLITE_READONLY | (2<<8))
149
#define SQLITE_ABORT_ROLLBACK (SQLITE_ABORT | (2<<8))
150
</pre></blockquote><p>
151
In its default configuration, SQLite API routines return one of 26 integer
152
<a href="../c3ref/c_abort.html">result codes</a>. However, experience has shown that many of
153
these result codes are too coarse-grained. They do not provide as
154
much information about problems as programmers might like. In an effort to
155
address this, newer versions of SQLite (version 3.3.8 and later) include
156
support for additional result codes that provide more detailed information
157
about errors. The extended result codes are enabled or disabled
158
on a per database connection basis using the
159
<a href="../c3ref/extended_result_codes.html">sqlite3_extended_result_codes()</a> API.</p>
161
<p>Some of the available extended result codes are listed here.
162
One may expect the number of extended result codes will be expand
163
over time. Software that uses extended result codes should expect
164
to see new result codes in future releases of SQLite.</p>
166
<p>The SQLITE_OK result code will never be extended. It will always
168
</p><p>See also lists of
169
<a href="objlist.html">Objects</a>,
170
<a href="constlist.html">Constants</a>, and
171
<a href="funclist.html">Functions</a>.</p>