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

地图素材如何做ppt模板下载网站电力系统网络设计报告

地图素材如何做ppt模板下载网站,电力系统网络设计报告,宜宾网站建设哪家好,公司网站建设整体架构一.什么是全文索引#xff1f; 全文索引通过分析和处理文本#xff0c;将文档中的单词分解为词条#xff08;tokens#xff09;#xff0c;然后存储词条与其所在文档的映射关系。这使得数据库可以快速定位包含特定关键字的记录#xff0c;而不必对所有文本逐字匹配。 二…一.什么是全文索引 全文索引通过分析和处理文本将文档中的单词分解为词条tokens然后存储词条与其所在文档的映射关系。这使得数据库可以快速定位包含特定关键字的记录而不必对所有文本逐字匹配。 二.实验 CREATE TABLE test (TEST_ID NUMBER(6),TEST_NAME VARCHAR2(50),TEST_DESC VARCHAR2(4000) );BEGINFOR i IN 1..10000 LOOPINSERT INTO test (TEST_ID,TEST_NAME,TEST_DESC) VALUES (i, Product || i, DBMS_RANDOM.STRING(A, 2000));END LOOP;COMMIT; END; / 创建一个普通索引 create index idx_test on test(test_desc); 查看执行计划检查索引是否生效 select * from test where test_desc like LRbwu%; 到此是没有任何问题的在这种情况中我们知道test_id 是以什么字符开头的 那么就会有这么一种情况我们不知道这个内容开头是什么只知道中间是什么有什么关键字那么这种情况 我们就需要%内容%那么这种情况还会走索引吗 select * from test where test_desc like %AoaUR%;这时候我们发现走了全表扫描所以普通的索引解决不了我们只知道关键字而不知道以什么字符开头的情况。 这也可以理解B Tree索引只顺序存储了表中列值以及对应的rowid并且对于索引中字符串的排序是根据该字符串第一个字符的ASCⅡ码第一个字符的ASCⅡ码相同再解析第二个。在这种情况中我们不知道字符串前面的字符是什么所以B Tree索引无法使用。 所以这种场景就需要我们今天介绍的内容-全文索引 三.使用全文索引 在使用之前数据库中必须要系统用户CTXSYS如果没有则有两种方式来配置 1.dbca配置数据库这里不做演示配置后产生了CTXSYS用户 2.跑脚本 /u01/app/oracle/product/19.3.0/dbhome_1/ctx/admin ls -al catctx.sql 在数据库中跑这个脚本就好。 创建全文索引 确认已存在的段 col segment_name for a30 col object_name for a30 select segment_name ,segment_type from user_segments; create index idx_ctx_test on test(test_desc) indextype is ctxsys.context; 这里我们发现全文索引可以建立在普通索引之上意思是表中的一列有索引了仍然可以建立全文索引说明全文索引的结构和普通索引的结构肯定是有区别的。 select * from test where contains(test_desc,LRbwu) 0; 可以看到sql语句走了全文索引。 再查看一下现在的段都有哪些 col segment_name for a30 col object_name for a30 select segment_name ,segment_type from user_segments; 可以看到段多了很多TEST是基本表剩下的除了IDX_TEST是普通索引剩下的全是全文索引 但是我们刚才创建的索引名字是idx_ctx_test发现找不到这是因为全文索引只是逻辑上的概念他没有存储对象它的实现都依赖这些表。 四.深入全文索引 我们来看看这几张表 出现的token给他编一个号并且存储了重复出现的次数TOKEN_COUNT 我们随机搜索一个字符串。 DR$IDX_CTX_TEST$I 这个表把test_desc 这一列的值像字典一样保存出来编一个号并且总结出现的次数。但由于我是使用的DBMS_RANDOM.STRING 这个包随机创建的数据所以这个表非常的大。 编了号之后仍然不知道这些词在哪个地方这时候就需要另外一张表 DR$IDX_CTX_TEST$K 这个TEXTKEY就是rowid了我们可以根据TESTKEY找到数据了. 也就是说 DR$IDX_CTX_TEST$I  会生成token和编号DR$IDX_CTX_TEST$K 表示对应的这些编号数据存放在哪里 五.全文索引的维护 在TEST表上做DML操作看索引与表是否同步4 1.insert select * from test where test_desc like nihao; insert into test values (999,DBA,nihao); 此时通过全文索引查找数据查看是否更新   select * from test where contains(test_desc,nihao) 0; 发现全文索引没有更新这就说明表中的数据变了而全文索引中的数据没有变。 使用sys查看ctxsys.dR$pending表 select * from ctxsys.dR$pending; 这个表里面的数据就是我刚才插入的数据只是没有更新到全文索引 这种情况需要重建全文索引。 alter index idx_ctx_test rebuild; 再次使用全文索引查询发现更新了 2.delete 查看全文索引 这里可以发现delete与insert语句不同delete后 全文索引也更新了。 3.update可以自己做实验update也是不同步全文索引的。 六.全文索引创建同步的方式 一遇到插入的场景就需要重建全文索引这也太麻烦了所以我们可以在创建全局索引的时候指定同步的方式。 提交时同步 create index idx_ctx_test on test(test_desc) indextype is ctxsys.context parameters(sync (on commit)); 指定时间同步建议 需要给用户 job的权限 grant create job to user1; 例如每天晚上两点来同步全文索引 create index idx_ctx_test on test(test_desc) indextype is ctxsys.context parameters (sync (every trunc(sysdate) 2/24));
http://www.hkea.cn/news/14340152/

相关文章:

  • 盐山做网站的网络传媒有限公司
  • 公司网站如何推广网页升级访问每天都更新
  • 哪里有做网站推广设置个网站要多少钱
  • 佛山网站制作哪里实惠万网网站建设方案书
  • 求个网站2022做网站产品图片素材
  • 电大考试亿唐网不做网站做品牌免费word模板网站
  • 公司网站建设意见和建议保险官网
  • flash网站模板修改视频网站开发平台
  • 口碑好的网站建设哪家好开一个设计公司
  • 黄埔网站建设设计网站备案 空间
  • 济南外贸网站建设公司包头网站建设熊掌号
  • 增加网站访客全球搜索
  • 网站建设比赛网站留言短信通知
  • 电子商务网站建设与维护读书心得北京网页设计公司兴田德润团队
  • 设备高端网站建设学创杯营销之道模板
  • 没有网站想做个链接页面怎么做营业执照网上年检入口
  • 写网站编程需要什么网页开发与设计的内容
  • 寻找网站设计与制作福建省住房与城乡建设部网站
  • 广东建设业协会网站精品网的功能和服务
  • 建设银行网站怎么看不见余额搜狗网站录入
  • 网站建设借鉴大数据营销的核心
  • 电子商务网站搭建方案wordpress添加子项目
  • 给人做网站的公司临沂做网站选盛誉
  • 高清免费爱做网站企业管理咨询是干什么的
  • 易企互联网站建设公司主页怎么写
  • wordpress导出excel秦皇岛做网站优化价格
  • 怎么自己制作网站免费网站建设有关书籍
  • 郑州网站建设联系方式成都网站建设 培训学校
  • 广州佛山建立网站的公司怎么说服企业做网站
  • 网站模板加盟代理苏州网站建设案例