当前位置: 首页 > news >正文

购物网站开发周期秦皇岛市第一中学

购物网站开发周期,秦皇岛市第一中学,seo公司推荐推广平台,房地产网站开发公司电话返回#xff1a;SQLite—系列文章目录 上一篇#xff1a;SQLiteC/C接口详细介绍sqlite3_stmt类#xff08;十二#xff09; 下一篇#xff1a; 待续 51、sqlite3_stmt_scanstatus_reset sqlite3_stmt_scanstatus_reset 函数用于重置指定语句对象最近一次执行的 WHER…  返回SQLite—系列文章目录    上一篇SQLiteC/C接口详细介绍sqlite3_stmt类十二 下一篇 待续 51、sqlite3_stmt_scanstatus_reset sqlite3_stmt_scanstatus_reset 函数用于重置指定语句对象最近一次执行的 WHERE 子句中搜索的行数及扫描的页数的数据以便进行下一次查询。 函数原型如下 void sqlite3_stmt_scanstatus_reset(sqlite3_stmt *pStmt); 参数说明 - pStmt已经编译的 SQLite 语句对象。 该函数没有返回值。 举例用法 int nLoop 0; int nVisit 0; sqlite3_stmt *stmt; sqlite3_prepare_v2(db, SELECT * FROM user WHERE age ?, -1, stmt, NULL); sqlite3_bind_int(stmt, 1, 18); while (sqlite3_step(stmt) SQLITE_ROW) {nLoop; } sqlite3_stmt_scanstatus_reset(stmt); // 重置搜索的行数和扫描的页数 while (sqlite3_step(stmt) SQLITE_ROW) {nLoop; } sqlite3_stmt_scanstatus(stmt, SQLITE_SCANSTAT_NLOOP, 0, nLoop); sqlite3_stmt_scanstatus(stmt, SQLITE_SCANSTAT_NVISIT, 0, nVisit); printf(搜索了 %d 行扫描了 %d 个页\n, nLoop, nVisit); sqlite3_finalize(stmt); 在上面的示例中我们使用 sqlite3_prepare_v2 函数编译了一条 SQL 语句并绑定了一个参数。然后使用 sqlite3_step 函数逐行获取查询结果并累计 WHERE 子句搜索的行数和扫描的页数。在第一个 while 循环后使用 sqlite3_stmt_scanstatus_reset 函数以清空搜索的行数和扫描的页数的数据。然后在第二个 while 循环中执行查询再使用 sqlite3_stmt_scanstatus 函数获取搜索的行数和扫描的页数并将结果打印出来。 使用这个函数可以用于评估不同查询条件下的查询效率和性能对 SQL 语句进行调优和优化。 52、sqlite3_stmt_scanstatus_v2   sqlite3_stmt_scanstatus_v2 函数用于返回指定的语句对象最近一次执行的 WHERE 子句中搜索的行数及扫描的页数。相对于 sqlite3_stmt_scanstatus 函数它能额外生成一些查询性能的统计信息。 函数原型如下 int sqlite3_stmt_scanstatus_v2(sqlite3_stmt* pStmt,                    /* Prepared statement to be measured */int idx,                                /* Index of binding to report on */int iScanStatusOp,                      /* Operation to measure */void* pOut,                             /* OUT: Write statistic here */int resetFlg                           /* Reset value for pOut */ ); 参数说明 - pStmt已经编译的 SQLite 语句对象。 - idx指定绑定参数的索引从 1 开始如果不需要指定则使用 0。 - iScanStatusOp操作类型可以是下列值中的一种   - SQLITE_SCANSTAT_NLOOP返回 WHERE 子句搜索的行数。   - SQLITE_SCANSTAT_NVISIT返回 WHERE 子句扫描的页数。   - SQLITE_SCANSTAT_EST返回 WHERE 子句搜索的平均行数。   - SQLITE_SCANSTAT_SELECTID返回 SELECT 查询的 ID。   - SQLITE_SCANSTAT_EXPLAIN返回执行计划的文本形式。   - SQLITE_SCANSTAT_ALL同时返回上述所有统计信息。 - pOut返回查询结果的指针。 - resetFlg是否重置累计统计数据1 表示重置0 表示不重置。 返回值 - 返回 SQLITE_OK 表示执行成功否则返回其他错误码。 各种操作的返回结果的数据类型与 sqlite3_stmt_scanstatus 函数一致其中 SQLITE_SCANSTAT_EXPLAIN 的返回类型为 const char *。 举例用法 int nLoop 0; int nVisit 0; const char *explain NULL; sqlite3_stmt *stmt; sqlite3_prepare_v2(db, SELECT * FROM user WHERE age ?, -1, stmt, 0); sqlite3_bind_int(stmt, 1, 18); while (sqlite3_step(stmt) SQLITE_ROW) {nLoop; } sqlite3_stmt_scanstatus_v2(stmt, 0, SQLITE_SCANSTAT_NLOOP, nLoop, 1); sqlite3_stmt_scanstatus_v2(stmt, 0, SQLITE_SCANSTAT_NVISIT, nVisit, 1); sqlite3_stmt_scanstatus_v2(stmt, 0, SQLITE_SCANSTAT_EXPLAIN, explain, 0); printf(搜索了 %d 行扫描了 %d 个页\n, nLoop, nVisit); printf(执行计划\n%s\n, explain); sqlite3_finalize(stmt); 在上面的示例中我们使用 sqlite3_prepare_v2 函数编译了一条 SQL 语句并绑定了一个参数。然后使用 sqlite3_step 函数逐行获取查询结果并累加 WHERE 子句搜索的行数。最后使用 sqlite3_stmt_scanstatus_v2 函数获取搜索的行数、扫描的页数和执行计划并将结果打印出来。 需要注意的是在获取 SQL 语句执行计划信息时需要使用 SQLITE_SCANSTAT_EXPLAIN 操作并将 resetFlg 参数设为 0以保留已有的执行计划信息否则需要先调用 sqlite3_clear_bindings 函数来释放绑定参数。 53、sqlite3_stmt_status sqlite3_stmt_status 函数用于返回指定语句对象的执行状态信息如 SQL 语句执行的次数、查询返回的行数、最后使用的表和索引、插入、修改和删除的行数等。 函数原型如下 int sqlite3_stmt_status(sqlite3_stmt *pStmt,  /* Prepared statement to be queried */int op,               /* Information desired */int resetFlg,         /* Reset the value after returning it if true */int *pOut             /* Integer value to return */ ); 参数说明 - pStmt已经编译的 SQLite 语句对象。 - op所需字段的操作代码可以是下列值中的一种   - SQLITE_STMTSTATUS_FULLSCAN_STEP执行全表扫描的步骤数。   - SQLITE_STMTSTATUS_SORT排序操作的总数。   - SQLITE_STMTSTATUS_AUTOINDEXAutoindex 步骤数。   - SQLITE_STMTSTATUS_VM_STEP后续操作已执行完成的虚拟机步骤数。   - SQLITE_STMTSTATUS_REPREPARESQL 语句重新编译的次数。   - SQLITE_STMTSTATUS_RUN语句已执行的次数。   - SQLITE_STMTSTATUS_MEMUSED语句消耗的内存总量单位字节。   - SQLITE_STMTSTATUS_ROW已返回的行数。   - SQLITE_STMTSTATUS_STMT_USED语句对象使用的内存总量单位字节。   - SQLITE_STMTSTATUS_STMTEXPIRED处于过期状态的预处理语句的数量。 - resetFlg是否重置所需字段的值1 表示重置0 表示不重置。 - pOut返回查询结果的指针。 返回值 - 返回 SQLITE_OK 表示执行成功否则返回其他错误码。 举例用法 int nRow 0; int memUsed 0; sqlite3_stmt *stmt; sqlite3_prepare_v2(db, SELECT * FROM user WHERE age ?, -1, stmt, NULL); sqlite3_bind_int(stmt, 1, 18); while (sqlite3_step(stmt) SQLITE_ROW) {nRow; } sqlite3_stmt_status(stmt, SQLITE_STMTSTATUS_MEMUSED, 1, memUsed); printf(执行了 %d 次查询返回了 %d 行消耗了 %d 字节的内存\n, sqlite3_stmt_status(stmt, SQLITE_STMTSTATUS_RUN, 0, NULL), nRow, memUsed); sqlite3_finalize(stmt); 在上面的示例中我们使用 sqlite3_prepare_v2 函数编译了一条 SQL 语句并绑定了一个参数。然后使用 sqlite3_step 函数逐行获取查询结果并累加已返回的行数。使用 sqlite3_stmt_status 函数获取语句对象的执行次数和消耗的内存量并将结果打印出来。 使用这个函数可以用于监控 SQL 查询的性能表现以实现 SQL 语句调优。 后记 本次Stmt类的所有内容已经完成后续内容等待更新要三互的请发消息。
http://www.hkea.cn/news/14443211/

相关文章:

  • 网站建设合同书(范本)网站设计需要考虑的基本原则
  • 计算机应用专业(网站开发)说到很多seo人员都转行了
  • 做的网站 v2ex公司注册资金多少合适
  • 网站建设玖金手指谷哥三十人才招聘网官网
  • 苏州外贸企业网站建设做网站的总是有活动怎么回事
  • 网站建设合同百度文库泉州做网站建设
  • 建设银行企业网上银行网站wordpress删除自定义字段
  • 网站里的搜索怎么做Wordpress怎么連結mysql
  • 搭建网站空间wordpress会员微信支付宝
  • app制作的网站把自己做的网站传到网上
  • 广州网站建设哪家便宜做网约车网站
  • 公司网站建设7个基本流程伊春市建设局网站
  • 南昌网站建设招聘如何开发app小程序
  • 邢台建站企业邮箱十大免费自助建站
  • 网站建设的背景有哪些关于进行网站建设费用的请示
  • 电脑上怎样进入中国建设银行网站wordpress更新4.9
  • 江门网红桥苏州网站搜索引擎优化
  • 贵州飞乐云毕节网站建设哪家公司因为做网站失败了
  • 繁昌县网站开发公司名称大全四个字
  • 一个网站多个域名备案做行业网站赚钱
  • 永泰县住房和城乡建设局网站网站开发付款方式和比例
  • 免费创建社区平台惠州seo网络推广
  • 网站备案 厦门软件开发赚钱多吗
  • 校园网站管理系统wordpress 二级域名
  • 3d渲染网站建设网站建设推荐频道
  • 购物网站名称网站开发建设的步骤
  • 网站建设项目外包网站怎么做网站的后台维护
  • 建设网站文献php网站漂浮广告代码
  • 江苏江都建设集团有限公司网站开发者模式打开有什么影响
  • 网站建设首选建站系统相城苏州网站建设