久しぶりにSQLiteに触ったらだいぶ忘れていたので備忘録。
セットアップ
データベースの作成
DBのファイルを置きたいフォルダに移動して以下のコマンドを実行する。
指定したファイルがない場合は新規作成されます。
macはターミナルを開くと /Users/ユーザー名
にいるので、移動しなければそこにファイルが作成されます。
% sqlite3 任意のファイル名.db
ただこの時点ではまだファイルは作成されず、次のコマンドでファイルが作成されます。
データベースへの接続
sqlite> .database
テーブルの作成
sqlite> create table テーブル名(カラム名 型);
例えば
sqlite> create table users(id integer primary key, name text);
primary key
を指定することでidを指定しなくても自動採番されるようになります。
テーブル一覧を表示
sqlite> .table
テーブル定義を表示
sqlite> .schema テーブル名
SQLiteの終了
sqlite> .exit
CRUD
レコードの挿入
sqlite> insert into テーブル名 (挿入場所のカラム名) values(挿入する値);
例えば上のテーブルに対して
sqlite> insert into users (name) values('hoge');
sqlite> insert into users (name) values('fuga');
レコードの参照
sqlite> select * from テーブル名;
例えば上のテーブルに対して
sqlite> select * from users;
1|hoge
2|fuga
レコードの更新
sqlite> update テーブル名 set カラム名 = 値 where カラム名 = 値;
例えば上のテーブルに対して
sqlite> update users set name = 'hogehoge' where id = 1;
sqlite> select * from users;
1|hogehoge
2|fuga
レコードの削除
sqlite> delete from テーブル名 where カラム名 = 値;
例えば上のテーブルに対して
sqlite> delete from users where id = 1;
sqlite> select * from users;
2|fuga
場所を指定しなければ全データ削除
sqlite> delete from テーブル名;
#その他
テーブル削除
splite> drop table テーブル名;
参考サイト(参考というかそのまま..)
はじめてのSQLite(Mac版)
【MySQL入門③】データベースの基本操作CRUDを解説!