And this answer demonstrates perfectly to your managers that their conception of 'database' is broken.
-- Sent from my phone, so apologies for any spelling errors, brevity, etc. On 15/09/2012, at 12:38, Darren Duncan <dar...@darrenduncan.net> wrote: > Brian Katzung wrote: >> If I recall correctly, I read in a cookbook somewhere (can't seem to find it >> now) that for rows with no primary key, you can use: >> __PACKAGE__->set_primary_key(__PACKAGE__->columns); >> (making the entire row be a multi-column primary key). > > Well that is indeed how things should work; when there is no primary or > unique key explicitly defined, there should be an implicit one ranging over > all the columns. However, SQL doesn't work that way and would allow > duplicate rows, and so then the question is what behavior do you expect your > Perl layer to have? If you edit a duplicate row, is it supposed to change > all copies or just one? -- Darren Duncan > >> On 2012-09-14 14:53, Derek W wrote: >>> Ah, you meant just on Catalyst side, to tell it that the id column is >>> the primary. I didn't think of that. Thanks! I'll give that a shot. >>> >>> On Fri, Sep 14, 2012 at 11:40 AM, Robert Wohlfarth >>> <rbwohlfa...@gmail.com> wrote: >>>> On Fri, Sep 14, 2012 at 1:31 PM, Derek W <derekwro...@gmail.com> wrote: >>>>> Thanks, I figured that would probably fix it, but the problem is I am >>>>> not allowed to make any changes to the DB structure itself. I suppose >>>>> I need to convince them why it's in the best interest to have a >>>>> primary key... >>>>> >>>> You can set the primary key in the schema file. For example, add a line >>>> like >>>> __PACKAGE__->set_primary_key( "id" ); to >>>> lib/MyApp/Schema/Result/MyTable.pm. >>>> You do not need to change the database. DBIx::Class will then use id >>>> whenever it wants a primary key. >>>> >>>> -- >>>> Robert Wohlfarth > > _______________________________________________ > List: Catalyst@lists.scsys.co.uk > Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst > Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ > Dev site: http://dev.catalyst.perl.org/ _______________________________________________ List: Catalyst@lists.scsys.co.uk Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/ Dev site: http://dev.catalyst.perl.org/