Problemas com java.sql.Date para inserir

2 respostas
J

Pessoal, eu estou com um problema na hora de inserir uma data no meu banco. Quando eu faço a inserção de uma data 2009-10-14 ele joga no banco da seguinte maneira: 3909-11-14. não sei mais o que fazer.

vamos para o código.

tenho um classe DAO para fazer essa inserção e sua estrutura é a seguinte:

import java.sql.Time;
                import java.sql.Date;
               ...

                public Class AgendaDependencia{
                               private Time horaInicio;
                               private Date data;
                }
               
                ...
 
                public boolean adicionarAgendaDependencia(AgendaDependencia agendaDependencia) throws SQLException{
		
		String sql = "insert into tbteste(hora, data) values(?, ?)";
		
		PreparedStatement ps;
		try{
			ps = conn.prepareStatement(sql);
			ps.setTime(1, agendaDependencia.getHoraInicio());
			ps.setDate(2, agendaDependencia.getData());
			
			ps.execute();
		}finally{
			conn.close();
		}
		return true;
	}

eu já tentei inserir também de outras formas como:

...
ps.setTimestamp(2, new Timestamp(agendaDependencia.getData().getTime()));
...
ps.setTimestamp(2,new Timestamp(new java.util.Date(2009, 10, 20).getTime()));
...

lembrando que meu banco é MYSQL e meu campo é do tipo DATE.

Pessoal, se vcs puderem que ajudar o quanto antes eu agradeço.

Abraços

2 Respostas

pablouu

e se a data for ao invés de 2009-10-14 for assim:14/10/2009. ou 10/14/2009, ou de qualquer outra forma da o mesmo resultado??

J

eu estou passando a data no construtor do Date

Date data = new Date(2009, 10, 14);

não tem nem como eu passar com “/”

Criado 14 de outubro de 2009
Ultima resposta 14 de out. de 2009
Respostas 2
Participantes 2