Bonjour à tous, c'est la premiere fois que je poste sur ce forum et j'espère que vous pourrez me donner mes indication sur mon problème.
Comme le dit mon titre je cherche à supprimer toutes mes lignes "périmés" sur un planning.

Mon code est le suivant

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
        Dim Connexion = GestionConnection.nouvelleConnection()
        Dim thisDay As DateTime = DateTime.Today
        Dim finSuppression As Boolean = True
        Connexion.Open()
 
        Do
            Dim RequetteSelectionMinimum = "SELECT MIN(fin_indisponibilite) FROM affectation_materiel"
            Dim CommandeSelectionMinimum As New NpgsqlCommand(RequetteSelectionMinimum, Connexion)
            MsgBox(CDate(CommandeSelectionMinimum.ExecuteScalar()).ToString("d"))
            If CDate(CommandeSelectionMinimum.ExecuteScalar()) < thisDay.ToString("d") Then
                MsgBox(thisDay.ToString("d"))
                Supress.supressAssociation(Connexion, CommandeSelectionMinimum.ExecuteScalar())
            Else
                finSuppression = False
            End If
        Loop While finSuppression
Les 2 Msg box donnent les résultats attendus.
Et d'autre part :

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
    Public Shared Sub supressAssociation(ByVal Connexion As NpgsqlConnection, ByVal uneDate As Date)
 
        Try
 
            Dim Requete As String = "DELETE FROM affectation_materiel WHERE fin_indisponibilite=" & Format(uneDate, "dd/mm/yyyy").ToString()
            Dim Commande As New NpgsqlCommand(Requete, Connexion)
            Try
                Commande.ExecuteNonQuery()
            Catch ex As Exception
                Console.WriteLine("Echec de la suppression à la Base de donnée")
                Console.WriteLine(ex.Message)
            End Try
 
            Commande.Dispose()
 
        Catch ex As Exception
            Console.WriteLine("Echec de la connection à la base de donnée")
        End Try
 
 
    End Sub
Et là :

Une exception de première chance de type 'Npgsql.NpgsqlException' s'est produite dans Npgsql.dll
Echec de la suppression à la Base de donnée
ERREUR: 42883: l'opérateur n'existe pas : date = integer

Je suis sur que c'est une erreur bête mais je me creuse la tête depuis des heures, Merci d'avance.