USANDO O LIKE
Boa noite Galera!!!!!!!!!
Galera a minha dúvida é a seguinte
fiz uma tela de consulta onde estou utilizando o LIKE para fazer as pesquisas, mas estou tendo um problema, no cadastro as vezes digital em maiusculo ou minusculo e na hora de fazer a filtragem ele só acha os que tá em maiúsculo ou vice versa.
Como conseguirei resolver essa situação
AGRADEÇO O APOIO
Galera a minha dúvida é a seguinte
fiz uma tela de consulta onde estou utilizando o LIKE para fazer as pesquisas, mas estou tendo um problema, no cadastro as vezes digital em maiusculo ou minusculo e na hora de fazer a filtragem ele só acha os que tá em maiúsculo ou vice versa.
Como conseguirei resolver essa situação
AGRADEÇO O APOIO
Você só esqueceu de mencionar o BANCO DE DADOS.
Bom, vou citar um exemplo com SQL SERVER.
Maiúscula
[ô]%VALOR%[ô]
Minúscula
[ô]%valor%[ô]
Teste e retorne o resultado.
Bom, vou citar um exemplo com SQL SERVER.
SELECT * FROM Tabela WHERE UPPER(Coluna) LIKE
SELECT * FROM Tabela WHERE LOWER(Coluna) LIKE
Teste e retorne o resultado.
NEGRON, boa noite.
Para resolver estes casos adote sempre um padrão na hora de gravar os dados na tabela. No meu caso eu sempre gravo os dados em maiúsculo pois assim evito problemas com nomes pessoais.....
Agora para você resolver sua consulta acrescente uma variavel que irá receber o valor para a consulta e antes de passar o valor para esta variável faça mais ou menos assim:
OK????
Tenta ai e qualuqer coisa vc reporta novamente.....
Para resolver estes casos adote sempre um padrão na hora de gravar os dados na tabela. No meu caso eu sempre gravo os dados em maiúsculo pois assim evito problemas com nomes pessoais.....
Agora para você resolver sua consulta acrescente uma variavel que irá receber o valor para a consulta e antes de passar o valor para esta variável faça mais ou menos assim:
Dim Parametro As String
Parametro = UCase(Text1.Text)
OK????
Tenta ai e qualuqer coisa vc reporta novamente.....
não fonciona em MySQL
SELECT id, nome, obs
FROM Clientes
WHERE (nome LIKE ? + [ô]%[ô])
SELECT id, nome, obs
FROM Clientes
WHERE (nome LIKE ? + [ô]%[ô])
Boa Noite Amigos
Galera deem uma olhada no meu código
Galera essa parte em negrito que eu gostaria de converter em maiusculo
Antes do LIKE NOMEPROP, porque assim coincidi a pesquisa
Galera deem uma olhada no meu código
Public Function FILTROPROP(Carregarprop As Object, Optional ByVal PEGANDOPROP As String) As Boolean
Set TABPROPRIETARIO = New ADODB.Recordset
FILTROPROP = False
Dim ALTERPROP As String
Dim ALTERNOME As String
[ô]ALTERNOME = UCase(NOMEPROP)
[ô]ALTERPROP = StrConv(PEGANDOPROP, vbUpperCase)
TABPROPRIETARIO.Open [Ô] SELECT CODIGOPROP,NOMEPROP,ENDERECOPROP,NUMEROPROP,BAIRROPROP,CIDADEPROP,CEPPROP,UFPROP,ESTCIVILPROP,NASCIMENTOPROP,CPFPROP,RGPROP,FONE1PROP,FONE2PROP,EMAILPROP from PROPRIETARIO WHERE NOMEPROP LIKE [ô]%[Ô] & UCase(PEGANDOPROP) & [Ô]%[ô][Ô], CONECTABANCO
If Not TABPROPRIETARIO.EOF Then
Do While Not TABPROPRIETARIO.EOF
Set LISTAGEM = Carregarprop.ListItems.Add(, , (TABPROPRIETARIO.Fields(0)))
LISTAGEM.SUBITEMS(1) = Trim(TABPROPRIETARIO.Fields(1))
LISTAGEM.SUBITEMS(2) = Trim(TABPROPRIETARIO.Fields(2))
LISTAGEM.SUBITEMS(3) = Trim(TABPROPRIETARIO.Fields(3))
LISTAGEM.SUBITEMS(4) = Trim(TABPROPRIETARIO.Fields(4))
LISTAGEM.SUBITEMS(5) = Trim(TABPROPRIETARIO.Fields(5))
TABPROPRIETARIO.MoveNext
Loop
FILTROPROP = True
End If
TABPROPRIETARIO.Close
Set TABPROPRIETARIO = Nothing
End Function
Galera essa parte em negrito que eu gostaria de converter em maiusculo
Antes do LIKE NOMEPROP, porque assim coincidi a pesquisa
GALERA DEU CERTO
A DICA DO TECLA FOI SHOW DE BOLA........ iuuuuuuuuuuup
Tô postando o código já corrigido e funcionando OK
A DICA DO TECLA FOI SHOW DE BOLA........ iuuuuuuuuuuup
Tô postando o código já corrigido e funcionando OK
Public Function FILTROPROP(Carregarprop As Object, Optional ByVal PEGANDOPROP As String) As Boolean
Set TABPROPRIETARIO = New ADODB.Recordset
FILTROPROP = False
TABPROPRIETARIO.Open [Ô] SELECT CODIGOPROP,NOMEPROP,ENDERECOPROP,NUMEROPROP,BAIRROPROP,CIDADEPROP,CEPPROP,UFPROP,ESTCIVILPROP,NASCIMENTOPROP,CPFPROP,RGPROP,FONE1PROP,FONE2PROP,EMAILPROP from PROPRIETARIO WHERE UPPER(NOMEPROP) LIKE [ô]%[Ô] & UCase(PEGANDOPROP) & [Ô]%[ô][Ô], CONECTABANCO
If Not TABPROPRIETARIO.EOF Then
Do While Not TABPROPRIETARIO.EOF
Set LISTAGEM = Carregarprop.ListItems.Add(, , (TABPROPRIETARIO.Fields(0)))
LISTAGEM.SUBITEMS(1) = Trim(TABPROPRIETARIO.Fields(1))
LISTAGEM.SUBITEMS(2) = Trim(TABPROPRIETARIO.Fields(2))
LISTAGEM.SUBITEMS(3) = Trim(TABPROPRIETARIO.Fields(3))
LISTAGEM.SUBITEMS(4) = Trim(TABPROPRIETARIO.Fields(4))
LISTAGEM.SUBITEMS(5) = Trim(TABPROPRIETARIO.Fields(5))
TABPROPRIETARIO.MoveNext
Loop
FILTROPROP = True
End If
TABPROPRIETARIO.Close
Set TABPROPRIETARIO = Nothing
End Function
Valeu Galerinha
Brigadão
Eu Amo esse forum
Tópico encerrado , respostas não são mais permitidas