phildeman has asked for the wisdom of the Perl Monks concerning the following question:
Hi
I was attempting to update a MySQL table's primary key using DBIx::Class. I do not get any errors executing the update.
However, when I check the table using Workbench or MySQL Client, it shows the old value.
Is DBIx::Class restricted from updating primary keys. It can be done with DBI.
Here is a snippet of code to perform the update:
use My::Data; my $schema = "My::Data"; my $acct = $schema->resultset( 'Accounts')->search({ acctid => 'pv001' + })->single; if($acct) { $acct->acctid( 'pv002' ); $acct->update; } else { print "Could not find account to update!\n\n"; }
As I stated, when I check the table, the value 'pv001' is still in the database. I searched for 'pv002', I could not find any record
with that value as the primary key.
Has anyone encounter this issue where DBIx::Class will not update the primary key? If yes, how did you resolve this issue?
I am hoping there is a resolution, before I use DBI.
Thanks.
-Phil-
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Update Primary Key with DBIx::Class
by jcb (Parson) on Sep 18, 2019 at 21:22 UTC | |
by Anonymous Monk on Sep 19, 2019 at 02:21 UTC | |
|
Re: Update Primary Key with DBIx::Class
by talexb (Chancellor) on Sep 18, 2019 at 21:23 UTC | |
|
Re: Update Primary Key with DBIx::Class (discard_changes)
by 1nickt (Canon) on Sep 19, 2019 at 09:54 UTC |