[SQLite] テーブル情報の更新
既存テーブルに、colorカラムを追加する工程。
手順1: カラム追加
1. sqliteにログイン
$ sqlite3 develop.sql
2. カラム情報の追加
ALTER TABLE %変更するテーブル名 ADD COLUMN color TEXT;
手順2: テーブル置き換え
1. sqliteにログイン
$ sqlite3 %ファイルパス
2. 既存テーブル名を変更
ALTER TABLE %変更するテーブル名 RENAME TO %変更するテーブル名_2;
3. 新たに既存テーブル名で作成
CREATE TABLE %変更するテーブル名 (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
color TEXT,
create_at TIMESTAMP DEFAULT (datetime(CURRENT_TIMESTAMP, 'localtime')),
update_at TIMESTAMP DEFAULT (datetime(CURRENT_TIMESTAMP, 'localtime'))
);
4. 既存データ(リネーム後) -> 新テーブルにデータコピー
INSERT INTO %変更するテーブル名(id,name,create_at,update_at) SELECT id,name,create_at,update_at FROM %元データのテーブル名;
not nullを追加した場合は、初期値をセットする必要がある。
ex) SELECT id,name,create_at,update_at , '---' as color ...
5. 既存データ(リネーム後)のテーブルを削除
DROP TABLE %変更するテーブル名_2;
6. 終了
.exit