Formato da Data no Postgre  XML
Índice dos Fóruns » Certificação Java
Autor Mensagem
PersioFormigoniPJ
Thread.start()
[Avatar]

Membro desde: 28/06/2007 00:00:00
Mensagens: 28
Offline

Bom Dia/Tarde/Noite

Estou usando Postgre 8.1.4 e estou conseguindo apenas gravar os campos de data no formato MM/DD/AAAA, tem alguma forma de configurar para DD/MM/AAAA automaticamente, ou preciso fazer esta inversão pelo proprio aplicativo em Java?

Obrigado.
[WWW] [ICQ]
fabiophxPJ
JavaChild
[Avatar]

Membro desde: 09/11/2004 00:00:00
Mensagens: 125
Offline

O PostGree tem o comando Set DateStyle to ISO, DMY.
Independente deste comando ou não vc sempre pode usar a máscara 'YYYY-MM-DD' num where ou para salvar.

Vc não está usando framework de persistência (JPA ou Hibernate)? Usando-os vc não se preocupa com isto.
[WWW] [ICQ]
PersioFormigoniPJ
Thread.start()
[Avatar]

Membro desde: 28/06/2007 00:00:00
Mensagens: 28
Offline

Bom Dia Fabio, me desculpe a falta de ocnhecimento, mas aonde eu insiro o comando set dateStyle, é no porpior aplicativo JAva, apos abrir a conexão com o BD?
[WWW] [ICQ]
fabiophxPJ
JavaChild
[Avatar]

Membro desde: 09/11/2004 00:00:00
Mensagens: 125
Offline

Vc deve estar usando jdbc "puro" então vc pode usar:

Statement stmt = conn.createStatement();
stmt.execute("Set DateStyle to ISO, DMY");
ResultSet rset = stmt.executeQuery("select * from tabela where data = '02/08/2007'");

Independente do DateStyle vc pode usar o padrão que te comentei:
ResultSet rset = stmt.executeQuery("select * from tabela where data = '2007-08-02'");

Dependendo da tua aplicação recomendo utilizar um framework de persistência (JPA / Hibernate). Eles se encarregam destas formatações.

Outra forma de vc não se preocupar com estas formatações é utilizar PreparedStatement do JDBC:
PreparedStatement pstmt = conn.preparedStatement("select * from tabela where data = ?");
pstmt.setData(1, new Date());
ResultSet rset = pstmt.executeQuery();
[WWW] [ICQ]
 
Índice dos Fóruns » Certificação Java
Ir para:   
Powered by JForum 2.1.8 © JForum Team