#!/usr/bin/perl -w

use strict;

use Alzabo::Create::Schema;

unless (@ARGV)
{
    print <<'EOF';

This script requires at least one argument, a schema name.  If it is
given multiple arguments it will treat them all as script names
EOF

    exit 0;
}

foreach (@ARGV)
{
    my $s = Alzabo::Create::Schema->load_from_file( name => $_ );
    reverse_cardinality($s);
}

sub reverse_cardinality
{
    my $s = shift;

    foreach my $t ($s->tables)
    {
	foreach my $fk ($t->all_foreign_keys)
	{
	    my @c = $fk->cardinality;

	    $fk->set_cardinality(@c[1,0]);
	}
    }

    $s->save_to_file;
}



syntax highlighted by Code2HTML, v. 0.9.1