SQLite のテーブル変更
#05 テーブルを変更してみよう
http://dotinstall.com/lessons/basic_sqlite/6405
を参考に
テーブル名、カラムの変更を実践
sqlite3 dotinstall.sqlite3
でDB接続
テーブル名の変更には
alter table 今のテーブル名 rename to 新しいテーブル名;
とする
今回は、 users から dotinstall_users にしたいので
alter table users rename to dotinstall_users;
また、カラムの追加を行うには
alter table テーブル名 add column カラム名;
とする
現在の状況をまず
.schema
で確認すると
CREATE TABLE users(name,email);
これに
pwd というカラムを追加したいので
alter table dotinstall_users add column pwd;
とすることで追加できる
これを .shema で確認すると
CREATE TABLE “dotinstall_users”(name,email, pwd);
というように追加されているのが確認できる
注意点としては、
MySQL のように、タイプミスしたときに
簡単にカラムの削除ができないということ
MySQL のときには drop で簡単にできたけど
sqlite の場合はこの方法が使えない
sqlite基礎的なコマンド
http://source.hatenadiary.jp/entry/2013/02/05/134604
を参考にさせていただいたけど
sqliteではカラムのdrop(削除)はできないので
削除したければ、
1. 新しいテーブルを作成
2. トランザクションで必要な部分をエクスポート
というように しないと
削除できない
とのこと
最初に入力するときに
alter table dotinstall_users add colum pwd;
というように
column
を
colum としたため
カラムに
colum pwd が追加され
CREATE TABLE “dotinstall_users”(name,email, colum pwd);
となっていた
簡単にまぁ削除すればいいかな
と考えていたけど、drop できず検索することになりました