Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Trwała data w bazie danych nie jest równa pobranej dacie

Z dokumentacji MySQL :

Pamiętaj, że i tak nie powinieneś używać equals do porównywania dat, ponieważ różne podklasy Date mają wadliwe implementacje, które powodują problemy, takie jak a.equals(b) && !b.equals(a) :

java.util.Date d1 = java.sql.Date.valueOf("2012-01-01");
java.util.Date d2 = new java.util.Date(d1.getTime());
java.util.Date d3 = new java.sql.Timestamp(d1.getTime());

System.out.println(d1.equals(d2)); // true
System.out.println(d2.equals(d1)); // true
System.out.println(d1.equals(d3)); // true
System.out.println(d3.equals(d1)); // false
System.out.println(d2.equals(d3)); // true
System.out.println(d3.equals(d2)); // false



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapytanie SQL dla najnowszych wiadomości

  2. Tworzenie kopii zapasowej bazy danych w MySQL za pomocą C#

  3. Czy używanie MySQL w środowisku komercyjnym jest legalne?

  4. GPL i libmysqlclient

  5. Pobierz zawartość pliku docx, który został zapisany w bazie danych mysql jako typ blob w php