CONSULTA SQL - COMO USUAR VARIAVEIS NA CONSULTA

AQUILESBRUM 20/05/2010 10:06:10
#342269
Bom dia pessoal, estou com uma dúvida a respeito de como usar uma variável em uma consulta SQL. Neste caso preciso fazer uma consulta por período de tempo usando a hora no formato [Ô]##:##:##[Ô]. Tenho que fazer alguma formatação na hora?

PS: Estou usando o SQL Server 2005

SQL = [Ô]SELECT Produto,Quantidade,[Ô] _
+ [Ô](SELECT Produtos.DescricaoDoProduto FROM Produtos WHERE Produto = CodigoDoProduto)AS Descricao,[Ô] _
+ [Ô]CONVERT (VARCHAR,Valor,108)as Valor,Cota,OperadorVenda,HoraDaVenda[Ô] _
+ [Ô] FROM VendasDiario[Ô] _
+ [Ô] WHERE HoraDaVenda[Ô] _
+ [Ô] BETWEEN [Ô] _
+ [Ô][Ô] & [Ô][ô][Ô] & mskHoraInicial.Text & [Ô][ô][Ô] & [Ô][Ô] _
+ [Ô] AND [Ô] _
+ [Ô][Ô] & [Ô][ô][Ô] & mskHoraFinal.Text & [Ô][ô][Ô] & [Ô][Ô] _
+ [Ô] ORDER BY[Ô] _
+ [Ô] HoraDaVenda[Ô]
LLAIA 21/05/2010 09:45:18
#342363
cara, não trabalho com sql server, tente cercar as data com #.

+ [Ô] BETWEEN [Ô] _
+ [Ô][Ô] & [Ô]#[ô][Ô] & mskHoraInicial.Text & [Ô]#[ô][Ô] & [Ô][Ô] _
+ [Ô] AND [Ô] _
+ [Ô][Ô] & [Ô]#[ô][Ô] & mskHoraFinal.Text & [Ô]#[ô][Ô] & [Ô][Ô] _


é só um palpite
ASHKATCHUP 21/05/2010 10:20:39
#342370
Resposta escolhida
O [Ô]#[Ô] é somente para Access...

Tenta fazer assim:

Ano-mes-dia hora:minuto:segundo.000

[ô]2010-05-21 10:20:02.000[ô]
AQUILESBRUM 21/05/2010 14:47:13
#342415
Pessoal resolvi o problema inspirados pelos nossos colegas ai de cima. O que eu fiz:

O problema acontecia quando eu mandava para o SQL Server uma hora no formato ##:##:## ai então dava erro, pois ele não reconhecia como padrão. Então eu complementei a hora com duas strings constantes. Ficou assim [Ô]1899-12-30 [Ô] & ##:##:## & [Ô].000[Ô], deste jeito o SQL recebe a hora no formato padrão.


+ [Ô] BETWEEN [Ô] _
+ [Ô][Ô] & [Ô][ô][Ô] & [Ô]1899-12-30 [Ô] & mskHoraInicial.Text & [Ô].000[Ô] & [Ô][ô][Ô] & [Ô][Ô] _
+ [Ô] AND [Ô] _
+ [Ô][Ô] & [Ô][ô][Ô] & [Ô]1899-12-30 [Ô] & mskHoraFinal.Text & [Ô].000[Ô] & [Ô][ô][Ô] & [Ô][Ô] _
+ [Ô] ORDER BY[Ô] _
+ [Ô] HoraDaVenda[Ô]
Tópico encerrado , respostas não são mais permitidas