Per inserire dati in un database SQLite, usa INSERT
dichiarazione.
Quando si utilizza questa istruzione, si specifica in quali colonne inserire i dati, nonché i dati che verranno inseriti. Il INSERT
aggiunge una nuova riga alla tabella con i dati specificati.
Aggiungiamo una riga di dati ai nostri Artisti tabella.
Esegui la seguente istruzione:
INSERT INTO Artists (ArtistName) VALUES ('Joe Satriani');
Verifica che i dati siano stati inseriti
Puoi eseguire un rapido SELECT
dichiarazione per verificare che i dati siano stati inseriti.
Ulteriori informazioni su SELECT
istruzione in seguito, ma per ora, esegui la seguente istruzione:
SELECT * FROM Artists;
Ciò dovrebbe comportare la visualizzazione di quanto segue:
sqlite> SELECT * FROM Artists; 1|Joe Satriani
Una scorciatoia
C'è un altro modo per scrivere SELECT
istruzione che non utilizza molto codice.
Puoi semplicemente omettere i nomi delle colonne dall'istruzione e i campi continueranno a essere popolati.
Tuttavia, questo metodo richiede che tu fornisca un valore per tutte le colonne.
In questo modo:
INSERT INTO Artists VALUES (NULL, 'Steve Vai');
Ora, eseguendo lo stesso SELECT
l'istruzione restituirà quanto segue:
sqlite> SELECT * FROM Artists; 1|Joe Satriani 2|Steve Vai
Informazioni sul campo della chiave primaria
A questo punto potresti aver notato che
ArtistId
campo sta ottenendo automaticamente il suo valore. Nel nostro primo INSERT
, non abbiamo fornito un valore per quella colonna. Nel nostro secondo INSERT
abbiamo fornito NULL
come valore.
Ciò accade perché la colonna è di tipo INTEGER PRIMARY KEY
. Quando a una colonna è stata assegnata una INTEGER PRIMARY KEY
, questo è un alias per ROWID
. Con un ROWID
, se un valore non è fornito da INSERT
istruzione, SQLite inserisce automaticamente il proprio intero in quel campo.
Il valore del ROWID
l'intero è solitamente uno più alto del ROWID
più grande attualmente in uso. Su una tabella vuota, questo valore inizierà da 1
.
Quindi il risultato finale è che, se non fornisci un valore per quel campo, SQLite lo farà.
Aggiunta di più righe
Puoi usare tanti INSERT
dichiarazioni in quanto è necessario aggiungere più dati.
INSERT INTO Artists VALUES (NULL, 'The Tea Party'); INSERT INTO Artists VALUES (NULL, 'Noiseworks'); INSERT INTO Artists VALUES (NULL, 'Wayne Jury'); INSERT INTO Artists VALUES (NULL, 'Mr Percival'); INSERT INTO Artists VALUES (NULL, 'Iron Maiden'); INSERT INTO Artists VALUES (NULL, 'Atmasphere'); INSERT INTO Artists VALUES (NULL, 'Ian Moss'); INSERT INTO Artists VALUES (NULL, 'Magnum'); INSERT INTO Artists VALUES (NULL, 'Strapping Young Lad'); INSERT INTO Artists VALUES (NULL, 'Slayer'); INSERT INTO Artists VALUES (NULL, 'Primus'); INSERT INTO Artists VALUES (NULL, 'Pat Metheny'); INSERT INTO Artists VALUES (NULL, 'Frank Gambale'); INSERT INTO Artists VALUES (NULL, 'Frank Zappa'); INSERT INTO Artists VALUES (NULL, 'The Wiggles');
E ora il nostro SELECT
l'istruzione restituirà quanto segue:
sqlite> SELECT * FROM Artists; 1|Joe Satriani 2|Steve Vai 3|The Tea Party 4|Noiseworks 5|Wayne Jury 6|Mr Percival 7|Iron Maiden 8|Atmasphere 9|Ian Moss 10|Magnum 11|Strapping Young Lad 12|Slayer 13|Primus 14|Pat Metheny 15|Frank Gambale 16|Frank Zappa 17|The Wiggles
Successivamente esamineremo più da vicino la selezione dei dati dal nostro database.