ජනනය කරන ලද තීරු සඳහා සහය ඇතිව DBMS SQLite 3.31 මුදා හැරීම

පළ කළා නිකුත්වීම SQLite 3.31.0, ප්ලග්-ඉන් පුස්තකාලයක් ලෙස නිර්මාණය කර ඇති සැහැල්ලු DBMS. SQLite කේතය පොදු වසමක් ලෙස බෙදා හරිනු ලැබේ, i.e. සීමාවකින් තොරව සහ ඕනෑම කටයුත්තක් සඳහා නොමිලේ භාවිතා කළ හැක. Adobe, Oracle, Mozilla, Bentley සහ Bloomberg වැනි සමාගම් ඇතුළත් SQLite සංවර්ධකයින් සඳහා මූල්‍ය ආධාර සපයනු ලබන්නේ විශේෂයෙන් නිර්මාණය කරන ලද සමුහයක් මගිනි.

ප්රධාන වෙනස්:

  • සහාය එකතු කරන ලදී ජනනය කළ තීරු (ගණනය කරන ලද තීරු), වෙනත් තීරුවක අන්තර්ගතය මත පදනම්ව ස්වයංක්‍රීයව අගය ගණනය කෙරෙන වගුවක් සාදන විට තීරුවක් අර්ථ දැක්වීමට ඔබට ඉඩ සලසයි. ජනනය කරන ලද තීරු අථත්‍ය (එක් එක් ප්‍රවේශය සමඟ පියාසර කරන විට) හෝ දත්ත ගබඩාවේ ගබඩා කළ හැකිය (අදාළ තීරු යාවත්කාලීන කරන සෑම අවස්ථාවකම සුරැකේ). උත්පාදනය කරන ලද තීරු වල අන්තර්ගතය ලබා ගත හැක්කේ කියවීමේ මාදිලියේ පමණි (වෙනස් කිරීම් සිදු කරනු ලබන්නේ ගණනය කිරීම් වලට සම්බන්ධ වෙනත් තීරුවක අගය වෙනස් කිරීමෙන් පමණි). උදාහරණ වශයෙන්:

    T1 වගුව සාදන්න (
    පූර්ණ ප්‍රාථමික යතුරක්,
    b INT,
    c TEXT,
    d INT සෑම විටම (a*abs(b)) අතථ්‍ය ලෙස ජනනය වේ,
    e පෙළ සෑම විටම උත්පාදනය කරන ලද පරිදි (substr(c,b,b+1)) ගබඩා කර ඇත
    );

  • PRAGMA එකතු කරන ලදී විශ්වාසනීය_ක්‍රමය, සැකසීම SQLITE_DBCONFIG_TRUSTED_SCHEMA සහ එකලස් කිරීමේ විකල්පය “-DSQLITE_TRUSTED_SCHEMA”, ඔබට එරෙහිව ආරක්ෂාව ඇතුළත් කිරීම පාලනය කිරීමට ඉඩ සලසයි පහර දෙනවා දත්ත සමුදායේ දත්ත යෝජනා ක්රමය වෙනස් කිරීම හරහා. ප්‍රේරක, දසුන්, CHECK සහ DEFAULT ප්‍රකාශ, දර්ශක, සහ ජනනය කරන ලද තීරු වල SQL ශ්‍රිත (SQLITE_INNOCUOUS සලකුණු කර නැත) සක්‍රීය ආරක්ෂාව සීමා කරයි. SQLITE_VTAB_INNOCUOUS ධජය සමඟ අතථ්‍ය වගුව පැහැදිලිව ප්‍රකාශ කර නොමැති නම් ප්‍රේරක සහ දර්ශනවල අථත්‍ය වගු භාවිතය ද අක්‍රිය වේ.
  • යෙදුම්වල අර්ථ දක්වා ඇති SQL ශ්‍රිතවලට ගුණාංග පැවරීමේ හැකියාව ක්‍රියාත්මක කරන ලදී SQLITE_INNOCUOUS (බාහිර පරාමිතීන් මත රඳා නොපවතින හානිකර නොවන කාර්යයන් සහ අනිෂ්ට ක්රියා සිදු කිරීමට භාවිතා කළ නොහැක) සහ SQLITE_DIRECTONLY (ප්‍රේරක, දර්ශන සහ දත්ත ව්‍යුහ රූප සටහන් භාවිතා කිරීමේ හැකියාවකින් තොරව, SQL විමසුම්වල සෘජු ඇමතුම් පමණි);
  • එකතු කරන ලද මොඩියුලය uuid UUID (RFC-4122) සැකසීම සඳහා කාර්යයන් ක්රියාත්මක කිරීමත් සමග;
  • PRAGMA එකතු කරන ලදී දෘඪ_ගොඩ_සීමාව සහ ක්‍රියාකාරීත්වය sqlite3_hard_heap_limit64() උපරිම ගොඩවල් ප්රමාණය පාලනය කිරීමට;
  • PRAGMA හි කාර්යය_ලැයිස්තුව එක් එක් ශ්‍රිතයේ වර්ගය, ගුණාංග සහ තර්ක ගණන එකතු කළ ප්‍රතිදානය;
  • DBSTAT අතථ්‍ය වගුව වෙත එකතු කළා දත්ත එකතු කිරීමේ මාදිලිය;
  • sqlite3_open_v2() මඟින් SQLITE_OPEN_NOFOLLOW විකල්පය ක්‍රියාත්මක කරයි, එමඟින් ඔබට සංකේතාත්මක සබැඳි විවෘත කිරීම අක්‍රිය කිරීමට ඉඩ සලසයි;
  • තර්කය සඳහා මාර්ගය, JSON ශ්‍රිත වෙත සම්මත කර, "#-N" අරා අංකනය සඳහා සහය එක් කරන ලදී;
  • මතක බෙදාහැරීමේ පද්ධතියේ පැත්තකට වෙලා වෙනම මතක තටාක දෙකක් සඳහා සහය ක්‍රියාත්මක කර ඇති අතර, ඒ සෑම එකක්ම විවිධ ප්‍රමාණයේ කුට්ටි වෙන් කිරීමට භාවිතා කළ හැකිය (වෙන්වීම මඟින් ඔබට ලුක්සයිඩ් පද්ධතියේ භාවිතය පුළුල් කිරීමට ඉඩ සලසයි, එක් එක් සම්බන්ධතාවයට වෙන් කර ඇති බෆරයේ ප්‍රමාණය 120 සිට 48 දක්වා අඩු කරයි. KB);
  • PRAGMA සහාය අත්හිටුවා ඇත legacy_file_format, VACUUM සමඟ නොගැලපෙන, ජනනය කරන ලද තීරු, සහ අවරෝහණ දර්ශක (sqlite3_db_config() හි SQLITE_DBCONFIG_LEGACY_FILE_FORMAT ධජය හරහා උරුම ආකෘති සහාය ආපසු ලබා දිය හැක.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න