ڈی بی ایم ایس ایس کیو ایلائٹ 3.31 کی ریلیز جنریٹڈ کالمز کے لیے سپورٹ کے ساتھ

شائع ہوا رہائی ایس کیو ایلائٹ 3.31.0۔، ایک ہلکا پھلکا DBMS پلگ ان لائبریری کے طور پر ڈیزائن کیا گیا ہے۔ SQLite کوڈ کو عوامی ڈومین کے طور پر تقسیم کیا جاتا ہے، یعنی کسی بھی مقصد کے لیے بغیر کسی پابندی کے اور بلا معاوضہ استعمال کیا جا سکتا ہے۔ SQLite ڈویلپرز کے لیے مالی معاونت ایک خاص طور پر بنائے گئے کنسورشیم کے ذریعے فراہم کی جاتی ہے، جس میں Adobe، Oracle، Mozilla، Bentley اور Bloomberg جیسی کمپنیاں شامل ہیں۔

اہم تبدیلیاں:

  • سپورٹ شامل کر دی گئی۔ کالم بنائے گئے (حساب شدہ کالم)، جو آپ کو کالم کی وضاحت کرنے کی اجازت دیتا ہے جب آپ ایک ٹیبل بناتے ہیں جس کی قدر خود بخود دوسرے کالم کے مواد کی بنیاد پر شمار کی جاتی ہے۔ تیار کردہ کالم یا تو ورچوئل ہو سکتے ہیں (ہر ایک رسائی کے ساتھ فلائی پر تیار کیے گئے) یا ڈیٹا بیس میں محفوظ کیے جا سکتے ہیں (ہر بار متعلقہ کالم اپ ڈیٹ ہونے پر محفوظ کیے جاتے ہیں)۔ تیار کردہ کالم کے مواد صرف پڑھنے کے موڈ میں دستیاب ہیں (تبدیلیاں صرف حساب میں شامل دوسرے کالم میں قدر میں ترمیم کے ذریعے کی جاتی ہیں)۔ مثال کے طور پر:

    ٹیبل ٹی 1 بنائیں
    ایک انٹیجر پرائمری کلید،
    بی آئی این ٹی،
    c متن،
    d ہمیشہ (a*abs(b)) ورچوئل کے طور پر پیدا ہوتا ہے،
    e متن ہمیشہ اس طرح تیار ہوتا ہے جیسا کہ (substr(c,b,b+1)) ذخیرہ کیا گیا
    );

  • PRAGMA شامل کیا گیا۔ معتبر_سکیما۔، ترتیب SQLITE_DBCONFIG_TRUSTED_SCHEMA اور اسمبلی آپشن "-DSQLITE_TRUSTED_SCHEMA"، جو آپ کو تحفظ کی شمولیت کو کنٹرول کرنے کی اجازت دیتا ہے حملے ڈیٹا بیس میں ڈیٹا اسکیما میں ترمیم کے ذریعے۔ فعال تحفظ ٹرگرز، ویوز، چیک اور ڈیفالٹ اسٹیٹمنٹس، اشاریہ جات، اور تیار کردہ کالموں میں SQL فنکشنز (SQLITE_INNOCUOUS نشان زد نہیں) کے استعمال کو محدود کرتا ہے۔ ٹرگرز اور ویوز میں ورچوئل ٹیبل کا استعمال بھی غیر فعال ہے جب تک کہ ورچوئل ٹیبل کا واضح طور پر SQLITE_VTAB_INNOCUOUS پرچم کے ساتھ اعلان نہ کیا جائے۔
  • ایپلی کیشنز میں بیان کردہ SQL فنکشنز کو پراپرٹیز تفویض کرنے کی صلاحیت کو نافذ کیا۔ SQLITE_INNOCUOUS اور SQLITE_DIRECTONLY (صرف ایس کیو ایل سوالات میں براہ راست کال، بغیر ٹرگرز، ویوز اور ڈیٹا اسٹرکچر ڈایاگرام میں استعمال کرنے کے امکان کے)؛
  • شامل کیا گیا ماڈیول uuid پروسیسنگ UUID (RFC-4122) کے افعال کے نفاذ کے ساتھ؛
  • PRAGMA شامل کیا گیا۔ hard_heap_limit اور فنکشن sqlite3_hard_heap_limit64() زیادہ سے زیادہ ہیپ سائز کو کنٹرول کرنے کے لیے؛
  • پراگما میں فنکشن_لسٹ قسم، خصوصیات اور ہر فنکشن کے دلائل کی تعداد کا اضافہ کیا گیا۔
  • ورچوئل ٹیبل DBSTAT پر شامل کیا ڈیٹا جمع کرنے کا موڈ؛
  • sqlite3_open_v2() SQLITE_OPEN_NOFOLLOW آپشن کو لاگو کرتا ہے، جو آپ کو علامتی لنکس کھولنے کو غیر فعال کرنے کی اجازت دیتا ہے۔
  • دلیل کے لیے PATH, JSON فنکشنز کو پاس کیا گیا، "#-N" سرنی اشارے کے لیے تعاون شامل کیا گیا۔
  • میموری کی تقسیم کے نظام میں ایک طرف دیکھو دو الگ الگ میموری پولز کے لیے سپورٹ کو لاگو کیا گیا ہے، جن میں سے ہر ایک کو مختلف سائز کے بلاکس مختص کرنے کے لیے استعمال کیا جا سکتا ہے (علیحدگی آپ کو لکسائیڈ سسٹم کے استعمال کو بڑھانے کی اجازت دیتی ہے، جبکہ ہر کنکشن کے لیے مختص بفر کے سائز کو 120 سے 48 تک کم کر دیتا ہے۔ KB)؛
  • PRAGMA سپورٹ بند کر دی گئی ہے۔ legacy_file_format، جو VACUUM، تخلیق شدہ کالموں، اور نزول اشاریہ سے مطابقت نہیں رکھتا تھا (لیگیسی فارمیٹ سپورٹ کو sqlite3_db_config() میں SQLITE_DBCONFIG_LEGACY_FILE_FORMAT پرچم کے ذریعے واپس کیا جا سکتا ہے)۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں