[Resolvido] Ajudinha com data Java para JDBC

Olá! Estou fazendo um programa (um trabalho da faculdade) e nele há um campo do usuário inserir a data, na verdade são dois campos, a data atual e a data do retorno. A data atual eu inseri no banco (Mysql) usando a função ‘now()’ automaticamente, assim o usuário não necessita digita-lá. O professor que nós façamos a inserção dos dados através de procedures, até aó tudo bem, criei a procedure e tudo, só que tem um porém, ele pediu que no programa seja inserido a data no formato dd/mm/yyyy e no banco salve no formato do propio banco que é yyyy/mm/dd.

O meu problema é o seguinte, ele quer que a gente faça a conversão da data no proprio banco através de uma function, não sei com o fazer, sei faze-lo somente pelo java, tem como me ajudarem?

Obs.: Desculpe se estou na área errada, sou novato aqui ainda, caso estiver na área errada, por favor alguém poderia mover o tópico?

Att. Ingo G. B. Eyng

Para quem estiver interessado eu consegui, criei uma função no Mysql que muda a data do formato brasileiro ‘dd-mm-yyyy’ para o formato do banco ‘yyyy-mm-dd’, assim consigo inserir no banco com o usuario colocando a data no formato brasileiro lá no programa.

Eu apenas chamo a função na hora de inserir, colocando a variavel com a data inserida pelo usuario chamando a função. Assim:

[quote]variavel_data_usuario = ‘25-09-2011’
select converte_data(variavel_data_usuario);[/quote]
O retorno seria:

Assim o banco aceitaria a data ao inves de adicionar uma data nula ‘0000-00-00’
O código da function que criei está ai pra quem quiser:

DELIMITER || CREATE FUNCTION converte_data(p_data varchar(10)) RETURNS VARCHAR(10) RETURN str_to_date(p_data, '%d-%m-%Y');; || DELIMITER ;Demorei um pouquinho pra achar o ‘str_to_date’ não conhecia ainda ^^, afinal to começando agora né.

Quando comecei o meu projeto de conclusão tinha a mesma dúvida que você e um amigo me passou esses métodos. Eu uso eles na hora que eu pego a data do meu jTextField para converter pro formato usado no BD ou vice-versa:

[code] // Passa datas no formato dd/MM/yyyy para yyyy-MM-dd
public static String formatDate(String data){
String date =new String();

        date+=data.substring(6,10);
        date+="-"+data.substring(3,5)+"-";
        date+=data.substring(0,2);
    
    
   return date;
} 

  // Passa datas no formato yyyy-MM-dd para dd/MM/yyyy
public static String formatDateSQL(String data){
    String date =new String();

        date+=data.substring(8,10);
        date+="/"+data.substring(5,7);
        date+="/"+data.substring(0,4);
   return date;
 }

[/code]

Tadeu-Costa

vlw cara, teus metodos foram muito uteis, me ajudaram muito, estou até utilizando eles no meu projeto.

pude eliminar a function do banco e pra fica mais legal agora o usuario pode inserir a data com as barrinhas ^^ ao inves de traços ^^