Líbí se mi @a_horse_with_no_name
odpověď uživatele, ale pokud nemáte kontrolu nad připojením, můžete změnit dotaz tak, aby vrátil null
místo toho:
select
...
case when my_date_col = '0000-00-00' then null else my_date_col end as my_date_col,
...
nebo trochu stručnější, ale pouze mysql, možnost:
if(my_date_col = '0000-00-00', null, my_date_col) as my_date_col
Také se doporučuje opatrnost při změně chování JDBC celé aplikace, protože můžete narušit kód, který závisí na vracení takových dat – možná používají rs.getString(i)
namísto. Pro jistotu byste museli regresně otestovat všechny ostatní dotazy.