⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 column_blob.html

📁 嵌入式数据库sqlite 3.5.9的文档
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Results Values From A Query</title><style type="text/css">body {    margin: auto;    font-family: "Verdana" "sans-serif";    padding: 8px 1%;}a { color: #45735f }a:visited { color: #734559 }.logo { position:absolute; margin:3px; }.tagline {  float:right;  text-align:right;  font-style:italic;  width:240px;  margin:12px;  margin-top:58px;}.toolbar {  font-variant: small-caps;  text-align: center;  line-height: 1.6em;  margin: 0;  padding:1px 8px;}.toolbar a { color: white; text-decoration: none; padding: 6px 12px; }.toolbar a:visited { color: white; }.toolbar a:hover { color: #80a796; background: white; }.content    { margin: 5%; }.content dt { font-weight:bold; }.content dd { margin-bottom: 25px; margin-left:20%; }.content ul { padding:0px; padding-left: 15px; margin:0px; }/* rounded corners */.se  { background: url(../images/se.png) 100% 100% no-repeat #80a796}.sw  { background: url(../images/sw.png) 0% 100% no-repeat }.ne  { background: url(../images/ne.png) 100% 0% no-repeat }.nw  { background: url(../images/nw.png) 0% 0% no-repeat }</style><meta http-equiv="content-type" content="text/html; charset=UTF-8">  </head><body><div><!-- container div to satisfy validator --><a href="../index.html"><img class="logo" src="../images/SQLite.gif" alt="SQLite Logo" border="0"></a><div><!-- IE hack to prevent disappearing logo--></div><div class="tagline">Small. Fast. Reliable.<br>Choose any three.</div><table width=100% style="clear:both"><tr><td>  <div class="se"><div class="sw"><div class="ne"><div class="nw">  <div class="toolbar">    <a href="../about.html">About</a>    <a href="../sitemap.html">Sitemap</a>    <a href="../docs.html">Documentation</a>    <a href="../download.html">Download</a>    <a href="../copyright.html">License</a>    <a href="../news.html">News</a>    <a href="http://www.sqlite.org/cvstrac/index">Developers</a>    <a href="../support.html">Support</a>  </div></div></div></div></div></td></tr></table>  <a href="intro.html"><h2>SQLite C Interface</h2></a><h2>Results Values From A Query</h2><blockquote><pre>const void *sqlite3_column_blob(sqlite3_stmt*, int iCol);int sqlite3_column_bytes(sqlite3_stmt*, int iCol);int sqlite3_column_bytes16(sqlite3_stmt*, int iCol);double sqlite3_column_double(sqlite3_stmt*, int iCol);int sqlite3_column_int(sqlite3_stmt*, int iCol);sqlite3_int64 sqlite3_column_int64(sqlite3_stmt*, int iCol);const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol);const void *sqlite3_column_text16(sqlite3_stmt*, int iCol);int sqlite3_column_type(sqlite3_stmt*, int iCol);sqlite3_value *sqlite3_column_value(sqlite3_stmt*, int iCol);</pre></blockquote><p>These routines form the "result set query" interface.</p><p>These routines return information abouta single column of the current result row of a query.  In everycase the first argument is a pointer to the<a href="../c3ref/stmt.html">prepared statement</a> that is beingevaluated (the <a href="../c3ref/stmt.html">sqlite3_stmt*</a> that was returned from<a href="../c3ref/prepare.html">sqlite3_prepare_v2()</a> or one of its variants) andthe second argument is the index of the column for which informationshould be returned.  The left-most column of the result sethas an index of 0.</p><p>If the SQL statement is not currently point to a valid row, or if thethe column index is out of range, the result is undefined.These routines may only be called when the most recent call to<a href="../c3ref/step.html">sqlite3_step()</a> has returned <a href="../c3ref/c_abort.html">SQLITE_ROW</a> and neither<a href="../c3ref/reset.html">sqlite3_reset()</a> nor <a href="../c3ref/finalize.html">sqlite3_finalize()</a> has been call subsequently.If any of these routines are called after <a href="../c3ref/reset.html">sqlite3_reset()</a> or<a href="../c3ref/finalize.html">sqlite3_finalize()</a> or after <a href="../c3ref/step.html">sqlite3_step()</a> has returnedsomething other than <a href="../c3ref/c_abort.html">SQLITE_ROW</a>, the results are undefined.If <a href="../c3ref/step.html">sqlite3_step()</a> or <a href="../c3ref/reset.html">sqlite3_reset()</a> or <a href="../c3ref/finalize.html">sqlite3_finalize()</a>are called from a different thread while any of these routinesare pending, then the results are undefined.</p><p>The sqlite3_column_type() routine returns<a href="../c3ref/c_blob.html">datatype code</a> for the initial data typeof the result column.  The returned value is one of <a href="../c3ref/c_blob.html">SQLITE_INTEGER</a>,<a href="../c3ref/c_blob.html">SQLITE_FLOAT</a>, <a href="../c3ref/c_blob.html">SQLITE_TEXT</a>, <a href="../c3ref/c_blob.html">SQLITE_BLOB</a>, or <a href="../c3ref/c_blob.html">SQLITE_NULL</a>.  The valuereturned by sqlite3_column_type() is only meaningful if no typeconversions have occurred as described below.  After a type conversion,the value returned by sqlite3_column_type() is undefined.  Futureversions of SQLite may change the behavior of sqlite3_column_type()following a type conversion.</p><p>If the result is a BLOB or UTF-8 string then the sqlite3_column_bytes()routine returns the number of bytes in that BLOB or string.If the result is a UTF-16 string, then sqlite3_column_bytes() convertsthe string to UTF-8 and then returns the number of bytes.If the result is a numeric value then sqlite3_column_bytes() uses<a href="../c3ref/mprintf.html">sqlite3_snprintf()</a> to convert that value to a UTF-8 string and returnsthe number of bytes in that string.The value returned does not include the zero terminator at the endof the string.  For clarity: the value returned is the number ofbytes in the string, not the number of characters.</p><p>Strings returned by sqlite3_column_text() and sqlite3_column_text16(),even empty strings, are always zero terminated.  The returnvalue from sqlite3_column_blob() for a zero-length blob is an arbitrarypointer, possibly even a NULL pointer.</p><p>The sqlite3_column_bytes16() routine is similar to sqlite3_column_bytes()but leaves the result in UTF-16 in native byte order instead of UTF-8.The zero terminator is not included in this count.</p><p>The object returned by <a href="../c3ref/column_blob.html">sqlite3_column_value()</a> is an<a href="../c3ref/value.html">unprotected sqlite3_value</a> object.  An unprotected sqlite3_value objectmay only be used with <a href="../c3ref/bind_blob.html">sqlite3_bind_value()</a> and <a href="../c3ref/result_blob.html">sqlite3_result_value()</a>.If the <a href="../c3ref/value.html">unprotected sqlite3_value</a> object returned by<a href="../c3ref/column_blob.html">sqlite3_column_value()</a> is used in any other way, including callsto routines like<a href="../c3ref/value_blob.html">sqlite3_value_int()</a>, <a href="../c3ref/value_blob.html">sqlite3_value_text()</a>, or <a href="../c3ref/value_blob.html">sqlite3_value_bytes()</a>,then the behavior is undefined.</p><p>These routines attempt to convert the value where appropriate.  Forexample, if the internal representation is FLOAT and a text resultis requested, <a href="../c3ref/mprintf.html">sqlite3_snprintf()</a> is used internally to do the conversionautomatically.  The following table details the conversions thatare applied:</p><p><blockquote><table border="1"><tr><th> Internal<br>Type <th> Requested<br>Type <th>  Conversion</p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -