我认为我不理解DBIx::Class
的范围
我是否必须先使用常规SQL手动创建数据库,然后使用模式加载器(或手动编写模式/结果集)?
或者有没有办法告诉DBIx::Class
继续从手动编码的模式和结果集创建表?
我问b / c我是否需要通过SQL CREATE TABLE
语句创建数据库,我在ResultSet代码中基本上重复了这个列,或者我需要依赖于schemaloader,我认为这种方法效率低且不适合生产。 / p>
答案 0 :(得分:13)
您可以deploy()
您的架构:
my $schema = MyApp::Schema->connect(
$dsn,
$user,
$password,
);
$schema->deploy( { add_drop_table => 1 } );
当然,以上内容将删除现有表格:)
答案 1 :(得分:10)
你可以去任何一条路线。您可以创建架构并获取DBIx::Class to analyse it,也可以将DBIx :: Class转换为build the schema to you。
前者不一定非常低效,因为您可以将DBIx :: Class转换为save the generated code,这样就不必每次运行都进行分析。