sql >> Databáze >  >> RDS >> Mysql

Trvalé datum v databázi se nerovná datu načtení

Z dokumentace MySQL :

Všimněte si, že byste stejně neměli k porovnání dat používat rovná se, protože různé podtřídy Date mají chybné implementace, které způsobují problémy, jako je 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. SQLite Connection uniklo, i když vše bylo uzavřeno

  2. Řešení s vysokou závažností chyb v SQL Server

  3. Vytvoření tabulky s názvem proměnné php mysql

  4. Nové a vyvíjející se podnikové funkce PostgreSQL s nejnovějšími verzemi