my $column = Column->new($fdata);
$table->add_column($column);
- $table->primary_key($column->name) if $fdata->{is_primary_key};
+ $column->is_primary_key(1) if $fdata->{is_primary_key};
}
for my $idata ( @{ $tdata->{'indices'} || [] } ) {
for my $cdata ( @{ $tdata->{'constraints'} || [] } ) {
$cdata->{table} = $table;
- $cdata->{reference_columns} = delete $cdata->{reference_fields};
+ $cdata->{reference_columns} = delete $cdata->{reference_fields} || [];
my $columns = delete $cdata->{fields} || [];
+ $columns = ref $columns eq 'ARRAY' ? $columns : [ $columns ];
my $constraint = Constraint->new($cdata);
$constraint->add_column($table->get_column($_)) for @$columns;
$table->add_constraint($constraint);
map { [ $data->{'procedures'}{ $_ }{'order'}, $_ ] }
keys %{ $data->{'procedures'} };
- for my $tdata ( @procedures ) {
- my $procedure = Procedure->new($tdata);
+ for my $pdata ( @procedures ) {
+ my $procedure = Procedure->new($pdata);
$schema->add_procedure($procedure);
}