SQLite 3.35 levereras med nya inbyggda matematiska funktioner och mer

SQLite 3.35-release har släppts och i den här nya versionen av denna databashanterare matematiska funktionstillägg är markerade, samt stöd för ALTER TABLE DROP COLUMN-uttrycket för att släppa kolumner från en tabell, förbättrade funktioner och mer.

För de som inte känner till SQLite-paketet det är en lätt DBMS, utformad som ett plugin-bibliotek. SQLite-koden distribueras som allmän egendom, det vill säga det kan användas utan begränsningar och gratis för något ändamål.

De viktigaste nya funktionerna i SQLite 3.35

Som nämnts i början, i den här nya versionen inbyggda matematiska funktioner tillagda (log2 (), cos (), tg (), exp (), ln (), pow (), etc.) som kan användas i SQL. För att aktivera de inbyggda funktionerna krävs en montering med alternativet "-DSQLITE_ENABLE_MATH_FUNCTIONS".

Uttryck "ALTER TABLE DROP COLUMN" stöder nu att släppa kolumner från en tabell och radera data som tidigare lagrats i den här kolumnen.

Genomförandet av UPSERT-operationen (lägg till eller modifiera), vilket låter dig använda uttryck som "INSERT ON CONFLICT DO NOTHING / UPDATE" för att ignorera ett fel eller utföra en uppdatering istället för att infoga om det är omöjligt lägga till data via "INSERT" (till exempel om en post, UPDATE kan göras istället för INSERT).

I den nya versionen är det tillåtet att ange flera block «I KONFLIKT«, Som kommer att behandlas i ordning. I det sista "ON CONFLICT" -blocket är det tillåtet att inte ange konfliktdefinitionsparametern för att använda "DO UPDATE".

Verksamheten DELETE, INSERT och UPDATE stöder RETURNING-uttrycket, som kan användas för att visa innehållet i en borttagen, infogad eller modifierad post. Till exempel kommer "infoga i ... återvändande ID" den tillagda radidentifieraren och "uppdatera ... ange pris = pris * 1.10 returpris" returnerar värdet på det uppdaterade priset.

För generaliserade tabelluttryck (Common Table Expression, CTE), som möjliggör användning av temporärt namngivna resultatuppsättningar, med hjälp av MAT frågade operatören, godkände valet av lägen «MATERIALISERAT» och «INTE MATERIALISERAT».

  1. "MATERIALISERAT" betyder att cache-frågan som anges i vyn i en separat fysisk tabell med efterföljande hämtning av data från denna tabell.
  2. Och med "NOT MATERIALIZED" kommer upprepade frågor att utföras varje gång vyn öppnas. Ursprungligen var SQLite standardinställt till "NOT MATERIALIZED" men har nu ändrats till "MATERIALIZED" för CTE: er som används mer än en gång.

Av de andra förändringarna som sticker ut från den här nya versionen:

  • Minskad minnesförbrukning när VACUUM-operationer utförs för databaser som innehåller mycket stora värden med TEXT- eller BLOB-typer.
  • Arbetet har gjorts för att förbättra prestandan för optimerings- och frågeplanläggaren.
  • Optimeringar lades till när min- och max-funktionerna användes med uttrycket "IN".
  • Utförandet av EXISTS-uttalandet har påskyndats.
  • Expansionen av underfrågorna till UNION ALL-uttrycken som används i JOIN implementeras.
  • Index som används för IS NOT NULL-uttryck.
  • Omvandling av "x IS NULL" och "x IS NOT NULL" till FALSE eller TRUE tillhandahölls för kolumner med "NOT NULL" -flaggan.
  • Kontrollen av utländsk nyckel i UPDATE hoppas över om operationen inte ändrar de kolumner som är associerade med den främmande nyckeln.
  • Flytta delar av WHERE-satsen till underfrågor som innehåller fönsterfunktioner är tillåtna om dessa delar är begränsade till att arbeta med konstanter och kopior av "PARTITION BY" -satsuttryck som används i fönsterfunktioner.

Ändringar i kommandoradsgränssnittet:

  • Lade till kommandot ".filectrl data_version".
  • Kommandona ". En gång" och ".output" lade till stöd för att skicka utgången till en kallad styrenhet med namngivna rör ("|").
  • Kommandot ".stats" lade till argumenten "stmt" och "vmstep" för att visa statistik om virtuella maskinräknare och -uttryck.

Slutligen om du är intresserad av att veta mer om det om den här nya versionen av SQLite kan du kontrollera detaljerna genom att gå till följande länk.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.