За да вмъкнете данни в база данни на SQLite, използвайте INSERT
изявление.
Когато използвате този израз, вие посочвате в кои колони да вмъкнете данни, както и данните, които ще бъдат вмъкнати. INSERT
оператор добавя нов ред към таблицата с посочените данни.
Нека добавим ред данни към нашите Изпълнители таблица.
Изпълнете следния оператор:
INSERT INTO Artists (ArtistName) VALUES ('Joe Satriani');
Проверете дали данните са били вмъкнати
Можете да изпълните бърз SELECT
изявление, за да проверите дали данните са въведени.
Повече за SELECT
изявление по-късно, но засега изпълнете следния оператор:
SELECT * FROM Artists;
Това трябва да доведе до показване на следното:
sqlite> SELECT * FROM Artists; 1|Joe Satriani
Пряк път
Има и друг начин да напишете SELECT
изявление, което не използва толкова много код.
Можете просто да пропуснете имената на колоните от изявлението и полетата ще продължат да бъдат попълнени.
Този метод обаче изисква да предоставите стойност за всички колони.
Като това:
INSERT INTO Artists VALUES (NULL, 'Steve Vai');
Сега стартирайте същия SELECT
оператор ще върне следното:
sqlite> SELECT * FROM Artists; 1|Joe Satriani 2|Steve Vai
Относно полето на първичния ключ
Досега може да сте забелязали, че
ArtistId
поле получава стойността си автоматично. В нашия първи INSERT
, не сме предоставили стойност за тази колона. Във втория ни INSERT
предоставихме NULL
като стойност.
Това се случва, защото колоната е от тип INTEGER PRIMARY KEY
. Когато на колона е присвоен INTEGER PRIMARY KEY
, това е псевдоним за ROWID
. С ROWID
, ако стойност не е предоставена от INSERT
SQLite автоматично вмъква собствено цяло число в това поле.
Стойността на ROWID
цяло число обикновено е едно по-високо от най-големия ROWID
в момента се използва. На празна таблица тази стойност ще започне от 1
.
Така че крайният резултат е, ако не предоставите стойност за това поле, SQLite ще го направи.
Добавяне на няколко реда
Можете да използвате колкото се може повече INSERT
изявления, тъй като трябва да добавите още данни.
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');
И сега нашият SELECT
оператор ще върне следното:
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
След това ще разгледаме по-отблизо избора на данни от нашата база данни.