C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

レコード又はフィールドを配列に入れる方法

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■88089 / inTopicNo.1)  レコード又はフィールドを配列に入れる方法
  
□投稿者/ wan (6回)-(2018/08/02(Thu) 11:17:51)

分類:[VB.NET/VB2005 以降] 

2018/08/02(Thu) 11:37:17 編集(投稿者)
いつもお世話になっております。

今回は、SQLで取得したテーブル内のデータを配列に入れる方法が知りたいです。
開発環境はOracleデータベース、VB2015、.NET Framework3.0です。

例えば、

| ̄ ̄ ̄| ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄ ̄ ̄ ̄|             
|  No. | 店舗 | 店舗所在地 |
| ̄ ̄ ̄| ̄ ̄ ̄ ̄| ̄ ̄ ̄ ̄ ̄ ̄ ̄|
|   1  |  A   |   東京     |
|      |    |       |
|   2  |  B   |     大阪   |
|   |    |       |
|  3 |  C  |   福岡   |
|___|____|________|

上のようなテーブル(テーブル名:testTab)があるとして、
使用者がNo.「2」を選択したら、店舗「B」、店舗所在地「大阪」を取得できるようにしたいです。

それを実現させるための案として、
@Whileか何かでレコードごとに配列に入れていき、選択されたNo.の店舗と所在地を取得する。
 例)While

        配列A(※中身が「1,A,東京」→「2,B,大阪」→「3,C,福岡」と変化するようにしたい)

         '0番目の要素が「2」になったらループ終了
     If 配列A(0) = 2 Then Exit While     

   End While

   '1番目の要素「B」と2番目の要素「大阪」を取得


A「No.」、「店舗」、「店舗所在地」をフィールドごとに配列に入れて、No.「2」は上から2番目なので、店舗と店舗所在地も上から2番目を取得する。


などを思いついたのですが、検索方法が悪いのか中々いい方法が見つかりませんでした。
なので、@、Aのやり方か、「もっといい方法がある」という方がいましたら是非教えていただきたいです。
よろしくお願いします。


【追記】
取得したデータはラベル、またはテキストボックスなどでフォーム上に表示するようにしたいです。

引用返信 編集キー/
■88092 / inTopicNo.2)  Re[1]: レコード又はフィールドを配列に入れる方法
□投稿者/ WebSurfer (1572回)-(2018/08/02(Thu) 11:56:57)
No88089 (wan さん) に返信

何を作っているのですか? Windows Forms? WPF? ASP.NET Web Forms? その他?

> @Whileか何かでレコードごとに配列に入れていき、選択されたNo.の店舗と所在地を取得する。

全レコードを取得して配列に入れるのは何故ですか? レコード数が膨大だったらどうするのですか?

特に理由がなければ、SELECT クエリで WHERE 句を使って、取得したい No. のレコードだけを抽出す
る方がよさそうですけど?


引用返信 編集キー/
■88096 / inTopicNo.3)  Re[2]: レコード又はフィールドを配列に入れる方法
□投稿者/ wan (7回)-(2018/08/02(Thu) 13:05:46)
No88092 (WebSurfer さん) に返信

WebSurferさん、返信ありがとうございます。


> 何を作っているのですか? Windows Forms? WPF? ASP.NET Web Forms? その他?

あ、すみませんいらないかと思って書いてませんでした・・・
Windows Formsです。



>>@Whileか何かでレコードごとに配列に入れていき、選択されたNo.の店舗と所在地を取得する。
>
> 全レコードを取得して配列に入れるのは何故ですか? レコード数が膨大だったらどうするのですか?


申し訳ないです、何がダメとか全く考えずに思いついたことだけ書いてました。
また、Whileで〜と書いたのは、今回取得するテーブルのレコード数がそんなに多くないためいいかな、と思ったためです。



> 特に理由がなければ、SELECT クエリで WHERE 句を使って、取得したい No. のレコードだけを抽出す
> る方がよさそうですけど?

やりたいことはまさしくそれでして・・・
その「取得したい No. のレコードだけを抽出する」方法が分からずに試行錯誤して迷宮入りしていました。
よければその方法を教えていただきたいです。ヒントだけでも嬉しいので、是非よろしくお願いします。
引用返信 編集キー/
■88097 / inTopicNo.4)  Re[3]: レコード又はフィールドを配列に入れる方法
□投稿者/ wan (9回)-(2018/08/02(Thu) 13:15:49)
2018/08/02(Thu) 13:16:24 編集(投稿者)
No88096 (wan さん) に返信

>「取得したい No. のレコードだけを抽出する」方法が分からずに試行錯誤して迷宮入りしていました。
> よければその方法を教えていただきたいです。ヒントだけでも嬉しいので、是非よろしくお願いします。


うわ、すみませんすっごい初歩的なことを聞いていたことに気づきました…!

WHERE
   No. = '2'

とすればいいだけでしたね…


あとはこれで取得したデータを配列に入れて、この後の作業を行おうと思います。

回答ありがとうございました。

解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ