2016-04-25 17 views
0

私は2つのテーブルを持っています。 レシピとfoodcategoriesテーブル2の同じIDのユーザー名を取得するために、テーブル1の選択されたID。vb.net

レシピ表:

ID|  recipe name  |description|FoodCategoryID| 
--+---------------------+-----------+--------------| 
1 | Chicken Soup  | ********* |  3  | 
2 | Sunrise Surprise | ********* |  1  | 
3 | Toated Ham & Cheese | ********* |  5  | 

Foodcategoriesテーブル:

FoodCategoryID | FoodCategory | 
---------------+--------------| 
      1 | Breakfast | 
      2 | Lunch  | 
      3 | Dinner  | 
      4 | Snack  | 
      5 | Brunch  | 

私はdatagridview1でWindowsフォーム上で表示されているレシピテーブル。ユーザーが行をクリックすると、クリックされた行からのデータで満たされた複数のテキストボックスがある新しいフォームがポップアップします。 テキストボックス私は問題のあるのは、CategoryTxTBoxというFoodCategoryのテキストボックスです。それは、foodcategoriesテーブルからFoodCategoryIDを表示し、それはFoodCategoryを表示するために必要です。のみFoodCategoryIDが表示されていることを、

Private Sub DataGridView1_CellClick(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles DataGridView1.CellClick 
    Dim conn As New MySqlConnection 
    Dim cmd As New MySqlCommand 
    conn.ConnectionString = "Server=; user id=; password=; database=;" 
    cmd.Connection = conn 
    conn.Open()  
    form2.CatagoryTxtBox.Text = DataGridView1.SelectedCells(5).Value.ToString 
end sub 

しかし:

私はSOFARを持っている唯一のコードがあります。

私はプログラムの仕方がわからないことに注意してください。私は昨日始めたばかりです。私はそれを自分でやろうとしています。残念ながら私はこれについての答えを見つけることができないので、私はこのフォーラムに向っています。もし誰かが提案してください。

+1

最初にdatagridview1のFoodCategory列を表示し、DataGridview1から直接表示することができます。 –

+0

はい、DataGridViewを満たすクエリコードを表示すると、おそらく適切なJOIN文を追加してFoodCategory 2番目のテーブルの説明 – Steve

+0

if文を使用することはできませんか? foodcategoriesにdatagridview2を追加し、FoodCategoryID column = datagridview2と同じFoodCategoryIDの値を持つ選択された行が、datagridview2のFoodCatergory値を表示するかどうかを確認します。コードがどのように見えるかわからない – PTR

答えて

0

私は、次のコードで100回の試行の後に私の質問を解決:これはそれを行うための正しい方法であれば誰も私を伝えることができれば

Dim reader As MySqlDataReader 
    Try 
     con.Open() 
     Dim query As String 
     query = "Select * from foodcategories where FoodCategoryID = '" & DataGridView1.SelectedCells(5).Value.ToString & "'" 
     cmd = New MySqlCommand(query, con) 
     reader = cmd.ExecuteReader 
     While reader.Read 
      Dim sname As String 
      sname = reader.GetString("FoodCategory") 
      RecipeContent.Catagory.Text = sname 
     End While 
     con.Close() 

    Finally 
     con.Dispose() 
    End Try 

してください?

関連する問題