2017-03-09 4 views
1

Dies ist mein Code:prüfen, ob ein bestimmtes Datum vor dem aktuellen Datum liegt in C# und mySql

string query = "UPDATE tblschedule Set Status='" + "Complete" + "'Where Date <= '"+ DateTime.Now +"';"; 

Es funktioniert, wenn das Datum in der SQL-Tabelle vor einem Monat. Zum Beispiel:

Given Date: 4/9/2017 
Date Now: 3/9/2017 

Und der Status wird nicht geändert, weil es nicht vor dem aktuellen Datum war.

Aber wenn es nicht einen Monat voraus ist. Zum Beispiel:

Given Date: 3/20/2017 
Date Now: 3/9/2017 

Der Status wird geändert, um abzuschließen, obwohl es nicht vor dem aktuellen Datum ist.

+0

i-Typ wissen von 'Date' Spalte' tblschedule' Tabelle. –

+0

ich setze es auf varchar –

+0

Also versuche meine Antwort.Es wird dein Problem lösen. –

Antwort

1
string query = "UPDATE tblschedule Set Status='Complete' Where STR_TO_DATE(Date,'%m/%d/%Y') <= STR_TO_DATE('"+DateTime.Now+"','%m/%d/%Y')"; 

Versuchen Sie oben code.Hope das wird hilft.

+0

@Frankkgui Versuchen Sie aktualisierte Antwort. –

1
string query = "UPDATE tblschedule Set Status='" + "Complete" + "'Where      
       CAST(Date AS DATETIME) <="'+DateTime.Now+"';"; 

Beachten Sie, dass, "Datum" Parameter in CAST-Funktion ist die column

Verwandte Themen