Kuburitswa kweDBMS SQLite 3.31 nerutsigiro rwemakoramu akagadzirwa

rakabudiswa kusunungura SQLite 3.31.0, DBMS isingaremi yakagadzirwa seraibhurari yeplug-in. Iyo SQLite kodhi inogoverwa senzvimbo yeruzhinji, i.e. inogona kushandiswa pasina kurambidzwa uye pasina muripo kune chero chinangwa. Rutsigiro rwemari rwevagadziri veSQLite rwunopihwa nemubatanidzwa wakanyatsogadzirwa, unosanganisira makambani akadai seAdobe, Oracle, Mozilla, Bentley neBloomberg.

chikuru change:

  • Yakawedzerwa rutsigiro yakagadzirwa columns (calculated columns), izvo zvinokutendera kuti utsanangure koramu paunogadzira tafura iyo kukosha kwayo kunoverengerwa otomatiki zvichienderana nezviri mune imwe column. Makoramu anogadzirwa anogona kunge ari echokwadi (anogadzirwa panhunzi nekuwana kwega kwega) kana kuchengetwa mudhatabhesi (inochengetwa pese panogadziriswa makoramu). Zviri mukati memakoramu anogadzirwa anowanikwa chete mukuverenga modhi (shanduko inoitwa chete kuburikidza nekugadziriswa kwekukosha mune imwe column inobatanidzwa mukuverenga). Semuyenzaniso:

    GADZIRA TAFURA t1(
    a INTEGER PRIMARY KEY,
    b IN,
    c TEKSTO,
    d INT INOGADZIRA SE (a*abs(b)) ZVINHU,
    e ZVINYORWA ZVINOGADZWA SE (substr(c,b,b+1)) AKACHENGEKWA
    );

  • Yakawedzera PRAGMA trusted_schema, setting SQLITE_DBCONFIG_TRUSTED_SCHEMA uye sarudzo yegungano "-DSQLITE_TRUSTED_SCHEMA", iyo inokutendera iwe kudzora kuisirwa kwekudzivirira kubva kurwisa kuburikidza nekugadziriswa kweiyo data schema mu database. Kudzivirirwa kunoshanda kunorambidza kushandiswa kweSQL mabasa (isina kunyorwa SQLITE_INNOCUOUS) mune zvinokonzeresa, maonero, CHECK uye DEFAULT zvirevo, indexes, uye makoramu akagadzirwa. Kushandiswa kwematafura echokwadi muzvinokonzeresa uye maonero kwakavharwa zvakare kunze kwekunge iyo tafura yakanyatso kuziviswa neSQLITE_VTAB_INNOCUOUS mureza.
  • Yakaita kugona kugovera zvivakwa kune SQL mabasa anotsanangurwa mumashandisirwo SQLITE_INNOCUOUS (mabasa asingakuvadzi asingavimbi nemiganhu yekunze uye haagoni kushandiswa kuita zviito zvakashata) uye SQLITE_DIRECTONLY (chete yakananga kufona muSQL queries, pasina mukana wekushandisa mune zvinokonzeresa, maonero uye data madhizaini);
  • Yakawedzerwa module uuid nekushandiswa kwemabasa ekugadzirisa UUID (RFC-4122);
  • Yakawedzera PRAGMA hard_heap_limit uye basa sqlite3_hard_heap_limit64() kudzora saizi yakakura yemurwi;
  • MuPRAGMA function_list yakawedzera kubuda kwemhando, zvivakwa uye nhamba yenharo dzebasa rega rega;
  • Kune chaiyo tafura DBSTAT akawedzera data aggregation mode;
  • sqlite3_open_v2() inoshandisa iyo SQLITE_OPEN_NOFOLLOW sarudzo, iyo inokutendera iwe kudzima kuvhurwa kwezviratidzo zvinongedzo;
  • Zvenharo PATH, yakapfuudzwa kumabasa eJSON, yakawedzera tsigiro ye "#-N" array notation;
  • Muchiyeuchidzo chekugovera hurongwa lookaside tsigiro yemadziva maviri akapatsanurwa endangariro akaiswa, imwe neimwe inogona kushandiswa kugovera mabhuraki ehukuru hwakasiyana (kupatsanurwa kunobvumidza iwe kuwedzera kushandiswa kweiyo lookaside system, uchidzikisa saizi yebuffer yakagoverwa kune imwe neimwe kubatana kubva pa120 kusvika 48. KB);
  • Tsigiro yePRAGMA yakamiswa legacy_file_format, iyo yakanga isingaenderane neVACUUM, makoramu akagadzirwa, uye indekisi inodzika (rutsigiro rwefomati yenhaka inogona kudzorerwa kuburikidza neSQLITE_DBCONFIG_LEGACY_FILE_FORMAT mureza mu sqlite3_db_config()).

Source: opennet.ru

Voeg