// Boucle parcourant toutes les dates du 01/01/2010 à aujourd'hui inclus for(DateTime date = new DateTime(2010, 1, 1); date <= DateTime.Today; date = date.AddDays(1)) { // On parcours le tableau pour savoir s'il contient la date en cours bool contientLaDate = false; foreach(DataRow ligne in setter.Tables["consultants"].Rows) { if(DateTime.Parse(ligne[2].ToString()) == date) { contientLaDate = true; break; // La table contient la date, on peut sortir de la boucle foreach } } if(!contientLaDate) { MessageBox.Show(string.format("La date {0} n'apparaît pas dans la base.", date)); } }
SqlConnection connexion = new SqlConnection(connectionString); SqlCommand commande = new SqlCommand(); commande.Connection = connexion; commande.CommandText "SELECT Count(*) FROM nomDeLaTable WHERE nomDuChampDate @date"; connexion.Open(); // Boucle parcourant toutes les dates du 01/01/2010 à aujourd'hui inclus for(DateTime date = new DateTime(2010, 1, 1); date <= DateTime.Today; date = date.AddDays(1)) { // On regarde si la date est présente dans la base // On efface les paramètres précédents de la requête commande.Parameters.Clear(); // On met la nouvelle valeur de date dans le paramètre @date commande.Parameters.Add(new SqlParameter("@date", date)); // On exécute la requête SQL pour savoir combien de fois cette date apparaît dans la base string nombre = commande.ExecuteScalar().ToString(); // Si elle apparaît 0 fois if(nombre == "0") { MessageBox.Show(string.format("La date {0} n'apparaît pas dans la base.", date)); } }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionSELECT Table2.ToutesDates AS DatesManquantes FROM Table2 LEFT OUTER JOIN Table1 ON Table2.ToutesDates = DatesAVerifier WHERE Table1.DatesAVerifier IS NULL AND Table2.ToutesDates BETWEEN '01/01/2010' AND GETDATE()
commande.CommandText = "SELECT DISTINCT DatesAVerifier FROM Table1 WHERE DatesAVerifier BETWEEN '01/01/2010' AND GETDATE()"; SqlDataReader reader = commande.ExecuteReader(); DateTime date = new DateTime(2010, 1, 1); while(reader.Read()) { while(DateTime.Parse(reader[0].ToString()) != date) { MessageBox.Show(string.Format("La date {0} n'apparaît pas dans la base.", date)); date = date.AddDays(1); } date = date.AddDays(1); }