phpMyAdmin
 sql >> Baza danych >  >> Database Tools >> phpMyAdmin

Ciąg znaków nie został rozpoznany jako prawidłowy DateTime phpMyAdmin

[Ponieważ nie jest dobrze, jeśli będziemy kontynuować w komentarzach (komentarze będą długie), po prostu przedstawię tutaj to, co myślę jako rozwiązanie]

Aby sformatować dateBuy do formatu, który chcesz, powinieneś również umieścić format ciągu w ToString()

Oznacza to, że zamiast

dateBuy = (DateTime.ParseExact(dateBuy2, "yyyy-MM-dd", null)).ToString();

umieścić

dateBuy = (DateTime.ParseExact(dateBuy2, "yyyy-MM-dd", null)).ToString("yyyy-MM-dd");

W przeciwnym razie możliwe jest dla ToString() stworzyć coś w stylu „2016-10-16 12:00:00 AM” zamiast „2015-10-16”

Jednak ponieważ używasz ParseExact , dane wejściowe dla dateBuy2 musi być również w formacie „rrrr-MM-dd”, co jest sprzeczne z celem. Możesz rozważyć użycie DateTimePicker tak, że możesz kontrolować format wejściowy.

Alternatywnie możesz użyć DateTime.Parse lub TryParse (jak sugeruje Martheen), zamiast tego coś takiego

try {
    DateTime dt = DateTime.Parse(txtDateBuy.Text);
    dateBuy = dt.ToString("yyyy-MM-dd");
} catch (Exception exc) {
    //wrong format, do something to tell the user
}

Jeśli dane wejściowe muszą znajdować się w TextBox lepiej umieść try-catch aby zapobiec awariom programu z powodu pobrania niepoprawnie sformatowanych danych wejściowych, jeśli używasz Parse .

Gdzie tak, jakbyś używał TryParse możesz umieścić go w if-else zamiast tego instrukcja blokowa

DateTime dt;
if (DateTime.TryParse(txtDateBuy.Text, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out dt)) {
    //correct format, do something using dt
} else {
    //incorrect format, warns the user
}

Aby uzyskać CultureInfo enum musisz dodać odniesienie do System.Globalization

[Edytowane zgodnie z sugestią pana Sonera Gonula]




  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Synchronizuj zdalną i lokalną bazę danych MySQL za pomocą phpMyAdmin

  2. Jak utworzyć plik konfiguracyjny dla phpMyAdmin?

  3. phpMyAdmin Nie można uzyskać dostępu do katalogu ustawionego do przesyłania prac

  4. phpmyadmin przenosi tekst z jednego pola do drugiego

  5. Jak mogę wielokrotnie uruchomić zapytanie w phpmyadmin?