2009-04-03 12 views
2

J'utilise un pilote Odbc avec Paradox. J'ai une table avec une date dedans. J'essaie d'interroger par la date dans cette colonne. Je n'arrive pas à faire fonctionner la clause where. Je peux obtenir l'enregistrement en recherchant ints, mais je ne sais pas comment utiliser l'heure de la date.Odbc Paradox Driver Clause WHERE Date

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); 

Répondre

4

Ok, je l'ai compris.

...where [Date] = {d 'yyyy-MM-dd'} AND... 

En odbc, vous devez utiliser {} pour définir un objet, et d définit le format de la date.

Vous pouvez utiliser ce qui suit.

{d 'valeur'} aaaa-mm-jj

{t 'valeur'} hh: mm: ss

{de la valeur "ts} aaaa-mm-jj hh: mm: ss

0

Recherchez les fonctions Date/Heure dans Paradox qui convertissent une chaîne en date. Il est très difficile d'utiliser une chaîne comme une date comme dans votre SQL. Il doit y avoir des fonctions comme TO_DATE ou similaire qui le formateront correctement pour vous.