SELECT COM HORARIO

USUARIO.EXCLUIDOS 02/06/2005 14:48:04
#86573
Pessoal estou tendo problema para comparar horarios no banco de dados.
Estou usando access 97, o campo esta como data/hora, mask 00:00:00 no banco.

O que tenho que fazer para o select abaixo funcione corretamente;

dim vhora as date 'também ja utilizei a variavel declara como string
dim strSQL as string

vhora = 15:10:00

strSQL = "select * from where campohorario = vhora"

set rs = bd.openrecordeset(strSQL)

erro 3664 - type mismatch in criteria expression

Obs.
apos isso faço uma inserção no banco utilizando a mesma variavel e não ocorre erro nenhum.
quando o banco esta vazio tambem não ocorre nenhum erro.


Se alguem tiver alguma dica por favor me enviem.


Desde agradeço a atenção de todos
LUCASVA 02/06/2005 14:54:35
#86575
"select * from where campohorario = #vhora# "


testa ai ;
USUARIO.EXCLUIDOS 02/06/2005 15:01:56
#86577
dim vhora as date 'também ja utilizei a variavel declara como string
dim strSQL as string

vhora = 15:10:00

strSQL = "select * from SUATABELA where campohorario = #" & vhora & "#"

set rs = bd.openrecordeset(strSQL)
USUARIO.EXCLUIDOS 02/06/2005 15:02:25
#86578
Estou sem o Visual Basic e Acess aqui para testar, mas acho que você deveria colocar a máscara do campo lá no banco de dados assim : hh:mm:ss
E instrução SQL assim:
"select * from where campohorario =#" & vhora & "#"

Desculpe se não tenho como testar... mas acho que deveria ser assim

USUARIO.EXCLUIDOS 02/06/2005 16:56:59
#86634
Galera infelizmente, já tentei isso tambem.
Por desencargo de conciencia, testei novamente mas o erro é o mesmo. [S52]

Mais obrigado pela força
JEAN.JEDSON 02/06/2005 16:59:46
#86635
tenta assim:
select * from where campo LIKE '" & vhora & "%'"
USUARIO.EXCLUIDOS 02/06/2005 17:04:31
#86636
não estamos atentando para um detalhe, primeiro vamos ver que formato de dados uma consulta sql retorna para voce, faça uma consulta assim:

"select campohorario from suatabela"
depois um msgbox
msgbox rs("campohorario")

depois poste qual o formato que apareceu na msgbox
JEAN.JEDSON 02/06/2005 17:04:54
#86637
ops
naun é vhora... é o campo de data, no formato dd/mm/yyyy
(ou mm/dd/yyyy - vc terá que testar)
USUARIO.EXCLUIDOS 02/06/2005 17:59:11
#86657
wiliam

strSQL = "select campohorario from tabela"
Set Rs = DB.OpenRecordset(strSQL)
MsgBox "hora = " & Rs.Fields("campohorario")

resultado:

[txt-color=#0000ff]hora = 23:45:00[/txt-color]

Eu não tive uma esporo que voce consiga enchargar [S95] o que esta acontecendo


Grato mais uma vez
JEAN.JEDSON 02/06/2005 18:18:15
#86665
BEM...
tenta assim:

SELECT * FROM tabela WHERE campo LIKE '"%" & vhora & "%'"

deve resolver.
JEAN.JEDSON 02/06/2005 18:22:33
#86667
ou ainda, assim:

SELECT * FROM tabela WHERE campo = '"" & FORMAT(vhora, "hh:mm:ss") & "'"
Página 1 de 2 [13 registro(s)]
Tópico encerrado , respostas não são mais permitidas