📄 collation_needed.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Collation Needed Callbacks</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>Collation Needed Callbacks</h2><blockquote><pre>int sqlite3_collation_needed( sqlite3*, void*, void(*)(void*,sqlite3*,int eTextRep,const char*));int sqlite3_collation_needed16( sqlite3*, void*, void(*)(void*,sqlite3*,int eTextRep,const void*));</pre></blockquote><p>To avoid having to register all collation sequences before a databasecan be used, a single callback function may be registered with thedatabase handle to be called whenever an undefined collation sequence isrequired.</p><p>If the function is registered using the sqlite3_collation_needed() API,then it is passed the names of undefined collation sequences as stringsencoded in UTF-8. If sqlite3_collation_needed16() is used, the namesare passed as UTF-16 in machine native byte order. A call to eitherfunction replaces any existing callback.</p><p>When the callback is invoked, the first argument passed is a copyof the second argument to sqlite3_collation_needed() orsqlite3_collation_needed16(). The second argument is the databasehandle. The third argument is one of <a href="../c3ref/c_any.html">SQLITE_UTF8</a>,<a href="../c3ref/c_any.html">SQLITE_UTF16BE</a>, or <a href="../c3ref/c_any.html">SQLITE_UTF16LE</a>, indicating the mostdesirable form of the collation sequence function required.The fourth parameter is the name of therequired collation sequence.</p><p>The callback function should register the desired collation using<a href="../c3ref/create_collation.html">sqlite3_create_collation()</a>, <a href="../c3ref/create_collation.html">sqlite3_create_collation16()</a>, or<a href="../c3ref/create_collation.html">sqlite3_create_collation_v2()</a>.</p><p><h3>Invariants:</h3><table border="0" cellpadding="5" cellspacing="0"><tr><td valign="top">F16702</td> <td valign="top">A successful call to <a href="../c3ref/collation_needed.html">sqlite3_collation_needed(D,P,F)</a>or <a href="../c3ref/collation_needed.html">sqlite3_collation_needed16(D,P,F)</a> causesthe <a href="../c3ref/sqlite3.html">database connection</a> D to invoke callback F with firstparameter P whenever it needs a comparison function for acollating sequence that it does not know about.</td></tr><tr><td valign="top">F16704</td> <td valign="top">Each successful call to <a href="../c3ref/collation_needed.html">sqlite3_collation_needed()</a> or<a href="../c3ref/collation_needed.html">sqlite3_collation_needed16()</a> overrides the callback registeredon the same <a href="../c3ref/sqlite3.html">database connection</a> by prior calls to eitherinterface.</td></tr><tr><td valign="top">F16706</td> <td valign="top">The name of the requested collating function passed in the4th parameter to the callback is in UTF-8 if the callbackwas registered using <a href="../c3ref/collation_needed.html">sqlite3_collation_needed()</a> andis in UTF-16 native byte order if the callback wasregistered using <a href="../c3ref/collation_needed.html">sqlite3_collation_needed16()</a>.</td></tr></table></p><p>See also lists of <a href="objlist.html">Objects</a>, <a href="constlist.html">Constants</a>, and <a href="funclist.html">Functions</a>.</p><hr><small><i>This page last modified 2008/05/12 13:08:44 UTC</i></small></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -