Postgres kann kein Datum speichern

Status
Nicht offen für weitere Antworten.

low1337

Mitglied
Hi leute,

Ich habe ein Problem mit einer Postgres Datenbank.

Die Persistenz übernimmt Hibernate und bisher hat auch immer alles funktioniert. Nun muss ich ein Datum speichern und dies wollte ich als Timestamp oder als Date machen.

Mein Problem ist das Hibernate immer diesen Fehler wirft.

Code:
15:04:43,781 DEBUG SQL:401 - select max(id) from session
Hibernate: select max(id) from session
15:04:43,843 DEBUG SQL:401 - insert into session (room_id, price, fromDate, tillDate, id) values (?, ?, ?, ?, ?)
Hibernate: insert into session (room_id, price, fromDate, tillDate, id) values (?, ?, ?, ?, ?)
15:04:43,859  WARN JDBCExceptionReporter:77 - SQL Error: 0, SQLState: null
15:04:43,859 ERROR JDBCExceptionReporter:78 - Batch-Eintrag 0 insert into session (room_id, price, fromDate, tillDate, id) values (3, 30.0, 2008-02-11 15:04:41.807000 +0100, 2008-02-11 15:04:41.807000 +0100, 1) wurde abgebrochen.  Rufen Sie getNextException auf, um die Ursache zu erfahren.
15:04:43,859  WARN JDBCExceptionReporter:77 - SQL Error: 0, SQLState: 42703
15:04:43,859 ERROR JDBCExceptionReporter:78 - ERROR: column "fromdate" of relation "session" does not exist
15:04:43,862 ERROR AbstractFlushingEventListener:301 - Could not synchronize database state with session
org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
	at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
	at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
	at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:253)
	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:237)
	at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
	at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
	at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
	at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
	at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
	at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
	at de.umkuk.model.access.AbstractPGDAO.endSession(AbstractPGDAO.java:56)
	at de.umkuk.model.access.AbstractPGDAO.insert(AbstractPGDAO.java:88)
	at de.umkuk.test.TestKlasse.main(TestKlasse.java:38)
Caused by: java.sql.BatchUpdateException: Batch-Eintrag 0 insert into session (room_id, price, fromDate, tillDate, id) values (3, 30.0, 2008-02-11 15:04:41.807000 +0100, 2008-02-11 15:04:41.807000 +0100, 1) wurde abgebrochen.  Rufen Sie getNextException auf, um die Ursache zu erfahren.
	at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2478)
	at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1298)
	at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:347)
	at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2540)
	at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:48)
	at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:246)
	... 10 more
org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update

Wenn ich die Hibernate.cfg.xml an eine MySQL Datenbank anpasse und das gleiche dort auf eine äquivalente Tabelle ausführe funktioniert es wunderbar also muss es ja an postgres liegen.
Alle andere Abfragen und speicherungen funktionieren bei Postgres.

Hier die Hibernate config :

Code:
<?xml version='1.0' encoding='utf-8'?>  
<!DOCTYPE hibernate-configuration PUBLIC  
           "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  
           "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">  
   
 <hibernate-configuration>  
   <session-factory>  
   
           
         <property name="connection.driver_class">org.postgresql.Driver</property>  
         <property name="connection.url">jdbc:postgresql://localhost:5432/umkuk</property>  
         <property name="connection.username">low1337</property>  
         <property name="connection.password">test</property>  
  		
          
        <property name="dialect">org.hibernate.dialect.PostgreSQLDialect</property>  
   
             
           <property name="cache.provider_class">org.hibernate.cache.EhCacheProvider</property>  
           
           
         <property name="current_session_context_class">thread</property>  
   
                     
          <property name="hibernate.show_sql">true</property>
          
    	
    	<mapping resource="de/umkuk/model/bean/Mapping/RoomSaison.hbm.xml"/>
    	
      </session-factory>  
 </hibernate-configuration>
Hier die Bean :

package de.umkuk.model.bean;

Code:
import java.sql.Timestamp;


import de.umkuk.model.helper.BeanHelper;

/**
 * Mapping Klasse für die Tabelle room_saison
 * @author low1337
 *
 */
public class RoomSaison extends BeanHelper 
{
	private int room_id;
	private float price;
	
	private Timestamp fromDate;
	private Timestamp tillDate;
	
	// hier sind noch getter und Setter !!
}
Mapping :
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
  "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
  <class name="de.umkuk.model.bean.RoomSaison" table="session">
    <id name="id" column="id" >
      <generator class="increment"/>
    </id>          
    <property name="room_id" column="room_id"></property>  
    <property name="price" column="price"></property>
    <property name="fromDate" column="fromDate"></property>
    <property name="tillDate" column="tillDate"></property>
         
    
  </class>
</hibernate-mapping>

In der Postgres hab ich schon alle Datentypen durch von.
time stamp + timezone, timestamp ohne timezone, date + tz, date ohne tz, time

Und auch in Java schon alles druch von util.Date über sql.Date hin zu Timestamp.

Ich bin echt ratlos.


Java 1.6
neuste hibernate
postgres 8.2.5-1

Vielen Dank
Code:
 
G

Guest

Gast
jup, stimmt alles.
Es ist einfach so als würde Postgres einfach keine Zeitformate verstehen.
 

low1337

Mitglied
ok, hab den Fehler...

bei Postgres dürfen keine Sonderzeichen oder Großbuchstaben in die Spaltennamen wenn man ein date oder timestamp benutzt.

from_Date , fromDate => geht nicht.
fromdate => geht

man wer soll den auf sowas kommen. Bei MySQL ist das nicht so.

Trotzdem danke :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Kirby.exe Nebenläufigkeit kontrollieren in Postgres Datenbankprogrammierung 15
Kirby.exe Sample Database in Postgres laden Datenbankprogrammierung 5
S JDBC mit Postgres DB connecten Datenbankprogrammierung 3
Phash hibernate_sequence in postgres Datenbankprogrammierung 0
A Postgres, sql: Inkrementierung allgemein und bis zu einem bestimmten Wert Datenbankprogrammierung 5
M JPA / Hibernate mit Postgres DB Datenbankprogrammierung 3
pg1337 Verbindung mit postgres - eclipse Datenbankprogrammierung 4
Kenan89 Windows 7 postgres komplett entfernen Datenbankprogrammierung 16
Kenan89 Postgres Einrichtung Datenbankprogrammierung 5
M Datumsformat Postgres Datenbankprogrammierung 6
R hibernate Frage zu configFile-Pfad und Groß/Kleinschreibung von Postgres-Tabellen Datenbankprogrammierung 8
N JDBC Charset / Jboss/Postgres Datenbankprogrammierung 3
A Servlets/JSP & JDBC & Postgres - ConnectionPool Datenbankprogrammierung 6
C Java, Postgres und dump. Datenbankprogrammierung 2
J Postgres Listen/Notify Datenbankprogrammierung 3
S Postgres und die Ursprungstabelle bei vererbten Tabellen Datenbankprogrammierung 4
berserkerdq2 Was kann passieren, wenn ich in java einstelle, dass der Fremdschüssel ein Attribut ist, welches selber kein Primärschlüssel ist? Datenbankprogrammierung 4
K Eclipse: JBoss Hibernate Tool: Kein Zugriff auf Datenbank Datenbankprogrammierung 5
M Problem mit jcouchdb und CouchDB - UTF8 kein gültiger Zeichentyp Datenbankprogrammierung 4
C unverständliches DB Problem (Es ist kein temporärer Systemtabellenbereich mit einer ausreichenden..) Datenbankprogrammierung 5
C Mir fällt kein Feldname ein Datenbankprogrammierung 4
M PL/SQL Fehler "Kein Wert zurückgegeben" Datenbankprogrammierung 4
Blindxantos Datenquellname bzw. kein Standardtreiber Datenbankprogrammierung 7
S MySQL Kein DB-Eintrag Datenbankprogrammierung 4
T Hibernate: Reverse Enigneering - kein Mapping von Beziehungen Datenbankprogrammierung 8
C kein Resultset Datenbankprogrammierung 2
G PostGreSQL - Die Abfrage lieferte kein Ergebnis Datenbankprogrammierung 3
B ResultSet aus Session geladen, aber kein Zugriff möglich Datenbankprogrammierung 6
C MySql kein Rollback Datenbankprogrammierung 19
G Kein Geschenk, der JDBC-Treiber ! Datenbankprogrammierung 30
D Abfrage - Spalte(Datum) ändern (Oracle) Datenbankprogrammierung 7
D SQLite Konfusion bei Datum bzw strftime() Datenbankprogrammierung 13
J MS SQL: 2 Tage Zeitverschiebung bei Datum Datenbankprogrammierung 3
N Derby/JavaDB Bei PS das übergebene Datum ändern Datenbankprogrammierung 3
R PostgreSQL Datum in Datenbank eintragen Datenbankprogrammierung 2
MU5T4NG Datum mit Hibernate in Datenbank speicher Datenbankprogrammierung 2
M Datum mit Uhrzeit in DB Datenbankprogrammierung 4
T Datum anpassen in Oracle Datenbankprogrammierung 5
Gossi Oracle 2 Daten (Datum) vergleichen Datenbankprogrammierung 6
M Datum umschreiben Datenbankprogrammierung 3
H Fehler bei null-Datum in MySQL-DB Datenbankprogrammierung 2
D Datum in SQL-Datenbank einlesen Datenbankprogrammierung 2
D Datum vor 1756 speichern Datenbankprogrammierung 2
M MM.YYYY als Datum speichern Datenbankprogrammierung 4
Y Hibernate - Datum Insert Datenbankprogrammierung 7
N Datum Format Datenbankprogrammierung 3
M Datum in Datenbank speichern Datenbankprogrammierung 3
M Datum's String in MSSQL oder MySQL wie konvertieren ? Datenbankprogrammierung 3
F Sauber das Datum Speichern Datenbankprogrammierung 2
L Datum (String) in MySQL-Tabelle (date) speichern Datenbankprogrammierung 4
G Datum Uhrzeit Datenbankprogrammierung 2
D Brauche hilfe bei Delete mit Datum! Datenbankprogrammierung 4
T Abfrage einer relationalen Datenbank anhand des Datum. Datenbankprogrammierung 3

Ähnliche Java Themen

Neue Themen


Oben