[CDBI] Fwd: find_or_create() barfs with constraints
jmorano at moretrix.com
Wed Aug 3 11:14:40 BST 2005
Isn't the primary key supposed always to be unique?
quote: 'The primary key of a relational table uniquely identifies each
record in the
So if you're using multiple columns for PK, the combination of those
columns (values) must unique.
Correct me if I'm wrong of course ;-)
On Tue, 2005-08-02 at 15:53 -0700, Aaron Turner wrote:
> Ok, but what if the unique key is not the primary key?
> Aaron Turner, Sr. Security Engineer
> <aturner at musecurity.com>
> On Aug 2, 2005, at 12:17 PM, Rhesa Rozendaal wrote:
> > Aaron Turner wrote:
> >> I'm looking to insert a record in table if it doesn't already
> >> exist. I've also created a unique key (across two columns) to
> >> prevent other access not via Class::DBI from causing problems.
> > [snip]
> >> __PACKAGE__->table('mucore.variant_type');
> >> __PACKAGE__->sequence('mucore.variant_type_variant_typeid_seq');
> >> __PACKAGE__->columns(All => qw/variant_typeID suite_typeID
> >> next_mutationID name description/);
> > You should inform Class::DBI about the multi-column primary key:
> > __PACKAGE__->columns(Primary => qw/variant_typeID suite_typeID/);
> > then add the other columns:
> > __PACKAGE__->columns(Essential => qw/next_mutationID name
> > description/);
> >> # Note that there is a unique key over suite_typeID/name
> > If you only supply the All column group, Class::DBI assumes the
> > first column is your primary key. In most cases that is sufficient,
> > but in this case you need to be explicit.
> > Hope that helps,
> > Rhesa
> ClassDBI mailing list
> ClassDBI at lists.digitalcraftsmen.net
Johnny Morano | insaniac at moretrix.com | +32.473 894685
[ perl rookie ] | [ linux geek ] | [ web kid ] | [ all ]
More information about the ClassDBI