SQLiteデータベースにデータを挿入するには、INSERT
を使用します ステートメント。
このステートメントを使用するときは、データを挿入する列と、挿入するデータを指定します。 INSERT
ステートメントは、指定されたデータを含む新しい行をテーブルに追加します。
Artists にデータの行を追加しましょう テーブル。
次のステートメントを実行します:
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
、その列の値を指定しませんでした。 2番目のINSERT
NULL
を提供しました 値として。
これは、列のタイプがINTEGER PRIMARY KEY
であるために発生しています。 。列にINTEGER PRIMARY KEY
が割り当てられている場合 、これはROWID
のエイリアスです 。 ROWID
を使用 、値がINSERT
によって提供されていない場合 ステートメントの場合、SQLiteは自動的に独自の整数をそのフィールドに挿入します。
ROWID
の値 整数は通常、最大のROWID
より1つ大きくなります。 現在使用中です。空のテーブルでは、この値は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
次に、データベースからデータを選択する方法を詳しく見ていきます。