- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- Perl-DBIC/環境設定/スキーマクラス・テーブルクラスの作成 へ行く。
スキーマクラス・テーブルクラスの作成
ワンラインスクリプトで、DBIx::Class::Schema::Loaderを使って、実際のDBをパースし自動的にスキーマクラス・テーブルクラスを作る。 以下の場合、MySQLのmydbデータベースに接続して、libディレクトリ以下にMyDB::Schemaという名前空間でスキーマクラス・テーブルクラスを作成する。
perl -MDBIx::Class::Schema::Loader=make_schema_at,dump_to_dir:./lib \ -e 'make_schema_at "MyDB::Schema", {relationships => 1, debug => 1}, ["dbi:mysql:mydb","db_user","db_passwd"]'
ファイル構成
- lib `-- MyDB |-- Schema | |-- TableA.pm # テーブルAのDBIx::Classクラス | `-- TableB.pm # テーブルBのDBIx::Classクラス `-- Schema.pm # DBIx::Class::Schemaクラス
テーブルごとのDBIx::Classクラスは作らず、Schema::Loaderクラスだけで対応する場合
以下のようなスキーマクラスを作る。(が、上の方法でテーブルクラスを作成した方がよいだろう。)
package MyDB; use base qw/DBIx::Class::Schema::Loader/; __PACKAGE__->loader_options(); 1;