كيفية إجبار الشحن على استخدام نوع العمود المناسب في MySQL لحقل الخريطة
-
18-09-2019 - |
سؤال
لدي مشكلة في الشجر 1.1.2 + MySQL.
فئة المجال الخاصة بي يحتوي على حقل
Map<String, Map<Integer, Integer>> priceMap
عندما أقوم بتشغيل التطبيق، ينشئ Charails جدول "شيء" و "شيء فرعي" "sprice_map". يحتوي "sport_price_map"
BIGINT(20) price_map
VARCHAR(255) price_map_idx
TINYBLOB price_map_elt
المشكلة هي أنه عندما أقام في العمود Pricemap حتى مع بيانات الخريطة الصغيرة مثل هذا "PRICEMAP: [ar: [100: 4، 500: 20، 600: 24]] '، يتجاوز حجم البيانات الحد الأقصى 255BYTES.
هل هناك أي طريقة لتحديد القيد الوعي للخريطة الداخلية (خريطة)، بحيث تستخدم الشجاعة MoversBlob أو Blobk بدلا من TinyBlob؟
راجع للشغل ... باستخدام DB في MEM، كل شيء يعمل بشكل جيد.
المحلول
كما تعلمون، هناك حظر رسم الخرائط لفئة المجال. ومع ذلك، قد تكون مشكلتك معقدة للغاية بالنسبة لتلك الوظيفة.
في مثل هذه الحالات، يمكنك تحديد صريح رسم الخرائط (عبر ملف HBM) لفئة المجال. هذا يسمح المرونة الكاملة للسبات.