Stringa Sql per filtrare il "Tempo"

martedì 07 settembre 2010 - 08.54
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows 7  |  Visual Studio 2008  |  SQL Server 2008

darkeric Profilo | Senior Member

Buongiorno ragazzi

Stò sviluppando un piccolo gestionale
e dovrei filtrare una tabella utilizzando l'ora attuale come parametro
in pratica voglio che mi recuperi tutti i record che iniziano prima dell'ora attuale e finiscono dopo

("Select servizio from TurnieServizi Where " + _ "Giorno = " & Today.DayOfWeek & _ " and Inizio < #" & FormatDateTime(Now, DateFormat.LongTime) & _ "# and Fine > #" & FormatDateTime(Now, DateFormat.LongTime) & "#")

Il campo inizio e il campo fine sono entrambi "TIME"

questa stringa però mi restituisce un errore di sintassi quando passo i dati al datatable

"Sintassi non corretta in prossimità di '.58'." dove 58 sono i minuti

mi sono però accorto che nei dati della tabella il tempo è espresso come 00:00:00
mentre il valore di NOW è espresso come 00.00.00
due punti invece del singolo punto
può essere questo il mio problema?
come lo risolvo?
grazie in anticipo

franco.geko Profilo | Junior Member

Ciao,
che database stai usando?
Se fosse un campo Datetime di SQL Server trasformerei il tempo in testo per confrontarlo.
Userei una funzione tipo convert(char(8),nomecampodatetime,108) che trasforma il campo in una stringa di formato "hh:mm:ss" e lo confronterei con una srtringa formattata uguale

Ciao
Franco

darkeric Profilo | Senior Member

Ti ringrazio per la risposta Franco

purtroppo con SQL ci litigo un pochino di questi tempi
ad essere sincero credo dovrei approfondire seriamente l'argomento!

comunque ho risolto il problema creandomi una query parametrica dal Generatore Query del Dataset

passo e chiudo


Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5