1ファイルの軽量のデータベース。アプリケーションに組み込んで利用されたりする。
ファイルパーミッションに依存
SQLiteの「REPLACE INTO」1)を「UPSERT」相当と紹介する記事があるが、実際には「REPLACE INTO」は「DELETE and INSERT」に相当するので注意。
例:
tableA | ||
---|---|---|
*col1 | col2 | col3 |
ABC | DEF | GHI |
※col1がPrimaryKey
に対して以下のSQLを発行
REPLACE INTO tableA(col1, col2, col3) VALUES ('ABC', 'DDD', 'EEE')
結果
tableA | ||
---|---|---|
*col1 | col2 | col3 |
ABC | DDD | EEE |
次に以下のSQLを発行
REPLACE INTO tableA(col1, col2) VALUES ('ABC', 'ZZZ')
結果
tableA | ||
---|---|---|
*col1 | col2 | col3 |
ABC | ZZZ | NULL |