Ukukhutshwa kweSQLite 3.35

Ukukhutshwa kweSQLite 3.35, i-DBMS ekhaphukhaphu eyenzelwe njengelayibrari yeplagi, ishicilelwe. Ikhowudi yeSQLite isasazwa kwindawo yoluntu, okt. ingasetyenziswa ngaphandle kwezithintelo kwaye simahla kuyo nayiphi na injongo. Inkxaso yemali kubaphuhlisi beSQLite inikezelwa yi-consortium eyenziwe ngokukodwa, equka iinkampani ezifana ne-Adobe, i-Oracle, i-Mozilla, i-Bentley kunye ne-Bloomberg.

Utshintsho oluphambili:

  • Imisebenzi eyongeziweyo eyakhelwe-ngaphakathi yezibalo (log2 (), cos (), tg (), exp (), ln (), pow (), njl.) enokusetyenziswa kwiSQL. Ukwenza imisebenzi eyakhelwe-ngaphakathi kufuna ukwakhiwa ngo-"-DSQLITE_ENABLE_MATH_FUNCTIONS" ukhetho.
  • Ukusetyenziswa kwenkxaso ye-"ALTER TABLE DROP COLUMN" intetho yokususa iikholamu kwitheyibhile kunye nokususa idatha egcinwe kwikholamu enikiweyo.
  • Ukuphunyezwa komsebenzi we-UPSERT (yongeza-okanye-ukuguqula) kwandisiwe, ukuvumela ngokusebenzisa intetho efana ne-"FAKA ... KUSIXHOBO UZENZE NTO/UHLAZIYO" ukungahoyi imposiso okanye ukwenza uhlaziyo endaweni yokufaka ukuba akunakwenzeka ukongeza. idatha ngokusebenzisa "INSERT" (umzekelo, ukuba irekhodi sele likhona, endaweni FAKA ungenza UHLAZIYO). Uguqulelo olutsha lukuvumela ukuba uchaze iibhloko ezininzi KWI-CONFLICT, eziza kucutshungulwa ngokulandelelana. Ibhloko yokugqibela ethi "ON CONFLICT" ivumela ukuba iparamitha yomiselo lwempixano ingabandakanywa ukuze kusetyenziswe " YENZA UHLAZIYO".
  • Imisebenzi ye-CIMA, I-INSERT, kunye ne-UPDATE ixhasa i-RETURNING expression, enokusetyenziswa ukubonisa imixholo yerekhodi ecinyiweyo, efakiweyo, okanye elungisiweyo. Umzekelo, ibinzana elithi "faka kwi ... id ebuyisela" iya kubuyisela isazisi somgca owongezelelweyo, kwaye "uhlaziyo ... ixabiso lentengo = ixabiso * 1.10 ixabiso lokubuyisela" liya kubuyisela ixabiso lexabiso elitshintshileyo.
  • NgeeNgcaciso zeTheyibhile eziqhelekileyo (CTE), ezivumela ukusetyenziswa kweeseti zeziphumo ezinegama lexeshana ezichazwe kusetyenziswa i- WITH statement, ukhetho lwe "MATERIALIZED" kunye "NOT MATERIALIZED" iindlela zivumelekile. I-β€œMATERIALIZED” ithetha ukugcina umbuzo ochaziweyo kwimboniselo yetafile eyahlukileyo kwaye emva koko ulande idatha kule theyibhile, kwaye ngemibuzo ethi "NOT MATERIALIZED" iya kwenziwa qho xa imboniselo ifunyenwe. I-SQLite yayingagqibekanga ekuqaleni ku-"NOT MATERIALIZED", kodwa ngoku itshintshele ku-"MATERIALIZED" kwii-CTEs ezisetyenziswa ngaphezu kwesinye.
  • Ukunciphisa ukusetyenziswa kwememori xa kusenziwa umsebenzi we-VACUUM kwiziko ledatha ezibandakanya ixabiso elikhulu kakhulu le-TEXT okanye i-BLOB.
  • Umsebenzi wenziwe ukwandisa ukusebenza kwesilungisi kunye nesicwangcisi semibuzo:
    • Ukongezwa okongeziweyo xa usebenzisa ubuncinci kunye nobuninzi bemisebenzi enebinzana elithi "IN".
    • Ukuphunyezwa kwengxelo ye-EXISTS ikhawulezisiwe.
    • Kuphunyezwe ukwandiswa kwemibuzo engaphantsi kwe-UNION ZONKE iintetho ezisetyenziswa njengenxalenye ye-JOIN.
    • Isalathisi sisetyenziselwa IS NOT NULL amabinzana.
    • Iqinisekisa ukuba "x IS NULL" kunye "x IS NOT NULL" ziguqulwa zibe FALSE okanye TRUE kwiikholamu ezinophawu "NOT NULL".
    • Tsiba ujonge izitshixo zangaphandle kwi-UPDATE ukuba umsebenzi awutshintshi imiqolo ehambelana neqhosha langaphandle.
    • Ivumelekile ukususa iinxalenye ze-WHERE ibhloko kwiinkqubo ezincinci eziqulathe imisebenzi yefestile, nje ukuba loo malungu athintelwe ekusebenzeni ngokuzinzileyo kunye neekopi zentetho ezivela kwi-PARTITION BY blocks ezisetyenziswa kwimisebenzi yefestile.
  • Utshintsho kujongano lomgca womyalelo:
    • Yongezwe ".filectrl data_version" umyalelo.
    • Imiyalelo ethi ".once" kunye ".output" ngoku ixhasa imveliso egqithiselwayo kwisibambi esibizwa kusetyenziswa imibhobho engachazwanga ("|").
    • Iimpikiswano ze-β€œstmt” kunye ne-β€œvmstep” zongezwe kumyalelo we-β€œ.stats” wokubonisa izibalo kwiintetho kunye nezixhobo zokubala zoomatshini.

umthombo: opennet.ru

Yongeza izimvo