[Convertendo data do mysql]

Pessoal como converto data do mysql ? pq la tem o padrao americano certo? tem como mudar o padrao do mysql para padrao br?

Meu, armazenar a data de maneira diferente eu acho (quase certeza) que nao eh possivel.
Mas da pra vc fazer o contrario, buscar a data num formato que seja conveniente pra vc, por exemplo:

mysql> SELECT DATE_FORMAT(‘2009-03-03 10:10:00’, ‘%d %M %Y’);
-> ‘03 March 2009’

Ou

mysql> SELECT DATE_FORMAT(‘2009-03-03 10:10:00’, ‘%d/%m/%Y’);
-> ‘03/03/2009’

Vc pode formatar a data do jeito que vc quiser no select.

//Daniel

imagino que você tenha um ResultSet para fazer a consulta ao banco de dados.

então, faça o seguinte:

Date d = rs.getDate("data"); // a data SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); // formato de data desejado String s = sdf.format(d); // data formatada
ou apenas:

String s = new SimpleDateFormat("dd/MM/yyyy").format(rs.getDate("data")); // data formatada

para mais informações sobre formatação de datas, veja aqui.

abraço.

[quote=wbdsjunior]imagino que você tenha um ResultSet para fazer a consulta ao banco de dados.

então, faça o seguinte:

Date d = rs.getDate("data"); // a data SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); // formato de data desejado String s = sdf.format(d); // data formatada
ou apenas:

String s = new SimpleDateFormat("dd/MM/yyyy").format(rs.getDate("data")); // data formatada

para mais informações sobre formatação de datas, veja aqui.

abraço.[/quote]

Acho que nao era bem isso o que ele perguntou.
Meu entendimento eh que ele queria alterar como o dado eh armazenado no banco, ou seja, mudar de algo assim 2009-03-03 10:10:00
para 03-03-2009 10:10:00

O que eu acho que nao seja possivel, entao ele tera duas alternativas, ou usar o DATE_FORMAT direto no banco (que vai economizar algumas linhas de codigo java ou entao fazer mais ou menos o codigo que vc postou. :slight_smile:

//Daniel

na verdade, também entendi isso, mas esqueci de comentar.

o único problema de formatar direto no banco é internacionalização.

abraço.

ummm… fui no meu console mysql e digitei SELECT DATE_FORMAT(‘2009-03-03’, ‘%d %M %Y’); la apareceu uma tabelinha pequena escrito 03 March 2009, e agora? pq no meu mysql front continua o formato errado la no banco! ta 2009-03-03 ;/

porem depois que digitei esse codigo no console do sql agora quando tento efetuar cadastro ele da um erro justamente aonde mexi veja

run:
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect date value: '-  -' for column 'dataA' at row 1
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3374)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3308)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1837)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1961)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2543)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1737)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2022)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1940)
        at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1925)
        at br.com.Papelaria.Cliente.ClienteControl.cadastrarClienteJ(ClienteControl.java:160)

falando que tem incopatibilidade com os 2 traços ‘- -’ sendo que no meu banco eu cadastro com traço e formatei meu jFormattedTextfield corretamente tambem veja =>

private void formatoDataA()
    {
        try
        {
            formatoDataA = new MaskFormatter("####-##-##");

        }
        catch(Exception e)
        {
            //JOptionPane.showMessageDialog(null, "Não foi possivel setar a máscara, erro = "+e);
            e.printStackTrace();
        }
    }

OBS: ele chega salvar no banco mas gera o erro postado!

por que ao invés de inserir a data como String você não insere ela como Date mesmo? O PreparedStatement se encarrega de fazer isso.

aí você insere e recupera a data como Date e se precisar exibir o dado, formata com o SimpleDateFormat.

abraço.

cara tentei ler varios artigos na internet tente mexe no codigo la mas nao consigo de jeito maneira converte a data no meu mysql ;/// algueim tem algum exemplo desse codigo ? muito obrigado