R3C
|
SÃO PAULO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 19/06/2008 09:29 hs
Bom dia pessoal.
Estou tentando criar uma consulta SQL que busca registros com dois parâmetros na mesma tabela. Possuo uma tabela de veículos (tabFrota), onde devo buscar registros onde Gasolina = "ÁLCOOL" e ANO="00", por exemplo. No entanto o primeiro campo de busca na estrutura SQL está com o valor dentro de uma variável (varCombustivel). A SQL construída até o momento (que não deu certo) é:
"SELECT * FROM tabFrota WHERE COMBUSTIVEL ='" & Trim$(varCombustivel) & "' and ANO= " & "00" & "'"
Detalhes: Conexão ADO BD MySQL
Agradeço a quem possa ajudar.
|
|
|
|
|
Postada em 19/06/2008 10:02 hs
R3C, se os valores de varcombustivel e ano forem tipo texto, troque o = (igual) por LIKE, assim "SELECT * FROM tabFrota WHERE COMBUSTIVEL LIKE '" & Trim$(varCombustivel) & "' and ANO LIKE '" & '00' & "'"
Qualquer coisa poste de novo. Até mais.
|
|
|
|
Postada em 19/06/2008 11:27 hs
Perci, obrigado pela resposta.
Os campos "Combustível" e "ANO" realmente são campos do tipo texto. Fiz as alterações que você sugeriu, no entanto o erro continua. Ao executar surge a msg: "O driver ODBC não oferece suporte para as propriedades solicitadas". (Este erro ocorre sempre que há incosistência em sintaxe SQL).
Segue o código completo da rotina:
Dim varCombustivel As String procurar = "ÁLCOOL"
Dim ob_A As ADODB.Recordset Set ob_A = New ADODB.Recordset SQL1 = "SELECT * FROM tabFrota WHERE COMBUSTIVEL LIKE '" & Trim$(varCombustivel) & "' AND ANO LIKE '" & "00" & "'" ob_A.Open SQL1, Con, adOpenDynamic, adLockOptimistic, adCmdText
ob_A.Close
'Obs: na sintaxe SQL que você passou tive que substituir as aspas simples ao lado do valor '00' por aspas duplas: "00".
|
|
|
Treze
|
SÃO VICENTE SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 19/06/2008 11:37 hs
O unico erro é sua QUERY veja como deve estar "SELECT * FROM tabFrota WHERE COMBUSTIVEL ='" & Trim$(varCombustivel) & "' and ANO='00'"
veja agora se funciona
|
TÓPICO EDITADO
|
|
|
|
|
Postada em 19/06/2008 14:09 hs
Deu certo.
Muito obrigado!
|
|
|
|
Postada em 19/06/2008 14:20 hs
|
|
|