SQLite tilbyr ikke en klient-server databasemodell, noe som eliminerer behovet for installasjon og administrasjon. Den kjører i minnet, som lar deg kjøre databasen uten server. SQLite gir et interaktivt skall som du kan bruke til å samhandle med databaser og SQLite-motoren.
Denne opplæringen vil dekke bruk av SQLite shell for å lage databaser, lage tabeller og sette inn data.
Få SQLite Shell
For å få SQLite til Linux-systemet ditt, åpne nettleseren din og naviger til:
https: // www.sqlite.org / nedlasting.html
Velg SQLite-verktøyene for systemet ditt og last dem ned. Når du pakker ut arkivet, bør du ha sqlite3 binært. For å starte SQLite-skallet, kjør sqlite3-binæren.
Du kan også installere SQLite ved hjelp av pakkebehandling. For å installere det ved hjelp av apt, bruk kommandoen:
sudo apt-get oppdateringsudo apt-get install sqlite3
SQLite-skallet
SQLite-skallet er et enkelt kommandolinjeverktøy som lar deg kjøre rå SQL-spørsmål mot en database eller zip-arkiver som databasefiler.
Start skallet med kommandoen:
# sqlite3SQLite versjon 3.27.2 25.02.2019 16:06:06
Tast inn ".hjelp "for brukstips.
Koblet til en midlertidig minnedatabase.
Bruk ".åpne FILENAME "for å åpne på nytt i en vedvarende database.
sqlite>
Når du er i SQLite Shell, kan du begynne å utføre kommandoer. Skriv inn .hjelp-kommandoen for å se shell-kommandoen:
sqlite> .hjelp.arkiv ... Administrer SQL-arkiver
.auth PÅ | AV Vis tilbakering fra autorisasjon
.sikkerhetskopi ?DB? FILE Backup DB (standard "main") til FILE
.kausjon på | av Stopp etter å ha slått på en feil. Standard AV
.binær på | av Slå binær utgang på eller av. Standard AV
.cd DIRECTORY Endre arbeidskatalogen til DIRECTORY
.endringer på | av Vis antall rader endret av SQL
.sjekk GLOB mislykkes hvis utdata siden .testcase stemmer ikke overens
.klone NEWDB Klone data i NEWDB fra eksisterende database
.databaser Liste over navn og filer på vedlagte databaser
.dbconfig ?op? ?val? Liste eller endre alternativene for sqlite3_db_config ()
.dbinfo ?DB? Vis statusinformasjon om databasen
.dump?BORD?... Gjengi alt databaseinnhold som SQL
.ekko på | av Slå kommandoen ekko på eller av
.eqp on | off | full |… Aktiver eller deaktiver automatisk EXPLAIN QUERY PLAN
----------------------------------------------------------------------
Det er godt å merke seg at .hjelp-kommandoen viser ikke SQL-spørringene du kan utføre mot en database. Punktkommandoene er enlinjekommandoer som konfigurerer eller interagerer med skallet direkte.
For å få listen over alle databaser mens du er inne i SQLite-skallet, bruk .databaser kommandoer.
sqlite> .hoveddatabaser:Det er bra å eksperimentere med SQLite-skallet for å lære å konfigurere og samhandle med det. Hvis du trenger en detaljert guide, bør du vurdere SQLite-dokumentasjonen:
https: // sqlite.org / docs.html
Hvordan lage en SQLite-database
For å lage en SQLite-database, er alt du trenger å gjøre å ringe sqlite3-kommandoen etterfulgt av navnet på databasen du vil opprette. Merk at hvis den spesifiserte databasen eksisterer, åpner SQLite databasen inne i skallet.
Den generelle syntaksen for å opprette en database er som:
sqlite3 dbName.dbFor eksempel for å lage databasefilmene.db bruk kommandoen:
sqlite3 filmer.dbSQLite versjon 3.27.2 25.02.2019 16:06:06 Enter ".hjelp "for brukstips.
sqlite>
Å utføre denne kommandoen vil opprette databasen hvis den ikke eksisterer, eller åpne den hvis databasen eksisterer. For å se databasene, bruk .databaser kommandoer som:
sqlite> .databaser hoved: / hjem / debian / filmer.dbLegge ved databaser
SQLite lar deg legge til en database for å utføre spesifikke funksjoner under den. Ved hjelp av ATTACH DATABASE-spørringen kan vi legge til en database som:
sqlite> ATTACH DATABASE "filmer.db "som" u \ filmer.db ";sqlite> .databaser
hoved: / hjem / debian / filmer.db
u \ filmer.db: / hjem / debian / filmer.db
As-setningen setter et aliasnavn der databasen skal legges til. Det er greit å merke seg at hvis den vedlagte databasen ikke eksisterer, oppretter SQLite den automatisk.
For å koble en database, bruk DETACH DATABASE-spørringen. For eksempel:
DETACH DATABASE “u \ filmer.db ”;MERK: Noen databasenavn som brukes i denne opplæringen, er kun for demonstrasjonsformål og inkluderer kanskje ikke aksepterte navnekonvensjoner.
SQLite Create Table
For å lage en tabell i en SQLite-database, bruker vi spørringen CREATE TABLE etterfulgt av tabellnavnet. Den generelle syntaksen er:
OPPRETT TABELL db_name.tb_name (kolonnenavn datatype PRIMÆR NØKKEL (kolonne (r)),
column_name2 datatype,
..
column_nameN datatype
);
La oss for eksempel lage en databaseprogrammering og lage en tabell med språk med relevant informasjon som:
sqlite3 programmering.db sqlite> OPPRETT TABELL-språk (…> Id INTEGER PRIMÆRE NØKKEL AUTOINKRAMERING,
...> navn TEKST IKKE NULL,
…> Skaper TEKST,
…> År INTEGER IKKE NULL,
...> versjon TEKST ...>);
For å bekrefte at tabellen er vellykket, bruk .tabeller SQLite-kommando for å liste alle tabellene i databasen:
sqlite> .tabeller språkFor å få mer informasjon om en tabell, bruk kommandoen .skjema etterfulgt av tabellnavnet.
sqlite> .skjemaspråk OPPRETT TABELL-språk (id INTEGER PRIMÆR NØKKEL AUTOINKREM,
navn TEKST IKKE NULL,
skaper TEKST,
år INTEGER IKKE NULL,
versjon TEKST
);
SQLite Sett inn data
For å sette inn nye rader med data i en tabell, bruker vi INSERT INTO-spørringen. Den generelle syntaksen for denne påstanden er:
INSERT IN TABLE_NAME VALUES (VAR1, VAR2, VAR3,… VARN);Hvis du for eksempel vil legge til data i språktabellen som er opprettet ovenfor, bruker du spørringen nedenfor:
sqlite> INSERT INTO languages…> VERDIER (1, "Python", "Guido van Rossum", 1991, "0.9.1");
Fortsett å fylle ut databasetabellene med informasjon.
sqlite> INSERT INTO languages…> VERDIER (2, "JavaScript", "Brendan Eich", 1995, "ECMA 1");
For å bekrefte at dataene er vellykket, kan du bruke SELECT-spørringen:
sqlite> VELG * FRA språk;1 | Python | Guido van Rossum | 1991 | 0.9.1 2 | JavaScript | Brendan Eich | 1995 | ECMA 1
SQLite Fjern data
For å fjerne data i en tabell kan vi bruke DELETE-spørringen etterfulgt av WHERE og tilstanden. Den generelle syntaksen er:
SLETT FRA tb_name WHERE condition;For eksempel, for å fjerne data der id er lik 1, kan vi bruke spørringen.
sqlite> SLETT FRA språk WHERE id = 1;For å bekrefte at dataene er fjernet, kan vi bruke SELECT-spørringen, som vist ovenfor.
sqlite> VELG * FRA språk;2 | JavaScript | Brendan Eich | 1995 | ECMA 1
Dette fjerner raden der id = 1, i dette tilfellet Python-oppføringen.
Konklusjon
I denne opplæringen diskuterte vi hvordan du konfigurerer og kjører SQLite. Vi dekket også hvordan du kan arbeide med SQLite-skallet og utføre kommandoer som SQL-setninger. Ved å bruke det du har lært fra denne veiledningen, kan du opprette databaser, opprette tabeller, legge til data og fjerne rader.