Criação e uso de Busca Fonetizada em Base de Dados  Relacionais, em Português – Parte 01

Por: Edivaldo Vicente dos Santos

I – Introdução:


Em função da resposta positiva que obtivemos no artigo anterior, SGBD Oracle - Implementação de Função para Fonetização em Português //www.devmedia.com.br/articles/viewcomp.asp?comp=6300, resolvemos aprofundar um pouco o assunto na sua utilização prática, principalmente tendo como alvo bases de dados de porte considerável.

O escopo desse artigo é cobrir a busca eficiente em bases de dados de parte da informação em um campo, usando a função de fonetização, do artigo anterior, podemos encontrar com facilidade um único nome, ou um nome composto, na base de dados, porém se nossos intuito for recuperar todos os “Raphael” e similares ( Luis Rafael Mendes, Paulo Rafael, Eduardo Luiz Rafael, etc...) de forma eficiente devemos trabalhar nosso banco um pouco mais.Nesse artigo utilizaremos a ferramenta SQL Developer, link no final do artigo, que pode ser usada com outras bases de dados que não somente Oracle e um aplicativo .  

 

I I – Preparação do esquema no Banco de Dados:


A idéia é que a busca deve ser a mais rápida e eficiente possível, uma das opções mais utilizadas é a utilização de uma tabela auxiliar em que os nomes são armazenados em  “fragmentos”  fonetizados  juntamente com o  identificador  da tabela a qual desejamos realizar a busca. Para exemplificar vamos criar uma tabela CLIENTE, faremos uso da ferramenta SQL Developer, gratuita, da Oracle, que pode inclusive ser usada com outras bases relacionais não Oracle.

sql-30-09-2008pic01.JPG
Figura.1

sql-30-09-2008pic02.JPG
Figura.2 (script1)