Um

6

eine Datenbankansicht ohne Primärschlüssel, in Hibernate XML-Mapping-Karte ich eine Ansicht erstellt haben, die nur die Daten für das Abrufen verwendet werden (Read-only)Um

Ausblick: Grid_View

> My Hibernate hbm Datei

<hibernate-mapping> 
    <class name="hibernate.domain.View" table="Grid_View" mutable="false"> 
     <property name="ACCT_BR_CD" type="string"> 
      <column name="ACCT_BR_CD"/> 
     </property> 
     <property name="ACCT_NO" type="string"> 
      <column name="ACCT_NO"/> 
     </property> 
     <property name="LGL_ENTY_NM" type="string"> 
      <column name="LGL_ENTY_NM"/> 
     </property> 
     <property name="CUST_CTRY_CD" type="string"> 
      <column name="CUST_CTRY_CD"/> 
     </property> 
     <property name="ACCT_SRC_SYS_CD" type="string"> 
      <column name="ACCT_SRC_SYS_CD"/> 
     </property>  
    </class> 
</hibernate-mapping> 

> Da sie meiner Ansicht nach kein Primärschlüssel ist, habe ich das ID-Feld in meiner Zuordnung nicht erwähnt. Aber im Winterschlaf ID ist erforderlich.

> Meine Frage

Wie mit der Abbildung ohne ID in der Hibernate Mapping-Datei, um fortzufahren. Und sie sind keine Spalten mit einzigartigen Werten, so dass sie keine Chance haben, sie zum Schlüssel zu machen. Bitte helfen Sie mir, dieses Problem zu beheben

Antwort

4

Sie haben zwei Möglichkeiten, entweder hinzufügen Composite-Key oder fügen Sie

<id column="ROWID" type="string" /> 

Hibernate eindeutigen Schlüssel zur Karte benötigen. Die beste Vorgehensweise besteht darin, einen Primärschlüssel hinzuzufügen.

+0

Aber keine Spalten haben eindeutige Daten. – Dev

+1

Dann können Sie eine "Auto Increment" -Spalte in der Tabelle hinzufügen, es ist der beste Ansatz, weil Hibernate hatte viele Funktionen würde nicht funktionieren ohne eindeutige ID wie findById-Methode und Zuordnung zwischen Tabellen, Deshalb zwingen Ruhezustand ID zu machen. Und in der Option der ID können Sie einen zusammengesetzten Schlüssel hinzufügen und alle Spalten in diesen zusammengesetzten Schlüssel einschließen, als es funktioniert. – commit

+0

Thanks.Its gelöst – Dev