mysql:4306
From: "Mitsuru Maruno" <"Mitsuru Maruno" <maruno@xxxxxxxxxx>>
Date: Wed, 12 Sep 2001 15:56:56 +0900
Subject: [mysql 04306] mysql_row_tell について
MARUです。久々に投稿します。。。
CのAPIの mysql_row_tell() の動作についてですが、この関数はマニュアルに
よると、
マニュアルより抜粋 --->
最後の mysql_fetch_row() についてレコードカーソルの現在の位置を返します。
<---
と書いてあります。このカーソルの現在位置とは、実際には何処を指しているの
でしょうか?
プログラムで、下記のような順序でレコードを取得していますが、デバッガで
mysql_row_tell()によって取得したオフセット値をみてみると、次のレコード
位置のポインタを取得しているようです。
mysql_store_result()
↓
mysql_fetch_row() // 1行目(最初)のレコード取得
↓
mysql_row_tell() ---> オフセットを保持(2行目を指している??)
↓
mysql_fetch_row() // 2行目のレコード取得
↓
mysql_fetch_row() // 3行目のレコード取得
↓
mysql_row_seek() <--- 保持しておいたオフセット値を設定
↓
mysql_fetch_row() // ↑で指定したオフセットのレコード取得
1行目のレコード位置(オフセット)を保持したい場合、1行目の mysql_fetch_row()
を呼び出す前に、mysql_row_tell() を呼び出す必要があります。これって仕様
なのでしょうか?
よろしくお願いします。
0-------10--------20--------30--------40--------50--------60--------70
株式会社日本テレソフト 丸野 満
maruno@xxxxxxxxxx
maruno@xxxxxxxxxx
======================================================================
-> 4306 2001-09-12 15:56 ["Mitsuru Maruno" <ma] mysql_row_tell について 4307 2001-09-12 16:00 ┣["Mitsuru Maruno" <ma] 4308 2001-09-12 21:17 ┗[とみたまさひろ <tomm]