Bonjour à tous,

Je sollicite votre aide concernant un problème avec une requête SQL en C#.

Ma requête fonctionne bien (testé sous Access). Elle fonctionne également bien en C# lorsqu'elle est de la forme suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
 
	Local_reader = Globals.Bdd.dbSendSqlQuery("SELECT SUM(TOTAL_KWH_JOUR) AS COMPTEUR_PERMANANENT "+
				"FROM "+
				"( "+
				"SELECT JOUR, SUM(KWH) AS TOTAL_KWH_JOUR "+
				"FROM "+
				"( "+
				"SELECT datevalue(ecoEnergie.DATE_HEURE) AS JOUR, Hour(ecoEnergie.DATE_HEURE) AS HEURE, Avg(ecoEnergie.KW_DOM) AS KWH "+
				"FROM ecoEnergie "+	
				"WHERE datevalue(ecoEnergie.DATE_HEURE) = '02/11/2011' "+
				"GROUP BY datevalue(ecoEnergie.DATE_HEURE), Hour(ecoEnergie.DATE_HEURE) "+
				") "+
				"GROUP BY JOUR "+
				");");
			while (Local_reader.Read())
			{
				Globals.Tags.COMPTEUR_JOUR_DOM.Value = Convert.ToDouble(Local_reader[0].ToString());
				//ListBox1.Items.Add(Local_reader[0].ToString());
			}
			Local_reader.Close();
Mon soucis se situe au niveau de la date. Dans mon cas ci-dessus, je rentre ma date directement '02/11/2011'.

Je souhaite pouvoir rentrer la date en récupérant l'heure du PC :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
 
	Local_reader = Globals.Bdd.dbSendSqlQuery("SELECT SUM(TOTAL_KWH_JOUR) AS COMPTEUR_PERMANANENT "+
				"FROM "+
				"( "+
				"SELECT JOUR, SUM(KWH) AS TOTAL_KWH_JOUR "+
				"FROM "+
				"( "+
				"SELECT datevalue(ecoEnergie.DATE_HEURE) AS JOUR, Hour(ecoEnergie.DATE_HEURE) AS HEURE, Avg(ecoEnergie.KW_DOM) AS KWH "+
				"FROM ecoEnergie "+	
				//"WHERE datevalue(ecoEnergie.DATE_HEURE) = datevalue("+DateTime.Now.ToString()+") "+
				"GROUP BY datevalue(ecoEnergie.DATE_HEURE), Hour(ecoEnergie.DATE_HEURE) "+
				") "+
				"GROUP BY JOUR "+
				");");
			while (Local_reader.Read())
			{
				Globals.Tags.COMPTEUR_JOUR_DOM.Value = Convert.ToDouble(Local_reader[0].ToString());
				//ListBox1.Items.Add(Local_reader[0].ToString());
			}
			Local_reader.Close();
Cela ne fonctionne pas, j'ai une exception.

Auriez-vous des pistes pour me mettre sur la voie? Car je n'ai trouvé de méthode C# pour récupérer juste la date de "DateTime.now"

Merci