[Dbix-class] create failures with has_one

Peter Rabbitson rabbit+dbic at rabbit.us
Fri Oct 16 12:45:16 GMT 2009


On Wed, Oct 14, 2009 at 05:10:57PM +0100, Dermot wrote:
> Hi,
> 
> I have had a number of errors trying to add a record to a SQLite3 db
> and DBIx  '0.08010';
> The original error was:
> 
> DBIx::Class::ResultSet::update_or_create(): Object ARRAY(0x8f3f7a8)
> isn't a My::Schema::MotionDB::
> 
> I created a small test to see if I could narrow it down but that is
> throwing this exception:
> 
> DBIx::Class::ResultSet::update_or_create(): DBI Exception:
> DBD::SQLite::db prepare_cached failed: near "CONTRIB": syntax error(1)
> at dbdimp.c line 271 [for Statement "SELECT me.id, me.sub_id,
> me.contrib_id FROM clipData me WHERE ( ( ( ( me.id CONTRIB ID ? ) ) )
> )"] at t/test_update_or_create.t line 45
> 
> I can't find 'CONTRIB ID' anywhere on my sources. I have parred my
> schema and script down to the bone but as long as I try and create a
> row with a row in a related (has_one) table, I get errors.
> 
> Can anyone spot where I am going wrong?

Yes, you are using a version that is almost 2 years old. Upgrade
to the 0.081xx family which sports a from the ground rewrite of
multicreate (among other things).



More information about the DBIx-Class mailing list