SQLite 3.35 tokollo

Ho lokolloa ha SQLite 3.35, DBMS e bobebe e entsoeng e le laebrari ea plug-in, e hatisitsoe. Khoutu ea SQLite e ajoa sebakeng sa sechaba, ke hore. e ka sebelisoa ntle le lithibelo le ntle ho tefo bakeng sa morero ofe kapa ofe. Tšehetso ea lichelete bakeng sa bahlahisi ba SQLite e fanoa ke consortium e entsoeng ka ho khetheha, e kenyelletsang lik'hamphani tse kang Adobe, Oracle, Mozilla, Bentley le Bloomberg.

Liphetoho tse kholo:

  • E kenyellelitsoe mesebetsi ea lipalo (log2(), cos(), tg(), exp(), ln(), pow(), joalo-joalo) e ka sebelisoang ho SQL. Ho kenya tšebetsong mesebetsi e hahelletsoeng ka hare ho hloka ho aha ka "-DSQLITE_ENABLE_MATH_FUNCTIONS" khetho.
  • Ts'ehetso e kentsoeng bakeng sa polelo ea "ALTER TABLE DROP COLUMN" ho tlosa likholomo tafoleng le ho hlakola lintlha tse neng li bolokiloe kholomong e fanoeng.
  • Ts'ebetsong ea ts'ebetso ea UPSERT (add-or-modify) e atolositsoe, e lumella ka lipolelo tse kang "KENYA ... HO THABANA U SE KE UA LETHO / HO HLAHISA" ho hlokomoloha phoso kapa ho etsa ntlafatso ho e-na le ho kenya haeba ho sa khonehe ho eketsa. data ka "INSERT" (mohlala, haeba rekoto e se e ntse e le teng, O ka etsa UPDATE sebakeng sa INSERT). Phetolelo e ncha e u lumella ho hlakisa li-blocks tse ngata tsa ON CONFLICT, tse tla sebetsoa ka tatellano. Leqephe la ho qetela la "ON CONFLICT" le lumella parameter ea tlhaloso ea likhohlano hore e tlosoe molemong oa ho sebelisa "DO UPDATE".
  • Ts'ebetso ea DELETE, INSERT, le UPDATE e tšehetsa polelo ea RETURNING, e ka sebelisoang ho bonts'a litaba tsa rekoto e hlakotsoeng, e kentsoeng kapa e fetotsoeng. Ka mohlala, poleloana "kenya ho ... id e khutlisetsang" e tla khutlisa sekhetho sa mohala o ekelitsoeng, 'me "ntlafatsa ... seta theko = theko * 1.10 theko e khutlisang" e tla khutlisa boleng ba theko e fetotsoeng.
  • Bakeng sa Common Table Expressions (CTE), e lumellang ts'ebeliso ea liphetho tsa nakoana tse boletsoeng ho sebelisoa polelo ea WITH, khetho ea "MATERIALIZED" le "NOT MATERIALIZED" e lumelletsoe. "MATERIALIZED" e fana ka maikutlo a ho boloka potso e boletsoeng ho tafole e arohaneng, ebe o lata lintlha ho tsoa lethathamong lena, 'me ka "NOT MATERIALIZED" lipotso li tla etsoa nako le nako ha pono e fumaneha. Qalong SQLite e ne e na le mokhoa oa kamehla oa "NOT MATERIALIZED", empa joale e fetohile "MATERIALIZED" bakeng sa CTEs e sebelisitsoeng ho feta hang.
  • Ho fokotsa tšebeliso ea memori ha ho etsoa ts'ebetso ea VACUUM ho databases tse kenyelletsang TEXT kapa BLOB boleng bo boholo haholo.
  • Mosebetsi o entsoe ho eketsa ts'ebetso ea optimizer le moralo oa lipotso:
    • Lintlafatso tse kentsoeng ha u sebelisa lits'ebetso tse nyane le tse kholo ka poleloana ea "IN".
    • Phethahatso ea polelo ea EXISTS e potlakisitsoe.
    • E kentse tšebetsong katoloso ea lipotso tse tsoang ho UNION ALL lipoleloana tse sebelisoang e le karolo ea JOIN.
    • Lenane lena le sebelisoa bakeng sa lipoleloana tsa IS NOT NULL.
    • E netefatsa hore "x IS NULL" le "x IS NOT NULL" li fetoleloa ho FALSE kapa TRUE bakeng sa li-columns tse nang le tšobotsi ea "NOT NULL".
    • Tlohela ho sheba linotlolo tsa kantle ho UPDATE haeba ts'ebetso e sa fetole likholomo tse amanang le konopo ea kantle ho naha.
    • E lumelloa ho tsamaisa likarolo tsa WHERE block ho li-subqueries tse nang le mesebetsi ea lifensetere, ha feela likarolo tseo li lekanyelitsoe ho sebetsa le li-constants le likopi tsa lipolelo tse tsoang PARTITION BY li-blocks tse sebelisoang mesebetsing ea lifensetere.
  • Liphetoho ho sebopeho sa mola oa taelo:
    • E kentse taelo ea ".filectrl data_version".
    • Litaelo tsa ".once" le ".output" joale li ts'ehetsa phetisetso ho motho ea sebelisang lipeipi tse sa boleloang ka mabitso ("|").
    • Likhang tsa "stmt" le "vmstep" li kentsoe taelong ea ".stats" ho bonts'a lipalo-palo mabapi le polelo le libali tsa mochini.

Source: opennet.ru

Eketsa ka tlhaloso