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

📄 compile.html

📁 sqlite的帮助文档
💻 HTML
📖 第 1 页 / 共 4 页
字号:
  is disabled.</p></blockquote><a name="disable_dirsync"></a><p><b>SQLITE_DISABLE_DIRSYNC</b></p><blockquote><p>  If this C-preprocessor macro is defined, directory syncs  are disabled.  SQLite typically attempts to sync the parent  directory when a file is deleted to ensure the directory  entries are updated immediately on disk.</p></blockquote><a name="omitfeatures"></a><h2>1.6 Options To Omit Features</h2><p>The following options can used to reduce the size of the compiledlibrary by omitting optional features. This is probably only usefulin embedded systems where space is especially tight, as even with allfeatures included the SQLite library is relatively small. Don't forgetto tell your compiler to optimize for binary size! (the -Os option ifusing GCC).  Telling your compiler to optimize for size usually hasa much larger impact on library footprint than employing any of thesecompile-time options.  You should also verify that <a href="#debugoptions">debugging options</a> are disabled.</p><p>The macros in this section do not require values. The following compilation switches all have the same effect:<br>-DSQLITE_OMIT_ALTERTABLE<br>-DSQLITE_OMIT_ALTERTABLE=1<br>-DSQLITE_OMIT_ALTERTABLE=0</p><p>If any of these options are defined, then the same set of SQLITE_OMIT_XXXoptions must also be defined when using the 'lemon' tool to generate the parse.cfile and when compiling the 'mkkeywordhash' tool which generates the keywordhash.h file.Because of this, these options may only be used when the library is builtfrom the full source, not from the <a href="amalgamation.html">amalgamation</a> or from the collection ofpre-packaged C files provided for non-Unix like platforms on the website.Any SQLITE_OMIT_XXX options which can be used directly with the <a href="amalgamation.html">amalgamation</a> are listed below, however, the warnings in the following paragraph should be noted.</p><p><table>  <tr>    <td>      <ul>        <li> <a href="compile.html#omit_authorization">SQLITE_OMIT_AUTHORIZATION</a> </li>        <li> <a href="compile.html#omit_autoinit">SQLITE_OMIT_AUTOINIT</a> </li>        <li> <a href="compile.html#omit_between_optimization">SQLITE_OMIT_BETWEEN_OPTIMIZATION</a> </li>        <li> <a href="compile.html#omit_blob_literal">SQLITE_OMIT_BLOB_LITERAL</a> </li>        <li> <a href="compile.html#omit_builtin_test">SQLITE_OMIT_BUILTIN_TEST</a> </li>        <li> <a href="compile.html#omit_check">SQLITE_OMIT_CHECK</a> </li>        <li> <a href="compile.html#omit_complete">SQLITE_OMIT_COMPLETE</a> </li>        <li> <a href="compile.html#omit_datetime_funcs">SQLITE_OMIT_DATETIME_FUNCS</a> </li>        <li> <a href="compile.html#omit_decltype">SQLITE_OMIT_DECLTYPE</a> </li>        <li> <a href="compile.html#omit_deprecated">SQLITE_OMIT_DEPRECATED</a> </li>        <li> <a href="compile.html#omit_diskio">SQLITE_OMIT_DISKIO</a> </li>        <li> <a href="compile.html#omit_flag_pragmas">SQLITE_OMIT_FLAG_PRAGMAS</a> </li>        <li> <a href="compile.html#omit_floating_point">SQLITE_OMIT_FLOATING_POINT</a> </li>        <li> <a href="compile.html#omit_get_table">SQLITE_OMIT_GET_TABLE</a> </li>        <li> <a href="compile.html#omit_incrblob">SQLITE_OMIT_INCRBLOB</a> </li>        <li> <a href="compile.html#omit_integrity_check">SQLITE_OMIT_INTEGRITY_CHECK</a> </li>        <li> <a href="compile.html#omit_like_optimization">SQLITE_OMIT_LIKE_OPTIMIZATION</a> </li>      </ul>    </td>    <td>      <ul>        <li> <a href="compile.html#omit_load_extension">SQLITE_OMIT_LOAD_EXTENSION</a> </li>        <li> <a href="compile.html#omit_localtime">SQLITE_OMIT_LOCALTIME</a> </li>        <li> <a href="compile.html#omit_memorydb">SQLITE_OMIT_MEMORYDB</a> </li>        <li> <a href="compile.html#omit_or_optimization">SQLITE_OMIT_OR_OPTIMIZATION</a> </li>        <li> <a href="compile.html#omit_pager_pragmas">SQLITE_OMIT_PAGER_PRAGMAS</a> </li>        <li> <a href="compile.html#omit_progress_callback">SQLITE_OMIT_PROGRESS_CALLBACK</a> </li>        <li> <a href="compile.html#omit_quickbalance">SQLITE_OMIT_QUICKBALANCE</a> </li>        <li> <a href="compile.html#omit_schema_pragmas">SQLITE_OMIT_SCHEMA_PRAGMAS</a> </li>        <li> <a href="compile.html#omit_schema_version_pragmas">SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS</a> </li>        <li> <a href="compile.html#omit_shared_cache">SQLITE_OMIT_SHARED_CACHE</a> </li>        <li> <a href="compile.html#omit_subquery">SQLITE_OMIT_SUBQUERY</a> </li>        <li> <a href="compile.html#omit_tcl_variable">SQLITE_OMIT_TCL_VARIABLE</a> </li>        <li> <a href="compile.html#omit_trace">SQLITE_OMIT_TRACE</a> </li>        <li> <a href="compile.html#omit_truncate_optimization">SQLITE_OMIT_TRUNCATE_OPTIMIZATION</a> </li>        <li> <a href="compile.html#omit_utf16">SQLITE_OMIT_UTF16</a> </li>        <li> <a href="compile.html#omit_wsd">SQLITE_OMIT_WSD</a> </li>        <li> <a href="compile.html#omit_xfer_opt">SQLITE_OMIT_XFER_OPT</a> </li>      </ul>    </td>  </tr></table></p><p>All of the SQLITE_OMIT_XXX options are considered unsupported.  Any of theseoptions may be removed from the code in a future releaseand without warning.  For any particular release, some of theseoptions may cause compile-time or run-time failures, particularlywhen used in combination with other options.</p><a name="omit_altertable"></a><p><b>SQLITE_OMIT_ALTERTABLE</b></p><blockquote><p>  When this option is defined, the   <a href="lang_altertable.html">ALTER TABLE</a> command is not included in the   library. Executing an <a href="lang_altertable.html">ALTER TABLE</a> statement causes a parse error.</p></blockquote><a name="omit_analyze"></a><p><b>SQLITE_OMIT_ANALYZE</b></p><blockquote><p>  When this option is defined, the <a href="lang_analyze.html">ANALYZE</a> command is omitted from  the build.</p></blockquote><a name="omit_attach"></a><p><b>SQLITE_OMIT_ATTACH</b></p><blockquote><p>  When this option is defined, the <a href="lang_attach.html">ATTACH</a> and <a href="lang_detach.html">DETACH</a> commands are  omitted from the build.</p></blockquote><a name="omit_authorization"></a><p><b>SQLITE_OMIT_AUTHORIZATION</b></p><blockquote><p>  Defining this option omits the authorization callback feature from the  library. The <a href="c3ref/set_authorizer.html">sqlite3_set_authorizer()</a> API function is not present  in the library.</p></blockquote><a name="omit_autoincrement"></a><p><b>SQLITE_OMIT_AUTOINCREMENT</b></p><blockquote><p>  This option is used to omit the   <a href="autoinc.html">AUTOINCREMENT</a> functionality. When this   is macro is defined, columns declared as   "<a href="lang_createtable.html#rowid">INTEGER PRIMARY KEY</a> AUTOINCREMENT"  behave in the same way as columns declared as "<a href="lang_createtable.html#rowid">INTEGER PRIMARY KEY</a>" when a   NULL is inserted. The sqlite_sequence system table is neither created, nor  respected if it already exists.</p></blockquote><a name="omit_autoinit"></a><p><b>SQLITE_OMIT_AUTOINIT</b></p><blockquote><p>  For backwards compatibility with older versions of SQLite that lack  the <a href="c3ref/initialize.html">sqlite3_initialize()</a> interface, the <a href="c3ref/initialize.html">sqlite3_initialize()</a> interface  is called automatically upon entry to certain key interfaces such as  <a href="c3ref/open.html">sqlite3_open()</a>, <a href="c3ref/vfs_find.html">sqlite3_vfs_register()</a>, and <a href="c3ref/mprintf.html">sqlite3_mprintf()</a>.  The overhead of invoking <a href="c3ref/initialize.html">sqlite3_initialize()</a> automatically in this  way may be omitted by building SQLite with the SQLITE_OMIT_AUTOINIT  C-preprocessor macro.  When built using SQLITE_OMIT_AUTOINIT, SQLite  will not automatically initialize itself and the application is required  to invoke <a href="c3ref/initialize.html">sqlite3_initialize()</a> directly prior to beginning use of the  SQLite library.</p></blockquote><a name="omit_autovacuum"></a><p><b>SQLITE_OMIT_AUTOVACUUM</b></p><blockquote><p>  If this option is defined, the library cannot create or write to   databases that support <a href="pragma.html#pragma_auto_vacuum">auto_vacuum</a>.  Executing a <a href="pragma.html#pragma_auto_vacuum">PRAGMA auto_vacuum</a> statement is not an error  (since unknown PRAGMAs are silently ignored), but does not return a value  or modify the auto-vacuum flag in the database file. If a database that  supports auto-vacuum is opened by a library compiled with this option, it  is automatically opened in read-only mode.</p></blockquote><a name="omit_between_optimization"></a><p><b>SQLITE_OMIT_BETWEEN_OPTIMIZATION</b></p><blockquote><p>  This option disables the use of indices with WHERE clause terms  that employ the BETWEEN operator.</p></blockquote><a name="omit_blob_literal"></a><p><b>SQLITE_OMIT_BLOB_LITERAL</b></p><blockquote><p>  When this option is defined, it is not possible to specify a blob in  an SQL statement using the X'ABCD' syntax.</p></blockquote><a name="omit_builtin_test"></a><p><b>SQLITE_OMIT_BUILTIN_TEST</b></p><blockquote><p>  A standard SQLite build includes a small amount of logic controlled  by the <a href="c3ref/test_control.html">sqlite3_test_control()</a> interface that is used to exercise  parts of the SQLite core that are difficult to control and measure using  the standard API.  This option omits that built-in test logic.</p></blockquote><a name="omit_cast"></a><p><b>SQLITE_OMIT_CAST</b></p><blockquote><p>  This option causes SQLite to omit support for the CAST operator.</p></blockquote><a name="omit_check"></a><p><b>SQLITE_OMIT_CHECK</b></p><blockquote><p>  This option causes SQLite to omit support for CHECK constraints.  The parser will still accept CHECK constraints in SQL statements,  they will just not be enforced.</p></blockquote><a name="omit_complete"></a><p><b>SQLITE_OMIT_COMPLETE</b></p><blockquote><p>  This option causes the <a href="c3ref/complete.html">sqlite3_complete()</a> and <a href="c3ref/complete.html">sqlite3_complete16()</a>  interfaces to be omitted.</p></blockquote><a name="omit_compound_select"></a><p><b>SQLITE_OMIT_COMPOUND_SELECT</b></p><blockquote><p>  This option is used to omit the compound <a href="lang_select.html">SELECT</a> functionality.   <a href="lang_select.html">SELECT</a> statements that use the   UNION, UNION ALL, INTERSECT or EXCEPT compound SELECT operators will   cause a parse error.</p></blockquote><a name="omit_conflict_clause"></a><p><b>SQLITE_OMIT_CONFLICT_CLAUSE</b></p><blockquote><p>  In the future, this option will be used to omit the   <a href="lang_conflict.html">ON CONFLICT</a> clause from the library.</p></blockquote><a name="omit_datetime_funcs"></a><p><b>SQLITE_OMIT_DATETIME_FUNCS</b></p><blockquote><p>  If this option is defined, SQLite's built-in date and time manipulation  functions are omitted. Specifically, the SQL functions julianday(), date(),  time(), datetime() and strftime() are not available. The default column  values CURRENT_TIME, CURRENT_DATE and CURRENT_DATETIME are still available.</p></blockquote><a name="omit_decltype"></a><p><b>SQLITE_OMIT_DECLTYPE</b></p><blockquote><p>  This option causes SQLite to omit support for the  <a href="c3ref/column_decltype.html">sqlite3_column_decltype()</a> and <a href="c3ref/column_decltype.html">sqlite3_column_decltype16()</a>  interfaces.</p></blockquote><a name="omit_deprecated"></a><p><b>SQLITE_OMIT_DEPRECATED</b></p><blockquote><p>  This option causes SQLite to omit support for interfaces  marked as deprecated.  This includes   <a href="c3ref/aggregate_count.html">sqlite3_aggregate_count()</a>,  <a href="c3ref/aggregate_count.html">sqlite3_expired()</a>,  <a href="c3ref/aggregate_count.html">sqlite3_transfer_bindings()</a>,  <a href="c3ref/aggregate_count.html">sqlite3_global_recover()</a>,  <a href="c3ref/aggregate_count.html">sqlite3_thread_cleanup()</a> and  <a href="c3ref/aggregate_count.html">sqlite3_memory_alarm()</a> interfaces.</p></blockquote><a name="omit_diskio"></a><p><b>SQLITE_OMIT_DISKIO</b></p><blockquote><p>  This option omits all support for writing to the disk and forces  databases to exist in memory only.</p></blockquote><a name="omit_explain"></a><p><b>SQLITE_OMIT_EXPLAIN</b></p><blockquote><p>  Defining this option causes the <a href="lang_explain.html">EXPLAIN</a> command to be omitted from the  library. Attempting to execute an <a href="lang_explain.html">EXPLAIN</a> statement will cause a parse  error.

⌨️ 快捷键说明

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