外部SQLファイルを用いたデータベースのテーブルの作り方
開発初期は何回もスキーマを作り直しますよね??
毎回手動で作り直すのはほぼ不可能なので外部ファイルからDBを作ります。
$ mysql -u<user> -p -D<database> < ./db_tables.sql
$ cat db_tables.sql
DROP TABLE Event;
CREATE TABLE Event
(
event_id VARCHAR(128),
organizer INT,
date DATETIME,
PRIMARY KEY (event_id)
);
DESC Event;
最後のラインに’,’をつけててハマった。。Perlのハッシュに慣れ過ぎてました。。
mysql> desc Profile;
+------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| user_id | int(11) | YES | | NULL | |
| username | varchar(10) | YES | | NULL | |
| profession | bit(16) | YES | | NULL | |
| sex | tinyint(1) | YES | | NULL | |
| interests | bit(32) | YES | | NULL | |
| address | varchar(255) | YES | | NULL | |
+------------+--------------+------+-----+---------+-------+
descで確認。データベースのスキーマを一度でバシッと決めるのって難しい気がする。達人は一発で決められるのかな。そんな人になりたい。