ホームページ  >  記事  >  バックエンド開発  >  PDO のカーソルが無効なのはなぜですか?

PDO のカーソルが無効なのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 13:39:231348ブラウズ

			$aa = $db->prepare('select * from user',array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL));			$aa ->execute();			$aa->fetch();			$aa->fetch();			$a=$aa->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_NEXT);			print_r($a);


オープンカーソルが準備に設定されています
結果は最後の行ではなく 3 行目です
fetch の 2 番目のパラメータがすべて無効です

これはなぜですか?そうではありません。ロールバックするには、テーブルは INNODB である必要がありますか?
マニュアルに書かれている方法によると、使い方が簡単ではなく、非常にわかりにくいです。


ディスカッションへの返信 (解決策)

もちろん、レコードの最初の 3 行です。マニュアルの例と関数の説明をよく読んでください。

FETCH_ORI_NEXT

結果セットの次の行をフェッチします。
1 つの行の結果セットを取得します

FETCH_ORI_PRIOR
結果セット内の前の行を取得します
前の行の結果セットを取得します

FETCH_ORI_FIRST (整数)
最初の行を取得します。結果セットの最初の行を取得します。
結果セットの最後の行を取得します。
結果セットの最後の行を取得します。
FETCH_ORI_ABS
結果セットから行番号で要求された行を取得します。
結果セットから要求された行番号をすべて取得します。
FETCH_ORI_REL
カーソルの現在位置からの相対位置で要求された行を取得します。結果セットはスクロール可能なカーソルの場合にのみ有効です

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:IF判定変換FOR文次の記事:IF判定変換FOR文