[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