utilizando soundex no firebird...
Olá Pessoal,
Fiz os procedimento para o uso da UDF mv_soundex, conforme está na revista DBFreeMagazine 06. Está ocorrendo alguns problemas. Registrei a udf no firebird. Estou fazendo um teste com um campo de uma tabela só para teste, a tabela tem cerca de 50000 registros.
Quando faço a seguinte consulta abaixo ele me retorna todos os registro no campo a sequência: ´aaa´ .
O que pode estar de errado, baixei a dll do site firebase.
select mv_soundex(nome) as Nome_Soundex
from membros
Obrigado Thiago Pedro...
Fiz os procedimento para o uso da UDF mv_soundex, conforme está na revista DBFreeMagazine 06. Está ocorrendo alguns problemas. Registrei a udf no firebird. Estou fazendo um teste com um campo de uma tabela só para teste, a tabela tem cerca de 50000 registros.
Quando faço a seguinte consulta abaixo ele me retorna todos os registro no campo a sequência: ´aaa´ .
O que pode estar de errado, baixei a dll do site firebase.
select mv_soundex(nome) as Nome_Soundex
from membros
Obrigado Thiago Pedro...
Thiagopedro
Curtidas 0
Respostas
Adrinei
13/06/2006
Se você tem uma tabela com 50 mil registros acho que seria melhor criar um campo para gravar este nome já com o soundex.
CREATE TRIGGER TRG_TESTE FOR TBL_TESTE
ACTIVE BEFORE INSERT OR UPDATE POSITION 0
AS
BEGIN
-- Nome fonético
NEW.NOMEFONETICO = UDF_SOUNDEX(NEW.NOME);
END
Imagine que para cada consulta que você aplicar sobre esta tabela o banco terá que converter 50 mil nomes para comparar.
CREATE TRIGGER TRG_TESTE FOR TBL_TESTE
ACTIVE BEFORE INSERT OR UPDATE POSITION 0
AS
BEGIN
-- Nome fonético
NEW.NOMEFONETICO = UDF_SOUNDEX(NEW.NOME);
END
Imagine que para cada consulta que você aplicar sobre esta tabela o banco terá que converter 50 mil nomes para comparar.
GOSTEI 0
Murilo-jau
13/06/2006
Ola, estou usando UDF SOUNDEX baixado do site:
www.comunidade-firebird.org
Instalei sem problemas.
Fiz meu código seguindo o Leiame que vem junto com a dll :
´select * from ISO
where soundex(NOME_ISO) = SOUNDEX(´´´+Edit1.Text+´´´)´)´
MAS ele não retorna valor algum !
Por exemplo tenho cadastrado :
Luis Luiz
e buscando por Luis ou Luiz o resultado é o mesmo, NADA!
e erro não está dando no código.
Alguem me ajuda?
www.comunidade-firebird.org
Instalei sem problemas.
Fiz meu código seguindo o Leiame que vem junto com a dll :
´select * from ISO
where soundex(NOME_ISO) = SOUNDEX(´´´+Edit1.Text+´´´)´)´
MAS ele não retorna valor algum !
Por exemplo tenho cadastrado :
Luis Luiz
e buscando por Luis ou Luiz o resultado é o mesmo, NADA!
e erro não está dando no código.
Alguem me ajuda?
GOSTEI 0
Murilo-jau
13/06/2006
pts corrigi, que distração a minha:
select * from ISO
where soundex(NOME_ISO) like SOUNDEX(´´¬´+Edit1.Text+´¬´´)
Agora ele acha o nome buscado , mas o problema é que a função SOUNDEX não está ocorrendo. Como se fosse um simples like.
Será que usando o LIKE eu ´inibo´ a função SOUNDEX ?
Sem o like:
where soundex(NOME_ISO) = soundex(´´´+Edit1.text+´´´)
ele não retorna valor algum !!!!!
select * from ISO
where soundex(NOME_ISO) like SOUNDEX(´´¬´+Edit1.Text+´¬´´)
Agora ele acha o nome buscado , mas o problema é que a função SOUNDEX não está ocorrendo. Como se fosse um simples like.
Será que usando o LIKE eu ´inibo´ a função SOUNDEX ?
Sem o like:
where soundex(NOME_ISO) = soundex(´´´+Edit1.text+´´´)
ele não retorna valor algum !!!!!
GOSTEI 0
Emerson Nascimento
13/06/2006
vocês têm que se atentar se estão com a função SOUNDEX para o nosso idioma.
GOSTEI 0
Murilo-jau
13/06/2006
Como faço isto ? não entendi direito.
E fazendo mais alguns teste aqui , Alessandro e Alesandro deu certo na busca , ele acha os dois sendo buscado por S ou SS, então acho que isto mesmo que vc falou Emerson. S e Z , C e Ç não esta funfando. Só S e SS.
E fazendo mais alguns teste aqui , Alessandro e Alesandro deu certo na busca , ele acha os dois sendo buscado por S ou SS, então acho que isto mesmo que vc falou Emerson. S e Z , C e Ç não esta funfando. Só S e SS.
GOSTEI 0
Emerson Nascimento
13/06/2006
tente com [url=http://files-upload.com/418393/SoundexBR.rar.html]esta UDF[/url] que eu mesmo criei. se encontrar algum erro, por favor reporte para que eu possa corrigir.
GOSTEI 0
Murilo-jau
13/06/2006
Ola, Emerson, baixei o UDF que vc criou e irei testala sim, só uma coisa, ela não é a mesma que esta UDF que está na Comunidade do Firebird ?
Link :
http://www.comunidade-firebird.org/modules.php?name=Downloads&d_op=viewdownload&cid=6&orderby=titleD
Vos testa sim.
Valeu ai pela atenção !
Link :
http://www.comunidade-firebird.org/modules.php?name=Downloads&d_op=viewdownload&cid=6&orderby=titleD
Vos testa sim.
Valeu ai pela atenção !
GOSTEI 0
Emerson Nascimento
13/06/2006
foi baseada naquela, mas não é a mesma.
GOSTEI 0
Murilo-jau
13/06/2006
Emerson é o seguinte, testei a sua UDF , algumas palavras ele encontra tranquilo como de Maiúsculas - minúsculas, acentuo - sem acentuo,
S - SS ; C - Ç ; W - V ;
mas CH - X não está rodando ( só resulta no mesmo nome buscado)
o S - Z que está estranho :
No caso de JOSÉ - JOZÉ , a busca encontra os dois.
Mas no caso de LUIZ - LUIS é retornado o mesmo nome buscado. Mas quando busquei por acaso LASO - LASSO a busca encontra o tal LUIZ .
Por enquanto isto foi o que eu encontrei !
S - SS ; C - Ç ; W - V ;
mas CH - X não está rodando ( só resulta no mesmo nome buscado)
o S - Z que está estranho :
No caso de JOSÉ - JOZÉ , a busca encontra os dois.
Mas no caso de LUIZ - LUIS é retornado o mesmo nome buscado. Mas quando busquei por acaso LASO - LASSO a busca encontra o tal LUIZ .
Por enquanto isto foi o que eu encontrei !
GOSTEI 0
Emerson Nascimento
13/06/2006
tente com [url=http://files-upload.com/418800/SoundexBR.rar.html]esta versão[/url]
1- corrigi o problema do CH - X
2- no caso do S - Z que está correto:
JOSÉ - JOZÉ são fonéticamente idênticos, pois o S tem som de Z nesse caso.
3- corrigido o caso entre LUIZ - LUIS
4- a comparação entre LASO e LASSO é um caso específico, porque em LASO o S tem som de Z, porém em LASSO o SS tem som de S, o que indica incompatibilidade fonética.
1- corrigi o problema do CH - X
2- no caso do S - Z que está correto:
JOSÉ - JOZÉ são fonéticamente idênticos, pois o S tem som de Z nesse caso.
3- corrigido o caso entre LUIZ - LUIS
4- a comparação entre LASO e LASSO é um caso específico, porque em LASO o S tem som de Z, porém em LASSO o SS tem som de S, o que indica incompatibilidade fonética.
GOSTEI 0
Murilo-jau
13/06/2006
Rodou legal , as correções funcionaram.
Vou continuar usando esta ultima versão desta UDF sua ! blz ?
Se eu encontrar mais alguma coisa eu te passo !
Vou continuar usando esta ultima versão desta UDF sua ! blz ?
Se eu encontrar mais alguma coisa eu te passo !
GOSTEI 0
Sremulador
13/06/2006
tente com [url=http://files-upload.com/418800/SoundexBR.rar.html]esta versão[/url]
1- corrigi o problema do CH - X
2- no caso do S - Z que está correto:
JOSÉ - JOZÉ são fonéticamente idênticos, pois o S tem som de Z nesse caso.
3- corrigido o caso entre LUIZ - LUIS
4- a comparação entre LASO e LASSO é um caso específico, porque em LASO o S tem som de Z, porém em LASSO o SS tem som de S, o que indica incompatibilidade fonética.
você poderia envir novamente pro fileshare...
GOSTEI 0
Murilo-jau
13/06/2006
Emerson, esta Soundex que vc me passou vc pretende distribuir, por pra download, comercializar ... ?
GOSTEI 0
Emerson Nascimento
13/06/2006
comercializar? nada! pode distribuir à vontade.
GOSTEI 0
Murilo-jau
13/06/2006
Blz, Emerson!!
GOSTEI 0
Murilo-jau
13/06/2006
Emerson, você pode fornecer o Código Fonte da DLL ? tenho só da primeira versão que vc me passou (sem as correções).
GOSTEI 0
Murilo-jau
13/06/2006
Para quem quiser baixar a soundex o link está abaixo:
http://files-upload.com/files/448451/SoundexBR.rar
http://files-upload.com/files/448451/SoundexBR.rar
GOSTEI 0
Fernando Rodrigo
13/06/2006
Para quem quiser baixar a soundex o link está abaixo:
http://files-upload.com/files/448451/SoundexBR.rar
http://files-upload.com/files/448451/SoundexBR.rar
nao estou conseguindo baixar a dll
teria como me enviar por e-mail
fernando@araguaiasistemas.com.br
GOSTEI 0
Cezar Moniz
13/06/2006
comercializar? nada! pode distribuir à vontade.
Prezado Emerson.
Como posso te contatar? Me passa seu email por favor.
Abs
GOSTEI 0
Cezar Moniz
13/06/2006
Prezado Emerson.
O Link sobre o soundex esta desatualizado ou foi retirado do ar.
Vc tem como me passar de novo a versão mais atualizada?
Grato.
Cezar
O Link sobre o soundex esta desatualizado ou foi retirado do ar.
Vc tem como me passar de novo a versão mais atualizada?
Grato.
Cezar
GOSTEI 0