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