DATASTORE是FILE_DATASTORE的测试
[oracle@rhel140 ~]$ cat OUTPUT.TXT
ORACLE
oracle
[oracle@rhel140 LOG]$ cat EMPXT_000_2012_2680.LOG
SOURCE
ABC
SQL> conn myuser/myuser
Connected.
SQL> CREATE TABLE T (ID NUMBER, DOCS VARCHAR2(1000));
Table created.
SQL> INSERT INTO T VALUES (1, 'OUTPUT.TXT');
1 row created.
SQL> commit;
Commit complete.
SQL> BEGIN
2 CTX_DDL.CREATE_PREFERENCE('TEST_FILE', 'FILE_DATASTORE');
3 CTX_DDL.SET_ATTRIBUTE('TEST_FILE', 'PATH', '/home/oracle');
4 END;
5 /
PL/SQL procedure successfully completed.
SQL> CREATE INDEX IND_T_DOCS ON T (DOCS) INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS ('DATASTORE TEST_FILE'); 2
Index created.
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'ORACLE') > 0;
ID DOCS
---- --------------------
1 OUTPUT.TXT
需要注意的是在建立PREFERENCE的PATH属性时不能用客户端的目录和文件,一定是服务器端的目录和文件,
我用WINDOWS的目录时,在dr$index_error中就会出现下面的错误
SQL> select * from ctxsys.dr$index_error;
ERR_IDX_ID ERR_TIMES ERR_TEXTKEY
---------- --------- ------------------
ERR_TEXT
--------------------------------------------------------------------------------
1181 13-MAY-09 AAAM52AAEAAAAGkAAA
DRG-11513: unable to open or write to file /home/oracle/OUTPUT.TXT
SQL> INSERT INTO T VALUES (2, 'LOG/EMPXT_000_2012_2680.LOG');
1 row created.
SQL> commit;
Commit complete.
SQL> exec CTX_DDL.SYNC_INDEX('IND_T_DOCS');
PL/SQL procedure successfully completed.
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'SOURCE') > 0;
no rows selected
Oracle似乎只支持在FILE_DATASTORE中设置的路径中进行搜索,即使像上面这个例子中第2条记录,文档存储在
指定路径下的子目录中,这种情况也是没有办法进行索引的。
如果将文件位置从/home/oracle/LOG挪到/home/oracle目录下,则可以进行索引:
SQL> host mv /home/oracle/LOG/EMPXT_000_2012_2680.LOG /home/oracle
SQL> UPDATE T SET DOCS = 'EMPXT_000_2012_2680.LOG' WHERE ID = 2;
1 row updated.
SQL> COMMIT;
Commit complete.
SQL> exec CTX_DDL.SYNC_INDEX('IND_T_DOCS');
PL/SQL procedure successfully completed.
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'SOURCE') > 0;
ID
----------
DOCS
--------------------------------------------------------------------------------
2
EMPXT_000_2012_2680.LOG
测试还发现,只要将文件置于/home/oracle目录下即可,即使DOCS中存储的文件位置是子目录的信息。
下面不改变文件的存储位置,只是修改保存在数据库中的文档的地址:
SQL> UPDATE T SET DOCS = 'LOG/EMPXT_000_2012_2680.LOG' WHERE ID = 2;
1 row updated.
SQL> commit;
Commit complete.
SQL> exec CTX_DDL.SYNC_INDEX('IND_T_DOCS');
PL/SQL procedure successfully completed.
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'SOURCE') > 0;
ID
----------
DOCS
--------------------------------------------------------------------------------
2
LOG/EMPXT_000_2012_2680.LOG
看yangtingkun的实验是可以在一个PATH里指定多少目录,但我试了是不行的,不知是为什么
SQL> host mv /home/oracle/EMPXT_000_2012_2680.LOG /home/oracle/LOG/EMPXT_000_2012_2680.LOG
SQL> exec CTX_DDL.DROP_PREFERENCE('TEST_FILE');
PL/SQL procedure successfully completed.
SQL> BEGIN
2 CTX_DDL.CREATE_PREFERENCE('TEST_FILE', 'FILE_DATASTORE')
3 CTX_DDL.CREATE_PREFERENCE('TEST_FILE', 'FILE_DATASTORE')
SQL> BEGIN
2 CTX_DDL.CREATE_PREFERENCE('TEST_FILE', 'FILE_DATASTORE');
3 CTX_DDL.SET_ATTRIBUTE('TEST_FILE', 'PATH', '/home/oracle;/home/oracle/LOG');
4 end;
5 /
PL/SQL procedure successfully completed.
SQL> DROP INDEX IND_T_DOCS;
Index dropped.
SQL> CREATE INDEX IND_T_DOCS ON T (DOCS) INDEXTYPE IS CTXSYS.CONTEXT
2 PARAMETERS ('DATASTORE TEST_FILE');
Index created.
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'ORACLE') > 0;
no rows selected
SQL> SELECT * FROM T WHERE CONTAINS(DOCS, 'SOURCE') > 0;
no rows selected
表ctxsys.dr$index_error的错误如下,就是找不到目录
[oracle@rhel140 LOG]$ sqlplus ctxsys/ctxsys
SQL> select * from ctxsys.dr$index_error;
ERR_IDX_ID ERR_TIMES ERR_TEXTKEY
---------- --------- ------------------
ERR_TEXT
--------------------------------------------------------------------------------
1261 14-MAY-09 AAAM6dAAEAAAAG+AAA
DRG-11513: unable to open or write to file /home/oracle;/home/oracle/LOG/OUTPUT.
TXT
1261 14-MAY-09 AAAM6dAAEAAAAG/AAA
DRG-11513: unable to open or write to file /home/oracle;/home/oracle/LOG/EMPXT_0
00_2012_2680.LOG
相关推荐
常见js手撕题及算法总结
设计一个lazyMan,实现以下功能: LazyMan(‘Tony’); // Hi I am Tony LazyMan(‘Tony’).sleep(10).eat(‘lunch’); // Hi I am Tony // 等待了10秒… // I am eating lunch LazyMan(‘Tony’).eat(‘lunch’).sleep(10).eat(‘dinner’); // H...
matlab批量读取csv文件
matlab批量读取csv文件
父子Agent架构:解决AI系统上下文污染的技术方案
在AI系统设计中,上下文管理是核心挑战之一。传统单Agent架构在处理复杂任务时,常面临上下文无限膨胀导致的信息淹没和性能下降问题。父子Agent架构通过职责分离和上下文隔离机制,采用分而治之的思想,将大任务拆解为多个子任务由专门子Agent处理。该架构中父Agent负责任务规划和结果汇总,子Agent执行具体任务后立即销毁中间状态,通过精炼摘要进行通信。这种设计不仅能有效控制上下文长度,还能提升系统稳定性和执行效率,特别适用于编程辅助、自动化测试等需要多步骤处理的场景。父子Agent架构体现了计算机科学中
使用Java基于GeoTools读取Shapefile矢量数据属性信息-以某市POI数据为例
本文主要研究使用Java开发语言基于GeoTools地理开发组件来进行空间矢量数据如Shapefile的属性信息的读取,文章首先介绍如何使用GeoTools来打开一个shp文件,在QGIS中展示原始数据的相关信息,然后讲解如何通过GeoTools获取shp文件的空间参考,接着讲解根据空间参考获取我们常见的空间参考编码和代号,其次讲解如何获取空间数据的属性字段。通过本文,您可以了解和掌握如何利用GeoTools来进行Shapefile的属性信息的读取。
半导体制造技术导论(第二版)萧宏 第五章集成电路加热工艺答案
第二次退火是在较高温度下进行,并将电阻系数较高的c49碳化硅转变为电阻系数较低的c54碳。水平式高温炉加热、垂直式高温炉加热(即传统的管式炉加热)、快速加热工艺RTP、激光镭射。8. 集成电路芯片制造过程中,会使用垫底氧化层、阻挡氧化层、栅氧氧化层、屏蔽氧化层和全。氧化是最重要的加热过程之一,是一种添加工艺,将氧气加入到硅晶圆后,在晶圆表面形成二氧。为了满足元器件性能的要求,必须利用退火工艺将晶格的损伤修复,使其恢复单晶结构并激活掺。工艺氮气气流下将晶舟推入炉管,升高温度,稳定温度;
基于Stateflow的驱动电机控制系统模式管理与安全策略研究
摘要 本文基于Stateflow状态机建模工具,研究了驱动电机控制系统的模式管理架构与安全策略实现方法。通过分析电机控制系统的工作模式,设计了包含初始化、待机、校准、对齐、运行、故障、复位七种状态的有限状态机模型,并建立了三级故障处理机制和降额保护策略。基于Simulink/Stateflow搭建的仿真模型实现了模式切换逻辑和安全管理功能,验证了系统能够正确响应各类控制事件,故障处理机制可有效保护系统安全。研究成果为电动汽车电机控制系统的工程开发提供了参考。 关键词:Stateflow;驱动电机控制;模式管
ORACLE TEXT DATASTORE PREFERENCE(三)
这篇文章继续讨论全文索引的DATASTORE属性,介绍FILE_DATASTORE。 全文索引的对象一般是篇幅较大的文章,除了保存在数据库中的情况,另外一种常见的情况是以文件的形式保存在操作系统中。 Oracle的FILE_DATASTORE属性就可以索引这种类型的文档。这个例子主要是讨论DATASTORE属性,因此索引的文章都是文本格式的,对于其他类型需要设置FI
Agent Skills应用解析:构建可扩展、高效率AI探员
Agent Skills是一个简洁而强大的概念:它是一个包含组织化的指令、脚本和资源的文件夹,智能体可以动态地发现并加载这些内容,以在特定任务中表现更佳。可组合性(Composability):一个Agent Skill是一个独立的、封装良好的能力单元。开发者可以为不同的功能(例如PDF处理、网络浏览、数据分析)创建独立的技能,然后根据需要将它们组合起来,赋能不同的智能体。这意味着不再需要为每个用例构建碎片化、定制设计的智能体,而是可以通过组合现有技能来快速构建新的专业智能体。
oracle全文索引之datastore
Oracle Text功能十分强大,开始学习,主要参考yangtingkun的blog和文档进行。第一步先搞清楚datastore的类型。DATASTORE的类型如下:DIRECT_DATASTOREMULTI_COLUMN_DATASTOREDETAIL_DATASTOREFILE_DATASTORENESTED_DATASTOREURL_D
生成mm grounding dino的onnx模型并在x-anylabeling中使用
X-AnyLabeling 是一款cvhub开发的交互式自动标注工具,其基于AnyLabeling进行构建和二次开发,在此基础上扩展并支持了许多的模型和功能,并借助Segment Anything和YOLO等主流模型提供强大的 AI 支持。其最新版基于grounding dino可以实现开放词汇检测及生成掩码。2024年,MMDet 3.3.0提出了 MM-Grounding-DINO。
RAG系统中Embedding模型选型实战
本文详细介绍了RAG系统中Embedding模型选型实战,希望能对学习RAG的同学们有所帮助。 文章目录 1. 前言 2. 思路解析 3. 测评数据集构建 3.1 步骤一 3.2 步骤二 3.3 数据示例 3.4 总结 4. 实战代码 4.1 本地模型 4.2 使用第三方的Embedding模型API
oracle全文索引之datastore_1_DIRECT_DATASTORE
Oracle Text功能十分强大,开始学习,主要参考yangtingkun的blog和文档进行。第一步先搞清楚datastore的类型。DATASTORE的类型如下:DIRECT_DATASTOREMULTI_COLUMN_DATASTOREDETAIL_DATASTOREFILE_DATASTORENESTED_DATASTOREURL_DATA
【项目实战】AES实施应符合NIST密码算法验证程序
AES由美国国家标准与技术研究院(NIST)制定。NIST是负责开发和维护美国政府使用的技术标准的机构,包括加密标准。
oracle全文索引之FILTER
介绍完Oracle全文索引的DATASTORE属性,继续介绍Oracle的FILTER属性。Oracle全文索引的FILTER属性主要是针对具有一定格式的文档,Oracle根据FILTER的设定来过滤那些不属于文章内容的部分。FILTER属性包含的属性有:CHARSET_FILTER、INSO_FILTER、NULL_FILTER、USER_FILTER、PROCEDURE_F
visio安装包
Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。
锂电池充电器电路设计 里面有电路
锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。
全文索引方面
09年马上要结束了,BLOG每天更新又坚持了一年,目前文章总数1700多篇,其中纯技术文章将近1300篇。 我比较喜欢的一句话:十年磨一剑。以前提到过,坚持10年可能会比较困难,那么至少要坚持5年,到目前为止,BLOG更新已经...
OV9734 DATASHEET,完整规格书
OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等
ORACLE 全文检索:
全文索引: ORACLE TEXT DATASTORE PREFERENCE(一):介绍DIRECT_DATASTORE。 ORACLE TEXT DATASTORE PREFERENCE(二):介绍MULTI_COLUMN...
VB摄像头监控
该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制
安装了两种oracle数据库怎么卸载,oracle数据库卸载步骤
oracle数据库卸载步骤卸载Oracle :1、停止所有Oracle服务,点Universal Installer卸载2、删除注册表中的所有关于Oracle项(1)在HKEY_LOCAL_MACHINE\SOFTWARE下,删除Oracle目录(2)在HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services下,删除所有Oracle项(3)在HKEY_LOC...
如何实现Oracle9iRealease2的全文检索
如何实现Oracle9iRealease2的全文检索
oracle全文索引之FILTER_2_INSO_FILTER
这篇文章继续介绍全文索引的FILTER属性,介绍Oracle的INSO_FILTER属性。[@more@]Oracle的全文索引除了可以支持文本文件外,还可以支持多种文档格式,对于这些文档格式,在建立索引的时候需要指定INSO_...
ORACLE TEXT FILTER PREFERENCE(二)
这篇文章继续介绍全文索引的FILTER属性,介绍Oracle的INSO_FILTER属性。 Oracle的全文索引除了可以支持文本文件外,还可以支持多种文档格式,对于这些文档格式,在建立索引的时候需要指定INSO_FILTER参数,使用这个过滤参数,Oracle的全文索引可以识别绝大部分的常见文档,比如:word、pdf等。 下面看一个索引文档的例子:
Oracle全文检索示例(转)
第一种方法:一、创建示例表CREATE TABLE T_FULLTEXT_DEMO( ID NUMBER NOT NULL, TITLE VARCHAR2(100) NULL, REMARK VARCHAR2(200) NULL, FILE_NAME VARCHAR2(200
Oracle Text是如何支持本地文件的检索
今天来看看强大的Oracle Text是如何支持本地文件的检索 它的实现是依靠参数datastore和filter的组合,在数据库的文本列中只保存指向 硬盘文件的指针,建立索引的时候,Oracle读取硬盘上的文件并且将索引存储在oracle 数据库中。Oracle支持对很多格式的文件的文本检索,包括txt、html、word、excel、PowerPoint、pdf 等,而且配合Lexer
Oracle全文检索示例
第一种方法: 一、创建示例表 CREATE TABLE T_FULLTEXT_DEMO ( IDNUMBERNOT NULL, TITLEVARCHAR2(100)NULL, REMARKVARCHAR2(200)NULL, FILE_NAMEVARCHAR2(200)NULL, CONSTRAINT T_FULLTEXT_DEMO_PK...
oracle+sqlload自增,Oracle Sqlload 导入数据
sqlload导入数据具有快,简单,无需校验等方便,多说无益1 首先,oracle数据库要有这么个表,用来接收数据。我这里这个uuid是序列生成的,当然也可以sqlload导入时候分配uuid--建表CREATE TABLE ARADMIN.VM_INFO_Dayly(UUID int primary key,VMNAME ),VMID ),ESXIP ),ESXID ) ,CLUSTERNA...
3176



被折叠的 条评论
为什么被折叠?



