Gratis program SQLiteStudio til redigering af SQLite-databaser. Filtypenavn SQLITE

Hvis du støder på filer med filtypenavnet .sqlite eller .sqlite3, og ikke ved, hvordan du åbner dem for at dykke ned i deres indre, så ville et gratis program være et glimrende valg. For dem, der undrer sig over, hvad disse filer er, er det en database i SQLite-format, hvor alle tabeldata er gemt i én fil. I dag bruger mange programmer SQLite-databaser til at gemme deres data i en organiseret form, for eksempel korrespondance og kontaktnumre i Viber.

SQLite behøver ikke at være installeret, det er den eneste eksekverbar fil, som du downloader, er hele programmet, som vi starter efter behov. Kun under den første lancering vil applikationen beskedent spørge, hvilket sprog du foretrækker at bruge; russisk er til stede. Under hver lancering dukker en tabel op med tip, som kan deaktiveres ved at markere den relevante boks.

Inden jeg dykker ned i nuancerne af, hvordan SQLite fungerer, vil jeg gerne komme med en lille bemærkning. Udviklere har ingen uudtalte regler for, hvilke udvidelser databasen skal have SQL data ite. Afhængigt af udviklernes fantasi kan filtypenavnet være enten meningsfuldt .sqlite, .sqlite3, sl2, sl3 eller mere universel db, db2, db3, sbd3. For at sikre dig, at du virkelig har en database i SQLite-formatet, skal du, og hvis den første linje indeholder sætningen "SQLite-format", så er du velkommen til at hente SQLiteStudio.

For at åbne databasen, klik i hovedmenuen “Databaser” -> “Tilføj database”, hvorefter et vindue popper op, hvor vi vælger filen med den database vi er interesseret i, evt. laver små indstillinger (hvilken version af databasen og om den skal huskes ), og klik på "OK". Du behøver ikke bekymre dig for meget om indstillingerne og lade alt stå som standard; i 99% af tilfældene fungerer alt godt.

Efter tilslutning af databasen føjes den til den venstre tabel, som, når der klikkes på den, afslører listen over tabeller, der er indeholdt der. På højre side kan du se strukturen af ​​tabellen på fanen med samme navn og de data, der er gemt der, for hvilke du skal klikke på fanen "Data".

Der er ingen mening i at tale om andre funktioner i SQLiteStudio, de fleste almindelige brugere de bliver ikke nødvendige, og alle andre forstår, hvorfor de gider at redigere databaser, og hvordan det skal gøres. Jeg vil bare give en anbefaling, gør det sikkerhedskopi databasen, før du begynder at klatre ind i den, meget mindre redigere den.

Overraskende nok er der mange indstillinger her, men de er alle for det meste relateret til udseende programmer (farver, skrifttyper, hvad der skal vises og hvad der skal skjules) og tastaturgenveje.

5+-programmet klarer sine opgaver, så du kan få adgang til data gemt i SQLite-formatdatabaser, redigere data og tabeller. Det vigtigste er, at alt fungerer ganske stabilt, hurtigt og ikke fryser på nogle filer af ukendte årsager, som applikationer fra andre udviklere.

Programmet fungerer fint på 32 og 64 bit operativsystemer. Grænsefladen er blevet oversat til cirka ti sprog, inklusive russisk.

Vi håber, at vi har hjulpet dig med at løse problemet med SQLITE3. Hvis du ikke ved, hvor du kan downloade en applikation fra vores liste, så klik på linket (dette er navnet på programmet) - du finder mere detaljeret information om, hvor man kan downloade en sikker installationsversion af den påkrævede applikation.

Et besøg på denne side skulle hjælpe dig specifikt med at besvare disse eller lignende spørgsmål:

  • Hvordan åbner man en fil med SQLITE3-udvidelsen?
  • Hvordan konverterer man en SQLITE3-fil til et andet format?
  • Hvad er filformatudvidelsen SQLITE3?
  • Hvilke programmer tjener filen SQLITE3?

Hvis du, efter at have læst materialet på denne side, stadig ikke har modtaget et tilfredsstillende svar på nogen af ​​de spørgsmål, der er præsenteret ovenfor, betyder det, at oplysningerne her om SQLITE3-filen er ufuldstændige. Kontakt os ved hjælp af kontaktformularen og skriv hvilke oplysninger du ikke fandt.

Hvad kan ellers give problemer?

Der kan være flere grunde til, at du ikke kan åbne filen SQLITE3 (ikke kun manglen på et passende program).
for det første- SQLITE3-filen er muligvis ikke linket korrekt (inkompatibel) med installeret applikation for dens vedligeholdelse. I dette tilfælde skal du selv ændre denne forbindelse. Til dette formål skal du klikke højre knap Hold musen over den SQLITE3-fil, du vil redigere, og klik på indstillingen "At åbne med" og vælg derefter det program, du har installeret, fra listen. Efter denne handling skulle problemer med at åbne filen SQLITE3 helt forsvinde.
For det andet- den fil, du vil åbne, kan simpelthen være beskadiget. I dette tilfælde ville det være bedst at finde en ny version af den eller downloade den igen fra samme kilde (måske af en eller anden grund i forrige session Downloaden af ​​SQLITE3-filen er ikke fuldført, og den kan ikke åbnes korrekt).

Vil du hjælpe?

Hvis du har Yderligere Information om filtypen SQLITE3, vil vi være taknemmelige, hvis du deler den med brugere af vores side. Brug formularen nedenfor og send os dine oplysninger om filen SQLITE3.

Forleden skulle jeg finde en lille, men funktionel databasemanager SQLite data under Windows. Der var mange tilbud på internettet, lige fra simple gratis databasebrowserprogrammer til sofistikerede hjælpeprogrammer med en masse både nødvendige og ubrugelige klokker og fløjter. Resultatet er denne anmeldelse. Jeg traf mit endelige valg baseret på følgende krav til programmet:

  1. Funktionalitet. Mulighed for at oprette tabeller, triggere, indekser mv.
  2. Fungerer korrekt med UTF-8-kodning
  3. Pris. Det er selvfølgelig ønskværdigt, at prisen er nul, men inden for rimelighedens grænser kan du punge ud lidt.
  4. Tilgængeligheden af ​​russisk grænseflade. Det er ikke vigtigt, men det er stadig mere bekvemt at arbejde med programmet på dit modersmål.
  5. Bekvemmelighed. Jeg vil ikke bruge lang tid på at søge rundt i grænsefladen på udkig efter nødvendige funktioner.

Da det er umuligt at omfavne uhyrligheden (jeg taler om antallet af tilbud på markedet software produkter), så valgte jeg flere programmer med forskellige muligheder og inkluderede dem i denne anmeldelse.

SQLite database browser

Pris: gratis

Nem at bruge SQLite database browser. Da programmets hovedformål er at se data, er funktionaliteten derfor begrænset.

Ved at bruge "SQLite Database Browser" kan du:

  1. se databasestruktur
  2. oprette nye tabeller ved hjælp af guiden
  3. oprette indekser
  4. se data i tabeller og udfør grundlæggende SQL-forespørgsler (programmet hænger fuldstændigt, når det udføres forespørgsler som "CREATE TRIGGER...").

SQLite Database Browser forstår UTF-8 og giver dig om nødvendigt mulighed for at ændre kodningen. Der er ingen russisk grænseflade.

SQLite3 manager LITE

Producentens hjemmeside: http://www.pool-magic.net/sqlite-manager.htm

Pris: Lite version uddeles gratis .

Sammenlignet med det tidligere program ser "SQLite3 manager LITE" mere funktionel ud. Udover blot at se data i tabeller, kan du også se og oprette triggere, indekser, visninger osv. Derudover kan du eksportere alle databasemetadata. I dette tilfælde kan du oprette datafiler til eksport af tabeller til Paradox og Interbase.

Programmet forsøgte også at skabe noget som en visuel forespørgselsguide svarende til MS Access, men efter min mening var forsøget mislykket.

U gratis version der er en ulempe - den forstår ikke data kodet i UTF-8. Det er selvfølgelig muligt at angive databasekodningen, når en fil åbnes, men UTF-8 er ikke inkluderet på listen over kodninger. Jeg har aldrig set, hvordan den fulde version af programmet fungerer, fordi... på producentens hjemmeside brækker djævelen benet. Der hænger en form for uforståelig javascript, der viser uforståelig information. Generelt var indtrykket, at projektet var gået i stå.

SQLite administrator

Pris: gratis

Ganske nem at bruge og funktionelt program. Hele databasestrukturen præsenteres i form af et træ af objekter, som kan tilpasses afhængigt af dine præferencer. Tilsyneladende er SQLite Administrator skrevet ved hjælp af . Blandt de ekstra funktioner i programmet er generering af Delphi-kode fra et udvalgt SQL-fragment. At oprette tabeller, triggere osv. praktiske guider bruges. Da jeg brugte dette program, var jeg meget skuffet over manglen på muligheder Normal drift med UTF-8 og lidt, men stadig noget forkælet indtrykket af den russiske grænseflade - nogle inskriptioner passer ikke ind i den plads, der er tildelt dem. Så da jeg testede brugte jeg standard engelsk.

Hvis det ikke er vigtigt for dig at bruge UTF-8, så download SQLite administrator - du vil ikke fortryde.

SQLiteManager

Pris: $49 Demoversion tilgængelig

SQLiteManager ligesom det forrige program har nok brugervenlig grænseflade, forstår UTF-8 perfekt og har sammen med dette en række af sine egne "tricks". Blandt hvilke:

  1. SQL Query Analyzer
  2. Kontrol af databaseintegritet
  3. Database optimering
  4. Muligheden for at bruge dine egne scripts i programmet (efter min mening VBScript) for at forbedre brugervenligheden.

TIL ekstra funktioner Programmet inkluderer muligheden for at generere rapporter på databasen. Demoversionen har sine egne strenge begrænsninger på forespørgsler, for eksempel er kun de første 20 poster fra sættet inkluderet i SELECT-resultaterne. Med hensyn til brugervenlighed blev indtrykket i høj grad spoleret af flimren ved gentegning af vinduer. Min computer er ikke så gammel, men selv med 512 Mb blinkede videovinduerne mærkbart.

SQLite Maestro

Pris: fra $79 er der en prøveversion i 30 dage .

Generelt er produktlinjen fra SQL Maestro totaler stor mængde produkter til administration af en bred vifte af databaser, inklusive SQLite. Det første indtryk af programmet er et vellavet legetøj til fordybelse udefra. Ja SQLite Maestro har al den funktionalitet, jeg havde brug for, et praktisk træ af databaseobjekter, evnen til hurtigt at oprette forskellige genstande DB osv., men efter rimelig nem at bruge SQLite administrator fremkomsten af ​​forvirrende menuer på flere niveauer med en masse forskellige muligheder, som stort set ikke er nødvendige i princippet, bliver det på en eller anden måde uhyggeligt at arbejde med dette program. Af denne grund blev den indstillet til 1 for nemheds skyld. Prisen var heller ikke særlig behagelig - $79. For mig ville det være bedre, hvis de forenklede grænsefladen og sænkede prisskiltet til mindst $50, så kunne jeg overveje at købe det.

SQLite ekspert

Pris: Personlig version - gratis, Professionel version- fra $38

Samlet set er jeg det heller ikke store forskelle versioner Personlig fra Professionel . For at få arbejdet gjort SQLite ekspert det tog ikke mere end fem minutter. Programmet har hele det sæt funktioner, som jeg havde brug for. Synes godt om SQLiteManager ekspert kan kontrollere databasens integritet, eksportere data til CSV eller andre databaseformater, har en praktisk SQL-editor, guider til oprettelse af tabeller, indekser, triggere osv. Adgang til programmets funktioner er noget sværere end SQLite administrator , men ikke så meget som at skræmme dig væk kun med dit udseende :). Generelt valgte jeg SQLite Expert Personal .

Det er dette program, der på dette tidspunkt mit arbejde med SQLite viste bedste resultater både hvad angår kvalitet og brugervenlighed, og hvad angår sættet af alle nødvendige funktioner. Det er selvfølgelig ærgerligt, at den gratis administrator ikke ved, hvad UTF-8 er - måske ny version bliver rettet, så vil jeg måske genoverveje mit valg.

Bogreol

Navn:Databaser og Delphi. Teori og praksis

Beskrivelse Bogen er baseret på materialer fra foredrag og praktiske klasser, udviklet af forfatteren, og kombinerer teoretisk grundlag Og praktiske aspekter udvikling relationelle databaser data.

Køb på liter 383 gnide.
Forfatter: Anatoly Khomonenko, Vladimir Gofman
Navn: Arbejder med databaser i Delphi
Beskrivelse: Diskuterer brugen af ​​Delphi-værktøjer til udvikling af databaseapplikationer. Begreberne for databaser er givet, elementerne karakteriseres og stadierne i design af relationelle databaser beskrives, udviklingsteknologien er skitseret informationssystemer, dækker over teknikker til at arbejde med data, oprette tabeller og databaseapplikationer og udarbejde rapporter.
Køb på liter 151 gnid.

Den tredje del er finesser og funktioner.

Denne del er et sammensurium af alle mulige SQLite-funktioner. Jeg har samlet her (efter min mening) de vigtigste emner, uden at forstå hvilke det er umuligt at forstå SQLite nirvana.

Da der igen er en masse information, vil artiklens format være som følger: en kort introduktion til interessant emne og et link til hjemmesiden, hvor detaljerne er. Siden er desværre på engelsk.

Brug af SQLite i flertrådede applikationer
SQLite kan bygges enkelt-trådet (kompileringsmulighed SQLITE_THREADSAFE = 0).

I denne udførelsesform kan den ikke bruges samtidigt fra flere tråde, da der overhovedet ikke er nogen synkroniseringskode. For hvad? For hæsblæsende fart.

Du kan kontrollere, om der er multithreading ved hjælp af opkaldet sqlite3_threadsafe(): hvis det returnerede 0, så er det single-threaded SQLite.

Som standard er SQLite bygget med trådunderstøttelse (sqlite3.dll).

Der er to måder at bruge multi-threaded SQLite på: serialiseret og multi-thread.

Serialiseret(du skal angive flaget SQLITE_OPEN_FULLMUTEX når du åbner en forbindelse). I denne tilstand kan tråde foretage SQLite-kald på enhver måde, de vil, uden begrænsninger. Men alle opkald blokerer hinanden og behandles strengt sekventielt.

Multi-tråd(SQLITE_OPEN_NOMUTEX). I denne tilstand kan du ikke bruge den samme forbindelse samtidigt fra flere tråde (men det er tilladt samtidig brug forskellige forbindelser forskellige vandløb). Denne tilstand bruges normalt.

Dataformat
En SQLite-database kan gemme (tekst)data i UTF-8 eller UTF-16.

Kit API-kald består af opkald, der modtager UTF-8 ( sqlite3_XXX) og opkald, der modtager UTF-16 ( sqlite3_XXX16).

Hvis datatypen for grænsefladen og forbindelsen ikke stemmer overens, udføres konverteringen i farten.

Brug altid UTF-8.

UNICODE support
Som standard - ingen support. Du skal oprette din egen kollation (sammenligningsmetode) via sqlite3_create_collation .
Og definer dine indbyggede funktioner lide(), øvre(), nedre() igennem www.sqlite.org/c3ref/create_function.html.

Og nogle mennesker bygger allerede SQLite DLL'er med det.

Datatyper og værdisammenligning
Som allerede nævnt giver SQLIte dig mulighed for at skrive enhver værdi til enhver kolonne.

En værdi inde i databasen kan tilhøre en af følgende typer opbevaring ( opbevaringsklasse):
NUL,
HELTAL(optager 1,2,3,4,6 eller 8 bytes),
ÆGTE(flydende kommanummer, 8 bytes i IEEE-format),
TEKST(streng i databasedataformat, normalt UTF-8),
BLOB(binære data, gemt "som de er").

Sorteringsrækkefølgen for værdier af forskellige typer er:
- NUL mindst af alt (inklusive andre NUL);
- HELTAL Og ÆGTE mindre end nogen TEKST Og BLOB, sammenlignes aritmetisk med hinanden;
- TEKST mindre end nogen BLOB, sammenlignes med hinanden baseret på deres sammenstilling;
- BLOB-er sammenlignes med hinanden igennem memcmp().

SQLite udfører implicitte typekonverteringer i farten flere steder:
- når du indtaster en værdi i en kolonne (kolonnetypen angiver konverteringsanbefalingen);
- når man sammenligner værdier med hinanden.

Værdier BLOB Og NUL er altid indtastet i enhver kolonne "som de er".

Til kolonne TEKST værdier TEKST værdier indtastes "som de er" HELTAL Og ÆGTE blive strenge.
Til kolonne NUMERISK, HELTAL tal skrives "som de er", og strenge bliver til tal, hvis _de kan_ (det vil sige, at den omvendte "tabsfri" konvertering er tilladt).
Til kolonne ÆGTE reglerne ligner HELTAL(NUMERISK); forskellen er, at alle tal er repræsenteret i flydende kommaformat.
Til kolonne INGEN værdier indtastes "som de er" (denne type bruges som standard, medmindre en anden er angivet).

Når man sammenligner værdier forskellige typer Yderligere typekonvertering kan udføres mellem hinanden.

Når man sammenligner et tal med en streng, hvis strengen kan konverteres til et tal "tabsfrit", bliver det et tal.

Jeg vil her bemærke, at der i SQLite kan være så mange, du vil, i et unikt indeks NUL værdier (Oracle er enig i dette og MS SQL er uenig).

Database i hukommelsen
Hvis du er på opkald sqlite3_open() videregive filnavnet som ":hukommelse:", så vil SQLite oprette en forbindelse til en ny (ren) database i tankerne.

Denne forbindelse kan absolut ikke skelnes fra forbindelsen til databasen i filen i henhold til brugslogikken: den samme SQL sæt kommandoer

Desværre er der ingen måde at åbne to forbindelser til den samme database i hukommelsen.

UPD: Det viser sig, at det allerede er muligt at åbne to forbindelser til en database i hukommelsen.

Rc = sqlite3_open("fil:memdb1?tilstand=hukommelse&cache=delt", &db);

TILFØJ DATABASE "fil:memdb1?mode=hukommelse&cache=delt" SOM aux1;

Sammenføjning af flere databaser samtidigt
Brug opkaldet for at åbne en forbindelse til databasen sqlite3_open().

Når som helst vi kan åben forbindelse tilslutte op til 10 flere databaser via SQL kommando TILKNYT DATABASE.

Sqlite3_open("foo.sqlite3", &db); // åbn en forbindelse til databasen i filen "foo.sqlite3" sqlite3_exec(&db, "VÆGTIG "bar.sqlite3" AS bar", ...); // tilføje "bar.sqlite3"

Nu er alle databasetabeller i filen db1.sqlite3 transparent tilgængelige i vores forbindelse.

For at løse navnekonflikter skal du bruge join-navnet (hovedbasen kaldes "hoved"):

VÆLG * FRA main.my_table UNION VÆLG * FRA bar.my_table

Intet forhindrer dig i at vedhæfte til databasen ny base i hukommelsen og bruge den til caching osv.

Sqlite3_open("foo.sqlite3", &db); // åbne en forbindelse til databasen i filen "foo.sqlite3" sqlite3_exec(&db, "VÆG TIL ":hukommelse:" AS mem", ...); // vedhæft en ny database i hukommelsen

Det er meget nyttig mulighed. De vedhæftede databaser skal have samme dataformat som hoveddatabasen, ellers vil der opstå en fejl.

Midlertidig database
Send en tom streng i stedet for filnavnet til sqlite3_open() og en midlertidig database vil blive oprettet i en fil på disken. Desuden, efter at have lukket forbindelsen til databasen, vil den blive slettet fra disken.
Finjustering af databasen ved hjælp af PRAGMA-kommandoen
SQL kommando PRAGMA tjener til at indstille alle slags indstillinger for forbindelsen eller selve databasen:

PRAGMA navn; // anmod om den aktuelle værdi af navneparameteren PRAGMA navn = værdi; // sæt navneparameteren til værdi

Opsætning af forbindelsen skal (naturligvis) ske umiddelbart efter åbning og før brug.

En komplet beskrivelse af alle parametre er tilgængelig.

Jeg vil fokusere på de vigtigste ting.

PRAGMA sidestørrelse = bytes; // database sidestørrelse; en databaseside er en udvekslingsenhed mellem disken og cachen, det er rimeligt at gøre det lig med størrelsen af ​​diskklyngen (jeg har 4096) PRAGMA cache_size = -kibibytes; // indstil forbindelsens cachestørrelse i kilobytes, som standard er det 2000 databasesider PRAGMA-kodning = "UTF-8"; // database datatype, brug altid UTF-8 PRAGMA fremmede_nøgler = 1; // aktiver understøttelse af fremmednøgler, som standard - DISABLED PRAGMA journal_mode = SLET | TRUNCATE | VEDHOLDE | HUKOMMELSE | WAL | AF; // indstil logtypen, se nedenfor PRAGMA synkron = 0 | FRA | 1 | NORMAL | 2 | FULD; // type transaktionssynkronisering, se nedenfor

Journal og registrering af transaktioner
Så vi kommer til et emne, hvor beherskelse af det øjeblikkeligt overfører dig til tredje niveau af SQLite mastergraden.

SQLite vedligeholder omhyggeligt integriteten af ​​data i databasen (ACID), og implementerer en mekanisme til at ændre data vha. transaktioner.

Kort om transaktioner: En transaktion rulles enten helt tilbage eller helt tilbage. Der kan ikke være mellemtilstande.

Hvis du ikke eksplicit bruger transaktioner ( BEGYNDE; ...; BEGÅ;), At en implicit transaktion oprettes altid. Den starter før kommandoen udføres og udføres umiddelbart efter.

Det er i øvrigt herfra klagerne over SQLites "langsommelighed". SQLite kan indsætte op til 50 tusinde poster i sekundet, men registrere transaktioner den kan ikke mere end ~50 pr. sekund.

Dette er grunden til, at det ikke er muligt at indsætte poster hurtigt ved hjælp af en implicit transaktion.

Med standardindstillinger garanterer SQLite databaseintegritet, selv når strømmen er slukket under drift.

Sådan en fantastisk adfærd opnås ved at lede magasin (speciel fil) og en smart mekanisme til at synkronisere ændringer på disk.

Kort opdatering af data i databasen fungerer således:

Før enhver databaseændring gemmer SQLite redigerbare sider fra DB til separat fil(magasin), det vil sige blot kopierer dem derhen;
- efter at have sikret sig, at en kopi af siderne er blevet oprettet, begynder SQLite at ændre databasen;
- efter at have sikret sig, at alle ændringer i databasen "nåede disken" og databasen blev komplet, sletter SQLite loggen.

Atomiciteten af ​​transaktionsmekanismen er beskrevet i detaljer.

Hvis SQLite åbner en forbindelse til databasen og ser, at der allerede er en log, indser den, at databasen er i en ufuldstændig tilstand og ruller automatisk den sidste transaktion tilbage.

Det vil sige, at databasegendannelsesmekanismen efter fejl i virkeligheden er indbygget i SQLite og fungerer ubemærket af brugeren.

Som standard holdes loggen i tilstanden SLET.
PRAGMA journal_mode = SLET

Det betyder, at logfilen slettes efter transaktionen er gennemført. Selve det at have en logfil i denne tilstand betyder for SQLite, at transaktionen ikke blev gennemført, og databasen skal gendannes. Logfilen har navnet på databasefilen tilføjet "-journal".

I tilstanden TRUNCATE Logfilen afkortes til nul (på nogle systemer er dette hurtigere end at slette filen).

I tilstanden VEDHOLDE begyndelsen af ​​logfilen er fyldt med nuller (dens størrelse ændres dog ikke, og den kan optage meget plads).

I tilstanden HUKOMMELSE logfilen opbevares i hukommelsen, og dette virker hurtigt, men garanterer ikke databasegendannelse i tilfælde af fejl (der er ingen kopi af dataene på disken).

Eller du kan helt deaktivere journalen ( PRAGMA journal_mode = FRA). I denne situation holder tilbagerulning af transaktioner op med at virke (kommando TILBAGE), og databasen vil højst sandsynligt blive beskadiget, hvis programmet afsluttes unormalt.

For en database i hukommelsen kan logtilstand kun være enten HUKOMMELSE, eller AF.

Lad os gå lidt tilbage. Hvordan "sørger" SQLite for, at databasen altid vil være konsistent?

Vi ved det moderne systemer bruge smart caching til at forbedre ydeevnen og kan forsinke skrivninger til disk.

Lad os sige, at SQLite er færdig med at skrive til databasen og ønsker at slette logfilen for at markere, at transaktionen blev begået.

Hvad hvis filen slettes, før databasen opdateres?

Hvis strømmen er slukket i denne periode, vil loggen ikke længere eksistere, og databasen vil endnu ikke være komplet - datatab!

Kort sagt, en smart ændringsforpligtelsesmekanisme skal stole på nogle garantier fra disk system og OS.

PRAGMA synkron angiver graden af ​​"paranoia" af SQLite i denne henseende.

Mode AF(eller 0) betyder: SQLite betragter dataene som værende rettet på disken umiddelbart efter at den har overført dem til OS (det vil sige umiddelbart efter at have kaldt den tilsvarende OS API).

Det betyder, at integriteten er garanteret hvornår applikationen går ned(da OS fortsætter med at køre), men ikke hvornår OS går ned eller strømsvigt.

Synkroniseringstilstand NORMAL(eller 1) garanterer integritet under OS-nedbrud og næsten alle strømafbrydelser. Der er en ikke-nul chance for, at hvis strømmen går tabt på det mest uhensigtsmæssige tidspunkt basen forringes. Dette er en slags gennemsnitlig kompromistilstand med hensyn til ydeevne og pålidelighed.

Mode FULD garanterer integritet altid og overalt og i tilfælde af eventuelle ulykker. Men det virker selvfølgelig langsommere, fordi i visse steder der er ventepauser. Og dette er standardtilstanden.

Så kun emnet for et magasin som WAL.

WAL-logtilstand
Som standard "vender" databaselogtilstanden altid til SLET. Lad os sige, at vi åbnede en forbindelse til databasen og indstillede tilstanden VEDHOLDE. Ændrede data, lukket forbindelse.

Der er en logfil tilbage på disken (hvis begyndelsen er fyldt med nuller).

Åbn forbindelsen til databasen igen. Hvis du ikke indstiller logtilstanden på denne forbindelse, fungerer den igen SLET. Når vi har opdateret dataene, vil transaktionsbekræftelsesmekanismen slette logfilen.

Logtilstand WAL det virker anderledes - det er "permanent". Når vi har skiftet databasen til WAL-tilstand, vil den forblive i denne tilstand, indtil den eksplicit ændres til en anden log-tilstand.

Så hvorfor er det nødvendigt?

SQLite blev oprindeligt designet som en indlejret database. Arkitekturen til at dele samtidig adgang til data er designet primitivt: flere forbindelser kan læse databasen samtidigt, men skrive til dette øjeblik Der kan kun være én forbindelse ad gangen. Det betyder som minimum det skriveforbindelse venter på, at databasen bliver "frigjort" fra læsere. Når du prøver at skrive til en "optaget" database, modtager applikationen en fejl SQLITE_BUSY(ikke at forveksle med SQLITE_LOCKED!). Denne adgangsdelingsmekanisme opnås gennem fillåsnings-API'en (som ikke fungerer godt på netværksdrev, så det anbefales ikke at bruge SQLite der; )

- Udvidelse (format) er tegnene i slutningen af ​​filen efter den sidste prik.
- Computeren bestemmer filtypen ved dens udvidelse.
- Ved Windows standard viser ikke filtypenavne.
- Nogle tegn kan ikke bruges i filnavnet og filtypenavnet.
- Ikke alle formater er relateret til det samme program.
- Nedenfor er alle de programmer, der kan bruges til at åbne filen SQLITE.

SQLite er et bibliotek, der inkluderer en fuldstændig selvstændig, transaktionsbaseret SQL-databasemotor. Kræver ikke installation eller systemkonfiguration. Der er heller ingen grund til at konfigurere serveren, ingen grund til at starte eller stoppe den, og ingen grund til at oprette en ny database. Et andet plus er, at det fungerer på skift og starter og afslutter hver del separat, hvilket er nyttigt, hvis der pludselig er en fejl, eller systemet svigter. Takket være dette vil dataene ikke gå tabt, men vil blive gemt og vil fortsætte med at fungere. SQL er den mest udbredte database i verden og er meget almindelig. Har en helt åben...

Database NET er ekstremt praktisk værktøj, hvilket giver mulighed for forskellige manipulationer med utallige databaser. Efter at have downloadet applikationen kan du nemt oprette, vælge, slette eller opdatere de ønskede datatabeller. Programmet kan eksportere eller udskrive tabeller med data. Programmet interagerer med Access, Excel. Understøtter arbejde med databaser: MySQL, Oracle, SQLite, SQLServer, OLEDB, ODBC, OData, SQLAzure, LocalDB, PostgreSQL og andre databaser. Til korrekt drift Programmet kræver obligatorisk installation af Microsoft. NET Framework. Giver dig mulighed for at vælge enhver skrifttype og minimere den til bakken.