I – Introdução

Na atualidade a busca de informações em fontes diversas tais como: banco de dados, documentos txt, pdf, htm, xml, etc..., é uma necessidade constante para nossos usuários e em conseqüência para nós profissionais de TI, em função disso temos devemos ter sempre a nossa disposição um arsenal de ferramentas para que os sistemas possam atender a demanda sempre constante por métodos de consulta. O Oracle há muito tempo disponibiliza recursos para atender necessidades de busca textual em banco de dados e outras fontes de dados, o nome atual desse produto l é Oracle Text.

II – Um pouco do Histórico do Oracle Text.

Os recursos de busca textual no Oracle se encontram integrado desde 1996, Oracle 7, com o ConText Option, porém seu licenciamento era adquirido a parte, em seguida a evolução deste produto deu origem ao “interMedia Text” lançado em 1999, que acompanhava o Oracle 8i e que culminou com o atual Oracle Text, denominação que ganhou à partir do Oracle 9i e que faz parte do pacote do Banco de Dados, acompanhado todas as versões do produto, do Oracle Enterprise ao Oracle XE(quando esse artigo foi escrito a versão atual do Oracle era 10G).

III – Tipos de índices do Oracle Text

Tipo de índice Descrição Função de consulta
CONTEXT Usado na construção de aplicações voltadas para consultas sobre um texto que consiste de grandes documentos. É possível indexar documentos de diferentes formatos tais como Microsoft Word, HTML ou XML. CONTAINS
CTXCAT Usado para melhorar o desempenho de consultas Mistas(vários campos indexados na mesma tabela). E também apropriado para consultar pequenos documentos ou fragmentos descritivos de texto baseados em critérios relacionados como datas, nomes de itens, e preços que são armazenados em colunas. CATSEARCH
CTXRULE Usado na construção de aplicações voltadas para classificar documentos. É possível criar este índice sobre uma tabela texto onde foram armazenadas as consultas e cada uma delas tem uma classificação. Com este índice é possível classificar documentos como HTML ou XML. MATCHES
CTXXPATH Usado para melhorar a velocidade das consultas com existsNode() sobre colunas do tipo XMLType. Use com existsNode()