CakePHP 1.3.1 にて Schema シェルを使う
CakePHP 1.3.1 にて Schema シェルでデータベースのテーブル定義の操作を行いたい。
まだ、挙動がつかみきれていないが、理解した時点のメモを残しておく。
コマンドのヘルプ
困ったときはヘルプを参照。
cake schema help
schema.php の生成
データベースを操作するには、 schema.php が必要。コマンドを実行すれば、データベースのテーブル定義を元に schema.php が自動生成できる。
cake schema generate [-f] [snapshot <number>]
-f オプションをつけると全テーブルのテーブル定義を生成する。省略すると1つのテーブル定義だけ作成される。
snapshot の用途がいまいちよく分かっていないが、デフォルトの schema.php を上書きせずに保存するために別ファイル「<number>.php」として生成するためのオプションらしい。
テーブルの作成
cake schema create [<name> [<table>]]
- <name> は、ファイル名(=スナップショット)で、省略すると schema が呼ばれる。
- <table> を指定すると、指定したテーブルが作成される。省略すると全てのテーブルを作成される。
テーブルの CREATE 文の表示
cake schema dump [<name> [<table>]]
テーブルの CREATE 文が表示される。