IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> sqlite3 dbconfig说明 -> 正文阅读

[大数据]sqlite3 dbconfig说明

enable_fkey: 此选项用于启用或禁用?外键约束的实施。应该有两个额外的论点。第一个参数是一个整数,0 表示禁用 FK 强制,正数表示启用 FK 强制或负数表示 FK 强制不变。第二个参数是一个指向整数的指针,其中写入 0 或 1 以指示 FK 强制在此调用之后是关闭还是打开。第二个参数可能是一个 NULL 指针,在这种情况下,不会报告 FK 强制设置。

enable_trigger: 此选项用于启用或禁用触发器。应该有两个额外的论点。第一个参数是一个整数,0 表示禁用触发器,正数表示启用触发器,负数表示设置不变。第二个参数是一个指向整数的指针,其中写入 0 或 1 以指示在此调用之后触发器是禁用还是启用。第二个参数可能是 NULL 指针,在这种情况下不报告触发设置。最初此选项禁用所有触发器。但是,从 SQLite 版本 3.35.0 开始,即使关闭此选项,仍允许使用 TEMP 触发器。因此,换句话说,此选项现在仅禁用主数据库模式或 ATTACH 数据库模式中的触发器。

enable_view: 此选项用于启用或禁用

视图

fts3_tokenizer: 此选项用于启用或禁用?fts3_tokenizer()函数,该函数是?FTS3全文搜索引擎扩展的一部分。应该有两个额外的论点。第一个参数是一个整数,0 表示禁用 fts3_tokenizer(),正数表示启用 fts3_tokenizer(),负数表示设置不变。第二个参数是一个指向整数的指针,其中写入 0 或 1 以指示在此调用之后 fts3_tokenizer 是禁用还是启用。第二个参数可能是一个 NULL 指针,在这种情况下,新设置不会报告回来。

load_extension: 此选项用于独立于load_extension()?SQL 函数启用或禁用sqlite3_load_extension()?接口。sqlite3_enable_load_extension()?API启用或禁用 C-API?sqlite3_load_extension()和 SQL 函数load_extension().?应该有两个额外的论点。当此接口的第一个参数为 1 时,仅启用 C-API,而 SQL 功能保持禁用状态。如果此接口的第一个参数为 0,则 C-API 和 SQL 函数都被禁用。如果第一个参数是 -1,则不会更改 C-API 或 SQL 函数的状态。第二个参数是一个指向整数的指针,其中写入 0 或 1 以指示在此调用之后是禁用还是启用sqlite3_load_extension()接口。第二个参数可能是一个 NULL 指针,在这种情况下,新设置不会报告回来。

no_ckpt_on_close: 通常当 wal 模式下的数据库关闭或与数据库句柄分离时,SQLite 会检查这是否意味着现在根本没有与数据库的连接。如果是这样,它会在关闭连接之前执行检查点操作。此选项可用于覆盖此行为。传递给此操作的第一个参数是一个整数 - 正数表示禁用关闭检查点,或零(默认值)以启用它们,负数表示保持设置不变。第二个参数是一个指向整数的指针,其中写入 0 或 1 以指示关闭时检查点是否已禁用 - 如果未禁用,则为 0,如果已禁用,则为 1。

enable_qpsg:?激活或停用查询计划程序稳定性保证(QPSG)。当 QPSG 处于活动状态时,单个 SQL 查询语句将始终使用相同的算法,而不管绑定参数的值如何.?QPSG 禁用了一些查看绑定参数值的查询优化,这会使一些查询变慢。但 QPSG 具有行为更可预测的优势。激活 QPSG 后,SQLite 将始终在现场使用与实验室测试期间相同的查询计划。此设置的第一个参数是一个整数,0 表示禁用 QPSG,正数表示启用 QPSG,负数表示设置不变。第二个参数是一个指向整数的指针,其中写入 0 或 1 以指示 QPSG 在此调用之后是禁用还是启用。

trigger_eqp:?默认情况下,EXPLAIN QUERY PLAN 命令的输出不包括触发器程序执行的任何操作的输出。此选项用于设置或清除(默认)控制此行为的标志。传递给此操作的第一个参数是一个整数 - 正数以启用触发程序的输出,或零以禁用它,或负数以保持设置不变。第二个参数是一个指向整数的指针,其中写入 0 或 1 以指示输出触发触发器是否已禁用 - 如果未禁用,则为 0,如果已禁用,则为 1。

reset_database:?设置 SQLITE_DBCONFIG_RESET_DATABASE 标志,然后运行??VACUUM以将数据库重置为没有架构和内容的空数据库。以下过程甚至适用于严重损坏的数据库文件:

  1. 如果数据库连接是新打开的,请确保它已读取数据库模式,方法是准备然后丢弃对数据库的一些查询,或者调用 sqlite3_table_column_metadata(),忽略任何错误。仅当应用程序希望在重置后将数据库保持在 WAL 模式(如果在重置之前处于 WAL 模式)时,才需要此步骤。
  2. sqlite3_db_config(db, SQLITE_DBCONFIG_RESET_DATABASE, 1, 0);
  3. sqlite3_exec?(db, "?VACUUM?", 0, 0, 0);
  4. sqlite3_db_config(db, SQLITE_DBCONFIG_RESET_DATABASE, 0, 0);

由于重置数据库具有破坏性且不可逆转,因此该过程需要使用这个晦涩难懂的 API 和多个步骤来帮助确保它不会意外发生。

defensive:?激活或停用数据库连接的“防御”标志。启用防御标志后,允许普通 SQL 故意破坏数据库文件的语言功能将被禁用。禁用的功能包括但不限于以下内容:

writable_schema:?获取或设置是否能够修改系统表。

legacy_alter_table:?项激活或停用ALTER TABLE RENAME命令的旧行为。

dps_dml:?激活或停用DML 语句(即 DELETE、INSERT、SELECT 和 UPDATE 语句)的传统双引号字符串文字错误功能。此设置的默认值由-DSQLITE_DQS?编译时选项确定。

dps_ddl:?激活或停用DDL 语句(例如 CREATE TABLE 和 CREATE INDEX)的旧式双引号字符串文字错误功能。此设置的默认值由-DSQLITE_DQS?编译时选项确定。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-07-04 22:59:50  更:2022-07-04 23:02:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 22:25:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码