Jeg kan godt lide @a_horse_with_no_name
's svar, men hvis du ikke har kontrol over forbindelsen, kan du ændre forespørgslen for at returnere en null
i stedet:
select
...
case when my_date_col = '0000-00-00' then null else my_date_col end as my_date_col,
...
eller den lidt mere kortfattede, men kun mysql, mulighed:
if(my_date_col = '0000-00-00', null, my_date_col) as my_date_col
Det anbefales også at være forsigtig med at ændre hele applikationens JDBC-adfærd, da du kan bryde kode, der er afhængig af, at sådanne datoer returneres - måske bruger de rs.getString(i)
i stedet. Du bliver nødt til at regressionsteste alle andre forespørgsler for at være sikker.