tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルSQLServer 先頭レコードに移動
記事No4754
投稿日: 2007/01/04(Thu) 16:50
投稿者こうめ
はじめまして .NETの開発を始めて半年になるこうめと申します。

[OS]WindouwsXp pro [VB]VB.net2003 [SQL]SQLServer2005
で開発しております。

SqlClient.SqlConnectionを利用してSQLServerに接続しています。
そして、以下のようにOPENし、Do Whileで1件ずつデータを読むところまではできました。

cmd.CommandText = "SELECT * From TEST"
drLog = cmd.ExecuteReader

Do While (drLog.Read())

Loop

しかし、再度最初から読みなおしたいのですが、先頭レコードに移動する方法が分かりません。
一旦Closeし再度Openしないといけないのでしょうか?
お手数ですが、いい方法があれば教えてくださいませ。
よろしくお願いいたします。

[ツリー表示へ]
タイトルRe: SQLServer 先頭レコードに移動
記事No4775
投稿日: 2007/01/05(Fri) 23:38
投稿者魔界の仮面弁士
ExecuteReader は、いわゆる「ファイアホースモード」となります。
前の行のデータは保持されませんので、先頭に戻るには、開きなおすしかありません。

開きなおさずに先頭行を得たいのであれば、各行のデータを DataTable 等に蓄えておき、
それを参照することで代用するか、もしくは ADO.NET のかわりに、従来の ADO を
利用することを検討してみてください。

[ツリー表示へ]
タイトルRe^2: SQLServer 先頭レコードに移動
記事No4776
投稿日: 2007/01/06(Sat) 09:24
投稿者こうめ
魔界の仮面弁士さま、回答ありがとうございました。

やはりそうなんですね。
開きなおして、対応します。
ありがとうございました。

[ツリー表示へ]