Sådan opretter du en database i SQLite.
SQLite bruger ikke CREATE DATABASE
sætning som i andre databasestyringssystemer, såsom MySQL, SQL Server osv.
SQLite giver dig mulighed for at oprette en ny database (eller åbne en eksisterende), hver gang du starter kommandolinjeværktøjet. Når du bruger sqlite3
for at starte kommandolinjeværktøjet kan du eventuelt tilføje et databasefilnavn. Hvis der findes en database med det filnavn, vil den blive åbnet. Ellers bliver den oprettet.
Så med andre ord, for at oprette en ny database i SQLite skal du blot indtaste sqlite3
efterfulgt af navnet på den fil, du ønsker at bruge til databasen.
Følgende kode opretter en databasefil kaldet music.db :
sqlite3 music.db;
Ovenstående kode opretter databasefilen i den aktuelle mappe. For at oprette den i en anden mappe skal du blot bruge den fulde sti.
For eksempel:
sqlite3 /Users/barney/music.db;
SQLite-kommandoer slutter med et semikolon (;
) . Dette fortæller SQLite, at din kommando er fuldført og skal køres.
Hvis du ikke inkluderer semikolon, vil du se en fortsættelsesprompt, som denne ...> hvilket betyder, at SQLite venter på, at du indtaster flere ting. Du skal blot tilføje semikolon og trykke på enter for at køre kommandoen.
Alternativt kan du sprede din kommando over flere linjer og bruge semikolon på den sidste linje.
Tjek, at databasen er oprettet
Du kan kontrollere, at databasen er oprettet ved at bruge .databases
kommando:
sqlite> .databases seq name file --- --------------- ---------------------------------------------------------- 0 main /Users/quackit/sqlite/music.db
Du kan også navigere til biblioteket for at se filen på filsystemet, hvis du ønsker det.
Du vil bemærke, at ovenstående eksempel begynder med sqlite>
. Dette er simpelthen SQLite-kommandoprompten. Den faktiske indtastede kommando var .databases
.
Du vil også bemærke, at der ikke er noget semikolon i slutningen af kommandoen. Dette er fordi "punktkommandoer" (såsom .databases
) kræver ikke semikolon i slutningen. Punktkommandoer fortolkes af kommandolinjeværktøjet og ikke af SQLite selv.
Databasefilen er bare en tom fil lige nu. Dernæst tilføjer vi en tabel til databasen.
Vedhæft en database
Du kan også bruge ATACH DATABASE
kommando til at oprette en database fra SQLite3-kommandoværktøjet.
Når du bruger denne kommando, skal du angive et filnavn til databasen samt et alias for databasen. Hvis filen allerede findes, vil den vedhæfte databasefilen. Ellers oprettes en fil.
Her er et eksempel på brug af ATACH DATABASE
for at oprette en database:
ATTACH DATABASE 'movies.db' AS Movies;
Så kan vi gennemgå vores liste over databaser ved hjælp af .databases
kommando:
sqlite> .databases seq name file --- --------------- ---------------------------------------------------------- 0 main /Users/quackit/sqlite/music.db 2 Movies /Users/quackit/sqlite/movies.db
ATACH DATABASE
kommandoen vedhæfter databasen til den aktuelle forbindelse.
Hvis din .database
kommandoen returnerer ikke en database, som du ved eksisterer, den skal sandsynligvis bare knyttes til den aktuelle forbindelse.