so far, I do not, but I want one filed to be uniq, lets call it field1. so 
should i set a uniq constraint on it, and then use that field in 
update_or_create? rather than the primary index?

ty.




________________________________
 From: Ronald J Kimball <rkimb...@pangeamedia.com>
To: Rajeev Prasad <rp.ne...@yahoo.com>; DBIx::Class user and developer list 
<dbix-class@lists.scsys.co.uk> 
Sent: Thursday, September 27, 2012 12:27 PM
Subject: Re: [Dbix-class] DBIx how to update_or_create a table with primary 
index is autoincrement ? getting erroneous data
 

On Thu, Sep 27, 2012 at 12:55 PM, Rajeev Prasad <rp.ne...@yahoo.com> wrote:

friends,
>
>I have a Table to update (empty right now), and the regularly 'update' 
>existing info with changes AND add any new record which come up.
>
>source data is coming from file. one record per line.
>
>        my @my_arr;  #has 500 uniq entries
>
>        $schema->resultset('Mytable')->update_or_create(
>        {
>            field1 => $my_arr[0],
>            field2 => $my_arr[1],
>            field3 => $my_arr[2],
>            ...
>        },
>        {key =>'primary'}    #field_id, auto increment value this field is NOT 
>supplied in variables above.
>        );
>
>
>What is happening is: DBIX is first adding the 'first' record, then updating 
>it with consecutive records!!! it is not creating a fresh record for any 
>record in the file. so after it finishes running, I am left with one record in 
>Table which is updated 500 times, and has the last record in file as the table 
>record.
>
>
>how to fix this?
>

You've asked update_to_create() to find the existing row based solely on the 
primary key, but you haven't provided a value for the primary key.  Therefore, 
it assumes that all the rows are the same row.

Do you have any unique constraints on this table other than primary key?

Ronald
_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/dbix-class@lists.scsys.co.uk

Reply via email to