Odbc Paradox driver clausola WHERE Data
Domanda
Sto utilizzando un driver ODBC con Paradox. Ho una tabella con una data in esso. Sto cercando di interrogare entro la data in quella colonna. Io non riesco a ottenere la clausola in cui lavorare. Posso vedere la scheda ricerca per interi, ma non so come utilizzare il tempo della data.
OdbcCommand comm= new OdbcCommand("SELECT * FROM [Journal] WHERE" +
"[Date] = 04/02/2009 ",
new OdbcConnection(@"Driver={Microsoft Paradox Driver (*.db )};DriverID=538;Fil=Paradox 5.X;DefaultDir=d:\\ics\\tables\\HISTORY;Dbq=d:\\ics\\tables\\HISTORY;CollatingSequence=ASCII"));
OdbcDataAdapter adapt = new OdbcDataAdapter(comm);
DataTable table = new DataTable();
adapt.Fill(table );
Soluzione
Ok ho capito.
...where [Date] = {d 'yyyy-MM-dd'} AND...
in ODBC è necessario utilizzare il {} per definire un oggetto, e il D definisce il formato della data.
È possibile utilizzare il seguente.
{d 'valore'} aaaa-mm-gg
{t 'valore'} hh: mm: ss
{ts 'valore'} hh aaaa-mm-gg: mm: ss
Altri suggerimenti
Cercare Data funzioni / orario a Paradox che converte una stringa in una data. E 'molto difficile da usare una stringa come una data come nel vostro SQL. Ci deve essere alcune funzioni come TO_DATE o simili che formattare correttamente per voi.