Jump to content
Fórum Script Brasil
  • 0

Problemas Com Acentos Bd Access!


rockbilly

Question

Olá forum,

tenho um BD com registros COM e SEM acento, o problema é o seguinte: o Usuario faz a consulta com nome sem acento e mostra a tabela com as palavras COM e SEM acento. O PROBLEMA é que: quando ele faz a consulta COM acento, ela retorna SÓ as palavras COM acento, ou seja, as SEM acento ficam fora. Estou usando esta função:

function preparaPalavra(str)

preparaPalavra = replace(str,"a","[a,á,à,ã,â,ä]")

preparaPalavra = replace(preparaPalavra,"e","[e,é,è,ê,ë]")

preparaPalavra = replace(preparaPalavra,"i","[i,í,ì,î,ï]")

preparaPalavra = replace(preparaPalavra,"o","[o,ó,ò,õ,ô,ö]")

preparaPalavra = replace(preparaPalavra,"u","[u,ú,ù,û,ü]")

preparaPalavra = preparaPalavra

end function

OBS:. Se eu pudesse, tiraria na mão mesmo os ACENTOS no BD. mas são mais de 1500 registros!

me ajudem por favor.

Agradeço muito a uma luz!

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0
Guest Reginaldo E. Iobbi

function preparaPalavra(str)

preparaPalavra = replace(str,"á","a")

preparaPalavra = replace(preparaPalavra,"à","a")

preparaPalavra = replace(preparaPalavra,"â","a")

preparaPalavra = replace(preparaPalavra,"ä","a")

preparaPalavra = replace(preparaPalavra,"é","e")

preparaPalavra = replace(preparaPalavra,"è","e")

'... Continua...

End Function

Link to comment
Share on other sites

  • 0

Cara.. aí vai uma função muito mais completa que a sua:

<%

Function RemoveAcentuacao(Palavra)

Dim I

Dim LCA(47)

Dim LSA(47)

LCA(0) = "ç"

LCA(1) = "À"

LCA(2) = "Á"

LCA(3) = "Â"

LCA(4) = "Ã"

LCA(5) = "Ä"

LCA(6) = "Å"

LCA(7) = "à"

LCA(8) = "á"

LCA(9) = "â"

LCA(10) = "ã"

LCA(11) = "ä"

LCA(12) = "å"

LCA(13) = "È"

LCA(14) = "É"

LCA(15) = "Ê"

LCA(16) = "Ë"

LCA(17) = "è"

LCA(18) = "é"

LCA(19) = "ê"

LCA(20) = "ë"

LCA(21) = "Ò"

LCA(22) = "Ó"

LCA(23) = "Ô"

LCA(24) = "Õ"

LCA(25) = "Ö"

LCA(26) = "ò"

LCA(27) = "ó"

LCA(28) = "ô"

LCA(29) = "õ"

LCA(30) = "ö"

LCA(31) = "Ù"

LCA(32) = "Ú"

LCA(33) = "Û"

LCA(34) = "Ü"

LCA(35) = "ù"

LCA(36) = "ú"

LCA(37) = "û"

LCA(38) = "ü"

LCA(39) = "Ì"

LCA(40) = "Í"

LCA(41) = "Î"

LCA(42) = "Ï"

LCA(43) = "ì"

LCA(44) = "í"

LCA(45) = "î"

LCA(46) = "ï"

LCA(47) = "Ç"

LSA(0) = "c"

LSA(1) = "A"

LSA(2) = "A"

LSA(3) = "A"

LSA(4) = "A"

LSA(5) = "A"

LSA(6) = "A"

LSA(7) = "a"

LSA(8) = "a"

LSA(9) = "a"

LSA(10) = "a"

LSA(11) = "a"

LSA(12) = "a"

LSA(13) = "E"

LSA(14) = "E"

LSA(15) = "E"

LSA(16) = "E"

LSA(17) = "e"

LSA(18) = "e"

LSA(19) = "e"

LSA(20) = "e"

LSA(21) = "O"

LSA(22) = "O"

LSA(23) = "O"

LSA(24) = "O"

LSA(25) = "O"

LSA(26) = "o"

LSA(27) = "o"

LSA(28) = "o"

LSA(29) = "o"

LSA(30) = "o"

LSA(31) = "U"

LSA(32) = "U"

LSA(33) = "U"

LSA(34) = "U"

LSA(35) = "u"

LSA(36) = "u"

LSA(37) = "u"

LSA(38) = "u"

LSA(39) = "I"

LSA(40) = "I"

LSA(41) = "I"

LSA(42) = "I"

LSA(43) = "i"

LSA(44) = "i"

LSA(45) = "i"

LSA(46) = "i"

LSA(47) = "C"

For i= 0 to UBound(LCA)

Resultado = Replace(Palavra,LCA(i),LSA(i))

If Palavra <> Resultado Then

Palavra = ""

Palavra = Resultado

End IF

Next

RemoveAcentuacao = Resultado

End Function

%>

Você pode fazer um loop no seu banco para retirar todos os acentos.

Abraços,

Nelson Soares

http://www.ondagospel.com.br

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...