[CDBI] add new columns to a table will break exi sting class?

Matt S Trout dbix-class at trout.me.uk
Thu May 25 14:48:35 BST 2006


Bill Moseley wrote:
> On Wed, May 24, 2006 at 11:36:15PM +0100, Matt S Trout wrote:
>> Bill Moseley wrote:
>>> On Wed, May 24, 2006 at 03:24:05PM +0100, Matt S Trout wrote:
>>>>> No, you must have a primary key.
>>>> You can often get round this by simply declaring the primary key as a 
>>>> composite of all columns - but it's very rare you *really* don't want a 
>>>> primary key. Usually lack of a primary key is just shoddy database design.
>>> None of my link tables have a single primary key.
>>>
>>>    PersonRole->columns( Primary => qw / person role / );
>> That's a single primary key.
>>
>> It just happens to be a primary key made up of two columns.
> 
> Yes, I misread your post.  I have seen examples of CDBI link tables
> that also have an integer primary key in addition to the link fields.

For reasons I don't quite remember, CDBI used to tend to scream and 
bleed if you didn't do that - but it's nice to know it doesn't anymore. 
I axed them all from my schemas when I upgra^Wported them to DBIx::Class.



More information about the ClassDBI mailing list