質問: MySQLにおいてデータベースとともに複数のテーブルを作成することは可能でしょうか? また その際自動でidを設置し ランダムで用意した画像をMySQLのテーブルに設置することほ可能でしょうか?
回答: シェルスクリプトとDDLファイルでデータベース作成、テーブル作成ができます。自動でidを設置の意味が若干不明瞭ですが、`auto_increment`を使うことでidを自動割り振りできます。 ``` // your_dbname でデータベース作成 $ mysql -uroot -e "create database 'your_dbname'" // batch.sqlにテーブル定義を記載する例 $ mysql -h host -u username -ppassword your_dbname < batch1.sql $ mysql -h host -u username -ppassword your_dbname < batch2.sql $ mysql -h host -u username -ppassword your_dbname < batch3.sql ``` 上記のコマンドをシェルスクリプト化しておけばデータベース・テーブル作成が自動化できる * `batch.sql` の中に記載するテーブル定義サンプル + 以下のようにしておけばINSERTすると自動でidが割り振られる ``` CREATE TABLE image ( id INT(11) NOT NULL AUTO_INCREMENT, content BLOB NOT NULL, PRIMARY KEY (id) ); ``` * 参考 create mysql database with one line in bash MySQL 5.6 リファレンスマニュアル / ... / AUTO_INCREMENT の使用