ORACLE全文索引的创建查询实例
1.启用ctxsys的用户
(可使用ORACLE 管理控制台去启用)
2.在ctxsys用户下给ctx_cx用户赋权限
grant execute on ctx_ddl to ctx_cx;
3. 选择中文词法分析器,ctx_cx下执行
exec ctx_ddl.create_preference ('my_chinese', 'chinese_lexer');
4.建立表空间CTX_STORAGE
(以下脚本仅供参考,具体路径和参数设置看具体使用)
CREATE TABLESPACE CTX_STORAGE
NOLOGGING
DATAFILE'F:/oracle/oradata/stonehu/CTX_STORAGE.dbf'SIZE10000M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO
5. 设置全文索引的存储属性
(选择存储的表空间)
BEGIN
ctxsys.CTX_DDL.CREATE_PREFERENCE('CTX_STORAGE', 'BASIC_STORAGE'); ctxsys.CTX_DDL.SET_ATTRIBUTE('CTX_STORAGE', 'I_TABLE_CLAUSE',
'TABLESPACE idx_context');
ctxsys.CTX_DDL.SET_ATTRIBUTE('CTX_STORAGE', 'K_TABLE_CLAUSE',
'TABLESPACE idx_context');
ctxsys.CTX_DDL.SET_ATTRIBUTE('CTX_STORAGE', 'R_TABLE_CLAUSE',
'TABLESPACE idx_context');
ctxsys.CTX_DDL.SET_ATTRIBUTE('CTX_STORAGE', 'N_TABLE_CLAUSE',
'TABLESPACE idx_context');
ctxsys.CTX_DDL.SET_ATTRIBUTE('CTX_STORAGE', 'P_TABLE_CLAUSE',
'TABLESPACE idx_context');
ctxsys.CTX_DDL.SET_ATTRIBUTE('CTX_STORAGE', 'I_INDEX_CLAUSE',
'TABLESPACE idx_context');
END;
/
6.建立全文索引
CREATE INDEX cntxt_t_ry_gzdx_bz ON ctx_owner.t_ry_gzdx_bz(ssyj) indextype is ctxsys.context
parameters('lexer MY_chinese storage CTX_STORAGE')