Skip to main content Link Menu Expand (external link) Document Search Copy Copied

SQLite-komentorivityökalun käyttö

Seuraavassa videossa sekä siihen liittyvässä komentoriviesimerkissä hyödynnetään SQLite-komentorivityökalua sekä valmista Chinook-tietokantaa.

Komentorivityökalun avulla voit antaa kahdenlaisia komentoja:

  1. SQL-kyselyitä

    • normaali SQL-kysely, joka päättyy puolipisteeseen
    • esimerkiksi SELECT * FROM Artist LIMIT 3;
  2. Komentorivityökalun omia komentoja

    • rivi aloitetaan pisteellä, loppuun ei puolipistettä
    • esimerkiksi .open Chinook_Sqlite.sqlite, .tables tai .help

SQLite tools ja Chinook

Voit ladata esimerkissä käytettävän tietokantatiedoston tästä: Chinook_Sqlite.sqlite.

Esimerkissä käytetään sqlite3.exe-komentorivityökalua. Voit ladata itsellesi sqlite3.exe-komentorivityökalun osoitteesta: https://sqlite.org/download.html. Työkalut löytyvät esimerkiksi Windowsille otsikon “Precompiled Binaries for Windows” alta nimellä sqlite-tools-win32-x86-VERSIO.zip. Pura sqlite3.exe-tiedosto zip-paketista esimerkiksi samaan kansioon tietokantasi kanssa. Jos käytät eri käyttöjärjestelmää, sovella ohjeita oman käyttöjärjestelmäsi työkaluversion mukaisesti.

Videotutoriaali

Video on katsottavissa myös video.haaga-helia.fi-palvelussa.

Komentoriviesimerkki

Seuraavassa komentorivi-istunnossa lyhyt esimerkki Chinook-tietokannan avaamisesta (.open Chinook_Sqlite.sqlite), tulosteiden muotoilusta (.headers on ja .mode column), rakenteen tutkimisesta (.tables, .schema Artist) sekä kyselyiden tekemisestä (SELECT * FROM Artist LIMIT 3;).

SQLite version 3.20.1 2017-08-24 16:21:36
Enter ".help" for usage hints.

sqlite> .open Chinook_Sqlite.sqlite
sqlite> .tables

Album          Employee       InvoiceLine    PlaylistTrack
Artist         Genre          MediaType      Track
Customer       Invoice        Playlist

sqlite> SELECT * FROM Artist LIMIT 3;

1|AC/DC
2|Accept
3|Aerosmith

sqlite> .headers on
sqlite> .mode column
sqlite> SELECT * FROM Artist LIMIT 3;

ArtistId    Name
----------  ----------
1           AC/DC
2           Accept
3           Aerosmith

sqlite> .schema Artist

CREATE TABLE [Artist]
(
    [ArtistId] INTEGER  NOT NULL,
    [Name] NVARCHAR(120),
    CONSTRAINT [PK_Artist] PRIMARY KEY  ([ArtistId])
);
CREATE UNIQUE INDEX [IPK_Artist] ON [Artist]([ArtistId]);

sqlite> .schema Album

CREATE TABLE [Album]
(
    [AlbumId] INTEGER  NOT NULL,
    [Title] NVARCHAR(160)  NOT NULL,
    [ArtistId] INTEGER  NOT NULL,
    CONSTRAINT [PK_Album] PRIMARY KEY  ([AlbumId]),
    FOREIGN KEY ([ArtistId]) REFERENCES [Artist] ([ArtistId])
                ON DELETE NO ACTION ON UPDATE NO ACTION
);
CREATE UNIQUE INDEX [IPK_Album] ON [Album]([AlbumId]);
CREATE INDEX [IFK_AlbumArtistId] ON [Album] ([ArtistId]);

Chinook-tietokannan on luonut Luis Rocha ja se on lisensoitu avoimena lähdekoodina MIT-lisenssillä.

Tämän oppimateriaalin on kehittänyt Teemu Havulinna ja se on lisensoitu Creative Commons BY-NC-SA -lisenssillä.