oracle全文索引之datastore_1_DIRECT_DATASTORE
Oracle Text功能十分强大,开始学习,主要参考
yangtingkun
的blog和文档进行。
第一步先搞清楚datastore的类型。
DATASTORE的类型如下:
DIRECT_DATASTORE
MULTI_COLUMN_DATASTORE
DETAIL_DATASTORE
FILE_DATASTORE
NESTED_DATASTORE
URL_DATASTORE
USER_DATASTORE
下面就各种类型进行测试,DIRECT_DATASTORE是最简单的,默认是就是用这种类型
Oracle的全文索引不要求被索引的文章一定存储在数据库中,不过如果文章存储在数据库的一列中,那么这种情
况建立索引是最简单的。
SQL> CREATE TABLE T (ID NUMBER, DOCS VARCHAR2(4000));
表已创建。
SQL> INSERT INTO T VALUES (1, 'This is a sample for Oracle TEXT.');
已创建 1 行。
SQL> INSERT INTO T VALUES (2, 'This is a direct database store sample');
已创建 1 行。
SQL> COMMIT;
提交完成。
对于上面提到的DIRECT DATASTORE类型,下面三种创建索引方式是等价的:
SQL> CREATE INDEX IND_T_DOCS ON T (DOCS) INDEXTYPE IS CTXSYS.CONTEXT;
索引已创建。
SQL> SELECT * from T WHERE CONTAINS(DOCS, 'DATABASE') > 0;
ID DOCS
---------- ----------------------------------------
2 This is a direct database store sample
SQL> DROP INDEX IND_T_DOCS;
索引已丢弃。
SQL> CREATE INDEX IND_T_DOCS ON T (DOCS) INDEXTYPE IS CTXSYS.CONTEXT
2 PARAMETERS ('DATASTORE CTXSYS.DEFAULT_DATASTORE');
索引已创建。
SQL> SELECT * from T WHERE CONTAINS(DOCS, 'DATABASE') > 0;
ID DOCS
---------- ----------------------------------------
2 This is a direct database store sample
SQL> DROP INDEX IND_T_DOCS;
索引已丢弃。
SQL> CREATE INDEX IND_T_DOCS ON T (DOCS) INDEXTYPE IS CTXSYS.CONTEXT
2 PARAMETERS ('DATASTORE CTXSYS.DIRECT_DATASTORE');
索引已创建。
SQL> SELECT * from T WHERE CONTAINS(DOCS, 'DATABASE') > 0;
ID DOCS
---------- ----------------------------------------
2 This is a direct database store sample
上面给出了一个最简单的全文索引的例子。
另外,由DR$开头的4张表是系统为了支持全文索引而自动生成的,不过这4张表的用处就不再这里讨论了。
SQL> SELECT * from TAB;
TNAME TABTYPE CLUSTERID
------------------------------ -------
相关文档:
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
describe TABLE_NAME; --描述
----------------------------------------------------------------
create table as select XXXXXX
insert into TABLE_NAME (reac_1,reac_2.....) values(v1,v2)
insert into TABLE_NAME (select * from ..........)
update TABLE_NAME set reac_1=v1,.............. ......
【IT168 技术文档】随着网络应用和电子商务的不断发展,各个站点的访问量越来越大,如何使有限的计算机系统资源为更多的用户服务?如何保证用户的响应速度和服务质量?这些问题都属于服务器性能优化的范畴。作为较成功的数据库厂商,Oracle公司数据库的性能优化是如何进行的
优化策略
为了保证Oracle数 ......
SQL> create table test2(s1 varchar(10),s2 varchar2(10));
表已创建。
SQL> insert into test2 values('11','111');
已创建 1 行。
SQL> insert into test2 values('22','222');
已创建 1 行。
SQL> CREATE OR REPLACE PACKAGE test222 AS
2 TYPE t_cursor IS REF CURSOR;
3 procedure p_tes ......