sql >> Databasteknik >  >> RDS >> Mysql

Bevarat datum i databasen är inte lika med hämtat datum

Från MySQL-dokumentationen :

Observera att du inte bör använda lika för att jämföra datum ändå, eftersom de olika Date-underklasserna har buggy-implementationer, som orsakar problem som 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. Lagring av sessioner i DB-tabellen fungerar inte (med Zend_Session_SaveHandler_DbTable)

  2. 6 anledningar till att Microsoft Access kan hjälpa ditt företag

  3. Begränsa PostgreSQL-användaråtkomst med hjälp av schema och vyer

  4. Standardavvikelsekommando i SQL