உருவாக்கப்பட்ட நெடுவரிசைகளுக்கான ஆதரவுடன் DBMS SQLite 3.31 வெளியீடு

வெளியிடப்பட்டது வெளியீடு SQLite 3.31.0, ப்ளக்-இன் லைப்ரரியாக வடிவமைக்கப்பட்ட இலகுரக DBMS. SQLite குறியீடு ஒரு பொது டொமைனாக விநியோகிக்கப்படுகிறது, அதாவது. கட்டுப்பாடுகள் இல்லாமல் எந்த நோக்கத்திற்காகவும் இலவசமாகப் பயன்படுத்தலாம். SQLite டெவலப்பர்களுக்கான நிதி உதவியானது அடோப், ஆரக்கிள், மொஸில்லா, பென்ட்லி மற்றும் ப்ளூம்பெர்க் போன்ற நிறுவனங்களை உள்ளடக்கிய பிரத்யேகமாக உருவாக்கப்பட்ட கூட்டமைப்பால் வழங்கப்படுகிறது.

முக்கிய மாற்றங்கள்:

  • ஆதரவு சேர்க்கப்பட்டது உருவாக்கப்பட்ட நெடுவரிசைகள் (கணக்கிடப்பட்ட நெடுவரிசைகள்), நீங்கள் ஒரு அட்டவணையை உருவாக்கும்போது ஒரு நெடுவரிசையை வரையறுக்க உங்களை அனுமதிக்கிறது, அதன் மதிப்பு மற்றொரு நெடுவரிசையின் உள்ளடக்கங்களின் அடிப்படையில் தானாகவே கணக்கிடப்படும். உருவாக்கப்பட்ட நெடுவரிசைகள் மெய்நிகர் (ஒவ்வொரு அணுகலுடனும் பறக்கும்போது உருவாக்கப்படும்) அல்லது தரவுத்தளத்தில் சேமிக்கப்படும் (ஒவ்வொரு முறை தொடர்புடைய நெடுவரிசைகள் புதுப்பிக்கப்படும்போதும் சேமிக்கப்படும்). உருவாக்கப்பட்ட நெடுவரிசைகளின் உள்ளடக்கங்கள் வாசிப்பு பயன்முறையில் மட்டுமே கிடைக்கும் (கணக்கீட்டில் ஈடுபட்டுள்ள மற்றொரு நெடுவரிசையில் மதிப்பை மாற்றுவதன் மூலம் மட்டுமே மாற்றங்கள் செய்யப்படுகின்றன). உதாரணத்திற்கு:

    அட்டவணையை உருவாக்கு t1(
    ஒரு முழு முதன்மை விசை,
    b INT,
    c TEXT,
    d INT எப்பொழுதும் (a*abs(b)) மெய்நிகர்,
    எப்பொழுதும் (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 விருப்பத்தை செயல்படுத்துகிறது, இது குறியீட்டு இணைப்புகளின் திறப்பை முடக்க உங்களை அனுமதிக்கிறது;
  • வாதத்திற்காக PATH இன், JSON செயல்பாடுகளுக்கு அனுப்பப்பட்டது, "#-N" வரிசை குறிப்பிற்கான ஆதரவு சேர்க்கப்பட்டது;
  • நினைவக விநியோக அமைப்பில் ஒருபுறம் பார் இரண்டு தனித்தனி நினைவகக் குளங்களுக்கான ஆதரவு செயல்படுத்தப்பட்டுள்ளது, ஒவ்வொன்றும் வெவ்வேறு அளவுகளின் தொகுதிகளை ஒதுக்க பயன்படுத்தலாம் (பிரித்தல் உங்களை லுக்சைட் அமைப்பின் பயன்பாட்டை விரிவாக்க அனுமதிக்கிறது, அதே நேரத்தில் ஒவ்வொரு இணைப்பிற்கும் ஒதுக்கப்பட்ட இடையகத்தின் அளவை 120 முதல் 48 வரை குறைக்கிறது. KB);
  • PRAGMA ஆதரவு நிறுத்தப்பட்டது மரபு_கோப்பு_வடிவம், இது VACUUM உடன் பொருந்தாதது, உருவாக்கப்பட்ட நெடுவரிசைகள் மற்றும் இறங்கு குறியீடுகள் (மரபு வடிவ ஆதரவை SQLITE_DBCONFIG_LEGACY_FILE_FORMAT கொடி வழியாக sqlite3_db_config() இல் திரும்பப் பெறலாம்).

ஆதாரம்: opennet.ru

கருத்தைச் சேர்