プロが教える店舗&オフィスのセキュリティ対策術

初めましてVB初心者です。
初歩的な質問になりますがよろしくお願いいたします。

データへの接続までは出来たのですが、内容をどのように表示をさせるかが分かりません。

◆やりたい事
 決定ボタンを押すとText Box4に入力された内容でテーブルを検索し、
 フォームにテーブルから読みだした内容を表示

◆環境
 ・Visual Studio2017
 ・Access2016

◆フォームの内容
 検索:Text Box4
 決定:Button1
 日付:Text Box1
 名前:Text Box2
 住所:RichTextBox1
 年齢:Text Box3

◆テーブルの内容
 ・日付 ⇒ Text Box1に表示
 ・名前 ⇒ Text Box2に表示
 ・住所 ⇒ RichTextBox1に表示
 ・年齢 ⇒ Text Box3に表示

A 回答 (4件)

変数:dr (OleDbDataReader の)はテーブルの内容をコントロールに代入し必要なくなったら dr.Close してください。


リンク先では Using を用いているためそれを省いてますので。
    • good
    • 0
この回答へのお礼

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

添付していただきましたリンクを参考にしてもう少し勉強してみます。
色々助けていただき、ありがとうございました。

お礼日時:2018/01/03 21:49

https://www.adonetvb.com/AdoNetExecuteReaderOle. …

古いバージョンですけど、

Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader()
これと
『それぞれのコントロール名』= dr("フィールド名を指定")

でいけるのではないかと。
ただしデータの型によっては変換が必要かもです。

SQL文は
str_sql = "SELECT * FROM テーブル名 WHERE 名前 = '" & TextBox4.Text & "';"

になるかな?
    • good
    • 0

うちのが古すぎるからなのか、書き方が違うみたいですね。



取り敢えずは『OleDbDataReader』でデータを取得しないとダメだとは思いますが、この書き方に合わせる方法について知識不足です。
すいません。

ところで

>決定ボタンを押すとText Box4に入力された内容でテーブルを検索し、
テーブルの『どのフィールドを検索させる』のでしょう?
全てってなるとフィールドの型が同じならまだしも違うと面倒かも知れませんよ。
    • good
    • 0
この回答へのお礼

OleDbDataReaderを使用するのですね。
ありがとうございます。調べてみます。

検索するのは「名前」フィールドを検索といったかたちで考えております。

お礼日時:2018/01/03 19:00

接続方法によって変わってくるかもですので、接続できたやり方かコードを提示したら良かったのかも。

    • good
    • 0
この回答へのお礼

回答ありがとうございます。
接続のコードは下記になります。
よろしくお願いいたします。

cn = New OleDb.OleDbConnection
cn.ConnectionString = My.Settings.ss_練習
cn.Open()
cmd = cn.CreateCommand
cmd.CommandText = str_sql
cmd.Connection = cn
cmd.ExecuteReader()
cn.Close()
cmd.Dispose()

お礼日時:2018/01/03 15:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!