PESQUISA STRING

USUARIO.EXCLUIDOS 31/05/2007 17:16:48
#219195
Tente isso:

SqlTexto = "SELECT Numero,Nome FROM Dados WHERE Numero Like '" & Left(Trim(TxtMat1.Text,4)) & "*'"
Set TB = BDLista.Execute(SqlTexto)
IRENKO 31/05/2007 17:22:44
#219199
Veja bem no banco esta ex: 1615.1, quero digitar no TxtMat1.Text somente 1615 e buscar o cara. Os 4 primeiros digitos não se repetem no banco.
IRENKO 31/05/2007 17:25:51
#219200
Biodiesel deu erro:

(Numero de argumentos incorretos ou atribuição de propriedade invalida)
USUARIO.EXCLUIDOS 31/05/2007 17:30:11
#219206
Tente assim. é com o like que você chegará a um resultado. Porém como não gosto de usar Like, não sei a grafia está correta. Se não for com asterisco (*), tente com % no lugar. Outra coisa: cada banco de dados trabalha o Like de um jeito.

SqlTexto = "SELECT Numero, Nome FROM Dados WHERE Numero Like '" & TxtMat1.Text & "*'"
Set TB = BDLista.Execute(SqlTexto)


USUARIO.EXCLUIDOS 31/05/2007 17:31:26
#219208
pq se tiver no banco de dados com a virgula tenta isso

SqlTexto = "SELECT Numero,Nome FROM Dados WHERE Numero LIKE 'Left(Trim(TxtMat1.Text), 4)'"
Set TB = BDLista.Execute(SqlTexto)
USUARIO.EXCLUIDOS 31/05/2007 17:33:25
#219209
Bom, então tente direto na instrução sql:

Access
SqlTexto = "SELECT Numero,Nome FROM Dados WHERE Mid(Numero,1,4) = '" & Trim(TxtMat1.Text) & "'"
Set TB = BDLista.Execute(SqlTexto)

ou

SQL Server
SqlTexto = "SELECT Numero,Nome FROM Dados WHERE Substring(Numero,1,4) = '" & Trim(TxtMat1.Text) & "'"
Set TB = BDLista.Execute(SqlTexto)



USUARIO.EXCLUIDOS 31/05/2007 17:36:48
#219210
Veja como funciona o like (extraído de uma resposta do nosso amigo HUGOSSOUZA):

like é oq vc gostaria que encontrasse naquele campo com aquela condição

ex:

campo like '%" condicao "%' 'a condição que você passou ele vai procurar em todo o campo
campo like '" condicao "%' 'vai procurar tudo que começa a condição
campo like '%" condicao "' 'vai pesquisar tudo que termina com a condição

no vb6 em access com conexao ADO vc usa '%' agora com conexao DAO usa '*'.
na maioria dos outros bancos é '%'

ex:

"tabela1"
jose da silva
augusto jose
maria jose silva

select * from tabela1 where nome like 'jose%'
resultado = 'jose da silva'

select * from tabela1 where nome like '%jose%'
resultado =
'jose da silva'
'augusto jose'
'maria jose silva'

select * from tabela1 where nome like '%jose'
resultado = 'augusto jose'
USUARIO.EXCLUIDOS 31/05/2007 17:37:08
#219211
Testei aqui no Access e funcionou, a instrução direto na sql...rs

Access
SqlTexto = "SELECT Numero,Nome FROM Dados WHERE Mid(Numero,1,4) = '" & Trim(TxtMat1.Text) & "'"
Set TB = BDLista.Execute(SqlTexto)
IRENKO 01/06/2007 11:35:36
#219332
Piolho, sua ultima sugestão deu certo. Grato.
Página 2 de 2 [19 registro(s)]
Tópico encerrado , respostas não são mais permitidas