DBIx::Classを使用していますが、テーブル内の 1 行のみを更新したいと考えています。現在、これは私がそれを行う方法です:
my $session = my_app->model("DB::Session")->find(1);
$session->update({done_yn=>'y',end_time=>\'NOW()'});
それは機能しますが、問題は、行を見つけるために見つかったときに、次のクエリ全体を実行することです。
SELECT me.id, me.project_id, me.user_id, me.start_time, me.end_time, me.notes, me.done_yn FROM sessions me WHERE ( me.id = ? ): '8'
私がしたいのは行を更新することだけである場合、これは少し多すぎるようです。最初にデータベースから行全体を引き出すことなく、行を更新する方法はありますか? このようなものは、私が探しているものです:
my_app->model("DB::Session")->update({done_yn=>'y',end_time=>\'NOW()'},{id=>$id});
クエリ$id
の一部はどこにありますか。WHERE id=?
誰もこれを行う方法を知っていますか? ありがとう!