[前][次][番号順一覧][スレッド一覧]

mysql:3853

From: Akihiko Shinohara <Akihiko Shinohara <sino@xxxxxxxxxx>>
Date: Thu, 28 Jun 2001 11:02:22 +0900
Subject: [mysql 03853] Re: update した件数をカウントしたい。

篠原です。

From: MAO <mao@xxxxxxxxxx>
Subject: [mysql 03848] Re: update した件数をカウントしたい。
Date: Wed, 27 Jun 2001 22:41:36 +0900
Message-ID: <20010627224130.D593.MAO@xxxxxxxxxx>

> > #SQL構文設定 
> >  $stmt = "update tbl_a set serial = 2 where uid = 1";
> > # 準備したSQL構文をデータベース上で実行
> >  $rv = $dbh->do($stmt) || die "Cantprepare. Because of $DBI::errstr";

> この方法で実験してみました。
> 値が帰ってきました。
> 帰ってくる値は、
> Rows matched: 2  Changed: 1  Warnings: 0
> のChanged:の方のようです。

DBI::MySQL のマニュアルを注意深く読んでいると

影響のあった行(Changed)を調べるには、

$sth->rows

探した行(Matched)を調べるには、connectのdata_sourceに、
mysql_client_found_rowsを真にして設定し
# DBI:mysql:database=$database;host=$host;mysql_client_found_rows=1
同じく、$sth->rows で、返ってくるようです。


ここから質問です。
今まで気にしてませんでしたが、他のデータベースでは、
どっちを返すのでしょう。クライアント的には、
Matchedの行を返してもらったほうが便利なような気がします。
  ___________________________________________
 / Akihiko Shinohara  /Hoct*Systems.Co.,Ltd /
/               http://www.hoctsystem.co.jp/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~







[前][次][番号順一覧][スレッド一覧]

      3845 2001-06-27 19:00 [MAO <mao@xxxxxxxxxx>] update した件数をカウントしたい。       
      3846 2001-06-27 19:31 ┗[TSUTSUMI Thoru <tutu]                                       
      3848 2001-06-27 22:41  ┗[MAO <mao@xxxxxxxxxx>]                                     
      3852 2001-06-28 10:31   ┣[TSUTSUMI Thoru <tutu]                                   
      3856 2001-06-28 12:17   ┃┗["Kawai,Takanori" <GC]                                 
->    3853 2001-06-28 11:02   ┗[Akihiko Shinohara <s]                                   
      3857 2001-06-28 12:31    ┗["Kawai,Takanori" <GC]                                 
      3860 2001-06-28 16:46     ┗[MAO <mao@xxxxxxxxxx>]                               
      3861 2001-06-28 17:36      ┗[TSUTSUMI Thoru <tutu]