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/

Reply via email to