إصدار SQLite 3.40

تم نشر إصدار SQLite 3.40 ، وهو نظام DBMS خفيف الوزن مصمم كمكتبة إضافية. يتم توزيع كود سكليتي في المجال العام ، أي يمكن استخدامها دون قيود ومجانية لأي غرض. يتم توفير الدعم المالي لمطوري SQLite من خلال اتحاد تم إنشاؤه خصيصًا ، والذي يتضمن شركات مثل Adobe و Oracle و Mozilla و Bentley و Bloomberg.

التغييرات الرئيسية:

  • نفذ القدرة التجريبية على ترجمة SQLite إلى رمز WebAssembly الوسيط الذي يمكن تشغيله في مستعرض ويب ومناسب لتنظيم العمل مع قاعدة البيانات من تطبيقات الويب بلغة JavaScript. يتم تزويد مطوري الويب بواجهة عالية المستوى موجهة للكائنات للعمل مع البيانات بأسلوب sql.js أو Node.js ، والتفاف حول واجهة برمجة تطبيقات C منخفضة المستوى وواجهة برمجة تطبيقات تستند إلى آلية Web Worker التي تسمح لك لإنشاء معالجات غير متزامنة تعمل على مؤشرات ترابط منفصلة. يمكن تخزين البيانات التي تخزنها تطبيقات الويب في إصدار WASM من SQLite على جانب العميل باستخدام OPFS (Origin-Private FileSystem) أو window.localStorage API.
  • تمت إضافة امتداد الاسترداد ، المصمم لاستعادة البيانات من الملفات التالفة من قاعدة البيانات. تستخدم واجهة سطر الأوامر الأمر ".recover" للاستعادة.
  • تحسين أداء مخطط الاستعلام. تمت إزالة القيود عند استخدام الفهارس مع الجداول التي تحتوي على أكثر من 63 عمودًا (في السابق ، لم يتم تطبيق الفهرسة على العمليات ذات الأعمدة التي تجاوز عددها الترتيبي 63). فهرسة محسنة للقيم المستخدمة في التعبيرات. توقف تحميل السلاسل الكبيرة والنقط من القرص عند معالجة عوامل NOT NULL و IS NULL. التجسيد المستبعد للآراء التي يتم إجراء مسح كامل لها مرة واحدة فقط.
  • في مصدر البرنامج ، بدلاً من استخدام نوع "char *" ، يتم استخدام نوع sqlite3_filename منفصل لتمثيل أسماء الملفات.
  • تمت إضافة الوظيفة الداخلية sqlite3_value_encoding ().
  • تمت إضافة وضع SQLITE_DBCONFIG_DEFENSIVE ، الذي يحظر تغيير إصدار مخطط التخزين.
  • تمت إضافة فحوصات إضافية إلى تنفيذ معلمة "PRAGMA Integration_check". على سبيل المثال ، يجب ألا تحتوي الجداول التي لا تحتوي على سمة STRICT على قيم رقمية في أعمدة TEXT وقيم سلسلة مع أرقام في أعمدة NUMERIC. تمت أيضًا إضافة التحقق من صحة ترتيب الصفوف في الجداول بعلامة "بدون رويد".
  • التعبير "VACUUM INTO" يحترم إعدادات "PRAGMA المتزامنة".
  • تمت إضافة خيار إنشاء SQLITE_MAX_ALLOCATION_SIZE للحد من حجم الكتل عند تخصيص الذاكرة.
  • تم نقل خوارزمية توليد أرقام شبه عشوائية مضمنة في SQLite من استخدام تشفير دفق RC4 إلى Chacha20.
  • يُسمح باستخدام فهارس بنفس الاسم في مخططات بيانات مختلفة.
  • تم إجراء تحسينات في الأداء لتقليل الحمل على وحدة المعالجة المركزية بحوالي 1٪ أثناء النشاط العادي.

المصدر: opennet.ru

إضافة تعليق