EDIT: Ich habe diese Frage im
englischen Bereich noch einmal gestellt. Damit ist dieser Post hinfällig.
___
Hallo.
Die folgende Frage habe ich auch
hier gestellt.
Ich nutze Hibernate 3.0.2 in Verbindung mit MSSQL. Diese beiden scheinen sich bzgl. Blob-Werten nicht zu vertragen.
Folgendes Szenario:
Code:
@Entity
class Dataset {
@OneToMany(fetch = FetchType.LAZY)
public List<Document> documents = new ArrayList<Document>();
}
Code:
@Entity
class Document {
@Id
public long id;
@Lob
public byte[] data;
}
... provoziert diesen Fehler:
Code:
SQL Error: 421, SQLState: S0001
The image data type cannot be selected as DISTINCT because it is not comparable.
...
could not initialize a collection: [Dataset.documents#someID]
Hibernate scheint beim Zusammensammeln der Einträge für die Liste von Dokumenten eine SELECT-DISTINCT-Anfrage zu starten, was MSSQL mit einem Fehler quittiert, da es über das byte[]-data-Feld stolpert. Gibt es einen Weg Hibernate anzuweisen die Anweisung ohne das DISTINCT-Schlüsselwort auszuführen. Wozu braucht es das in diesem Fall eigentlich?
Ich habe auch schon versucht Set<Document> oder Document[] zu nutzen. Beides ohne Erfolg.
Vielleicht kann mir von euch einer helfen. Vielen Dank schon einmal und ein schönes Wochenende.
Jan