سؤال

لدي جدول يحتوي على بيانات ضخمة. أريد إضافة إصدار تلقائي لـ Hibernate إلى هذا الجدول. لكن إضافة عمود غير فائق إلى هذا الجدول للإصدار مكلف للغاية بسبب البيانات الضخمة. هل هناك حل بديل حتى يمكن أن تعمل السبات مع عمود لا لبس؟ حاليًا يعطي السبات NPE لأنه يحاول زيادة قيمة فارغة. (كما يدير Hibernate هذا داخليًا ، يكون تغيير قيمة الإصدار على جانب العميل أمرًا غير وارد) أي إصدار آخر هو موضع ترحيب أيضًا. شكرا لك مقدما

هل كانت مفيدة؟

المحلول

إذا سمحت نكهة قاعدة البيانات الخاصة بك ، فيمكنك استخدام الخيار الافتراضي. هذا ضد أوراكل ...

SQL> create table t23 as select object_id as id from user_objects;

Table created.

SQL> desc t23
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER

SQL> alter table t23 add hibernate_version_number number default 0 not null;

Table altered.

SQL> desc t23
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER
 HIBERNATE_VERSION_NUMBER                  NOT NULL NUMBER

SQL> select count(*) from t23 where hibernate_version_number = 0;

  COUNT(*)
----------
       504

SQL>

ومع ذلك ، قد لا تزال ترغب في تحديد أدائها مقابل حجم واقعي من البيانات. قد لا يحل مشكلتك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top