- 締切済み
カーソルを使って、最終行レコードの判断はどうすればよいのでしょうか。
カーソルを使って、最終行レコードの判断はどうすればよいのでしょうか。 処理はオーソドックスなスタイルでコーディングしているとします。 「ループ処理内で、FETCH NEXTした際に、最終行か判断したい」という質問です。 EOFで最終行だと判断するのは一般的ですが、ループ内で通常行と最終行の切り分けをしたいのです。特に何かの制約や事情があるわけではありませんので、実現できればそれでOKです。 要するに、最終行レコードが、通常行レコードの処理とかぶらなければ、用件は満たせるのですが、あまり懲りたくもないのもあって、ちょっと実装イメージが思い浮かばず、困ってます。 ご回答お願いします。
- みんなの回答 (3)
- 専門家の回答
補足
やりたいことの意図は合ってるのですが、うまくいきませんでした。 SET @CNT=@@CURSOR_ROWSの部分で、カーソルで拾ったレコード数が保持されていることを期待しましたが、マイナス値で、絶対値としてもレコード数とは違うようです。 当方のコーディングがヘマってるかもしれませんが… 他に追われて、なかなか調査しきれてませんが、SET @CNT=@@CURSOR_ROWSという箇所では、レコード数が取得できると思ってよいでしょうか。でないと、デクリメントしても意味ないですしね。動的にバインドしても成り立ちますよね。この部分が少し気になってます。