Frage

Ich habe ein Problem in Grails 1.1.2 + Mysql.

Meine Domain -Klasse Etwas enthält Feld

Map<String, Map<Integer, Integer>> priceMap

Wenn ich die App ausführe, erstellt Grails Tabelle 'etwas' und Subtabelle 'there_price_map'. 'tony_price_map' enthält

BIGINT(20) price_map
VARCHAR(255) price_map_idx
TINYBLOB price_map_elt

Das Problem ist, dass beim Ausfüllen der Spalte Pricemap auch mit kleinen Kartendaten wie diesen 'Pricemap: [EN: [100: 4, 500: 20, 600: 24]]' die Größe der Daten über die Grenze von überschreitet 255 BYTES.

Gibt es eine Möglichkeit, die maximale Einschränkung für die innere Karte (Karte) anzugeben, so dass Grals Mediumblob oder Blobk anstelle von TinyBlob verwendet?

Übrigens ... mit In-MEM-DB funktioniert alles gut.

War es hilfreich?

Lösung

Wie Sie vielleicht wissen, gibt es eine Zuordnungsbeschränkung für eine Domain -Klasse. Ihr Problem ist jedoch möglicherweise zu komplex für diese Funktionalität.

In solchen Fällen können Sie eine angeben Explizite Hibernate -Mapping (über HBM -Datei) für eine Domänenklasse. Dies ermöglicht die vollständige Flexibilität von Hibernate.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top