-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 
Author Message
 Post subject: Verbinden und Tabellen generieren auf MS 2005SQL Server?
PostPosted: Wed Jun 03, 2009 7:17 am 
Newbie

Joined: Wed Jun 03, 2009 5:20 am
Posts: 2
Hallo zusammen,

Ich versuchem mich an meinem ersten eigenen Java/Hibernate Projekt. Dazu möchte ich die Datenbank Auf einen SQL 2005 Server bringen. Damit ich nicht auf unserem Produktiven SQL rumbasteln muss habe ich zum testen einen SQL Express auf einem älteren Server eingerichtet. Und weil ich Probleme hatte aus Eclipse eine Verbindung darauf zu bekommen, habe ich auch noch eine MySQL auf den Testserver installiert.

Jetzt zu meinem Problem.
Wenn ich meine Tabellen kreieren lasse und als Ziel die MySQL DB (Im geposteten File auskommentiert) angebe funktioniert das problemlos. Wenn ich aber das ganze dann auf dem SQL Express einspielen möchte bekomme ich nur noch Fehlermeldungen...

Wenn ich für MS SQL in der url als Pfad den Severnamen/Datenbanknamen eintrage(wie unter MySQL unten) bekomme ich TCP/IP error und kann keine Verbindung aufbauen. Gibt es da ne Möglichkeit auf das Datenbankschema zu verweisen? Dieses Problem scheint nur bei MS SQL zu sein, bei allen anderen DB Systemen die ich getestet haben scheint die Pfadangabe zu funktionieren.

Code:
    <property name="hibernate.connection.url">
      jdbc:sqlserver://MCRCHGR003
<!--      jdbc:mysql://MCRCHGR003/mc_hardwareinventar-->
    </property>


Lasse ich den DBnamen im Pfad leer, kann er eine Verbinung aufbauen, scheitert aber dann natürlich beim bilden der Tabellen...

Das sqlijdbc.jar File ist in den Reference Libraries von meinem Projekt eingebunden.

Hier mal mein "hibernate.cfg.xml"

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>

    <!-- Konfiguration der Datenbankverbindung
         Den benötigten Treiber laden -->
    <property name="hibernate.connection.driver_class">
      com.microsoft.sqlserver.jdbc.SQLServerDriver
<!--      com.mysql.jdbc.Driver-->
    </property>
    <!-- Name und Pfad des Datenbank-Schemas   -->
    <property name="hibernate.connection.url">
      jdbc:sqlserver://MCRCHGR003
<!--      jdbc:mysql://MCRCHGR003/mc_hardwareinventar-->
    </property>
    <!-- Name des Users der darauf zugreift  -->
    <property name="hibernate.connection.username">
      sa
<!--      hibernate-->
    </property>
    <!-- Passwort des Users der darauf zugreift  -->
    <property name="hibernate.connection.password">
      meinPw
<!--      hibernate-->
    </property>

    <!-- Konfiguration des Connection-Pools -->   
    <property name="c3p0.min_size">3</property>
    <property name="c3p0.max_size">5</property>
    <property name="c3p0.timeout">1800</property>
    <property name="c3p0.max_statements">50</property>
    <property name="c3p0.idle_test_period">3000</property>

   
    <!-- SQL-spezifische Setzungen -->   
    <property name="dialect">
      org.hibernate.dialect.SQLServerDialect
<!--      org.hibernate.dialect.MySQLDialect-->
    </property> 
    <property name="show_sql">
      true
    </property>

    <!-- Neuerzeugung des DB-Schemas beim Aufstarten -->
    <property name="hibernate.hbm2ddl.auto">
      create
    </property>



<!-- =====================================
     Benoetigte Mapping-Dateien
     ===================================== -->
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Printer.hbm.xml" />
   
    <mapping
    resource="ch/mc/netzwerkInventar/persistence/Supplier.hbm.xml" />
           
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Tray.hbm.xml" />
   
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Traytype.hbm.xml" /> 
   
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Basicpc.hbm.xml" />
   
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Monitor.hbm.xml" />
   
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/User.hbm.xml" />
   
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Card.hbm.xml" />
   
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Cardtype.hbm.xml" />   
     
    <mapping
      resource="ch/mc/netzwerkInventar/persistence/Device.hbm.xml" /> 
   

  </session-factory>

</hibernate-configuration>




Finde mit googeln leider keine Lösung, wäre cool wenn mir jemand helfen kann.

Danke schon mal und Gruss


Top
 Profile  
 
 Post subject: Re: Verbinden und Tabellen generieren auf MS 2005SQL Server?
PostPosted: Wed Jul 01, 2009 5:36 am 
Newbie

Joined: Wed Jun 03, 2009 5:20 am
Posts: 2
Ok habe eine Lösung gefunden. Die Pfadangabe scheint beim MS-SQL ein bisschen anders zu sein.

Hier noch mal nen Ausschnitt aus dem hibernate.cfg.xml

Code:
<hibernate-configuration>

  <session-factory>

    <!-- Konfiguration der Datenbankverbindung
         Den benötigten Treiber laden -->
    <property name="hibernate.connection.driver_class">
      com.microsoft.sqlserver.jdbc.SQLServerDriver
<!--      com.mysql.jdbc.Driver-->
    </property>
    <!-- Name und Pfad des Datenbank-Schemas   -->
    <property name="hibernate.connection.url">
      jdbc:sqlserver://MCRCHGR003;database=mc_hardwareinventar
<!--      jdbc:mysql://MCRCHGR003/mc_hardwareinventar-->
    </property>
   


Einfach den Servernamen und Schemaname nicht wie gewohnt mit "/" trennen, sondern ein ";" benützen...

Vielleicht hilft es ja mal jemandem...

Gruss


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.