0

SQLからのコンボボックスでアイテムを選択した場合、SQLから複数のデータをラベルにバインドする方法これは私のコードです:

    Private Sub cmboCourse_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmboCourse.SelectedIndexChanged

    If cmboCourse.Text = "ADVANCED COMPUTER TECHNICIAN" Then
        callMe()
    ElseIf cmboCourse.Text = "AUTOELECTRICITY" Then
        callMe()
    ElseIf cmboCourse.Text = "AUTOMOTIVE" Then
        callMe()
    End If

End Sub


Private Sub callMe()

Dim str As String = ("Data Source=PC1; User ID=sa; Password=pwd;Databasfriend")
Dim con As New SqlConnection(str)
Dim str1 As String = "SELECT * FROM tbl_course"
Dim da As New SqlDataAdapter(str1, con)
Dim dataset1 As New DataSet()
da.Fill(dataset1, "course")
lbl.DataBindings.Add("text", dataset1, "course.Course_Code")

end sub

そしてこれが私のテーブルです

 Course_Code      Course
 ACT              ADVANCED COMPUTER TECHNICIAN
 AE               AUTOELECTRICITY
 AM               AUTOMOTIVE

1 つのデータのみをバインドします。特定の列の例で多くのデータをバインドしたい コンボ ボックスでコース AUTOMOTIVE を選択します AUTOMOTIVE の course_code はどのようにラベルにバインドされますか、また AUTOELECTRICITY を選択した場合、AUTOELECTRICITY の course_code はどのように同じラベルにバインドされますか

4

2 に答える 2

0

これはテストされていません。動作しない場合はお知らせください。

Private Sub cmboCourse_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmboCourse.SelectedIndexChanged
    callMe(cmboCourse.Text)
End Sub


Private Sub callMe(ByVal course as String)

    Dim str As String = ("Data Source=PC1; User ID=sa; Password=pwd;Databasfriend")
    Dim con As New SqlConnection(str)
    Dim str1 As String = "SELECT * FROM tbl_course WHERE [Course]='" & course & "'"
    Dim da As New SqlDataAdapter(str1, con)
    Dim dataset1 As New DataSet()
    da.Fill(dataset1, "tbl_course")
    'lbl.DataBindings.Add("text", dataset1, "course.Course_Code")
    If dataset1.Tables("tbl_course").Rows.Count > 0 Then
        lbl.Text = dataset1.Tables("tbl_course").Rows(0)("Course_Code")
    Else
        MsgBox "Course [" & course & "] not found"
    End If

End Sub

da.Fill(dataset1, "course")コードでは、テーブルを「course」に指定し、select ステートメントは「tbl_course」テーブルから選択することに注意してください。後者が正しい名前だと思います。

編集1:

バグ修正

編集2:

デバッグ

于 2013-03-26T19:47:09.270 に答える
0

sc.Open() Dim da As New SqlDataAdapter()

    Dim dataset1 As New DataSet()
    Dim sql As New SqlCommand("Select * from book where Title='" + cmbtit.Text + "'", sc)

    da.SelectCommand = sql
    da.SelectCommand.ExecuteNonQuery()
    da.Fill(dataset1, "book")

    If dataset1.Tables("book").Rows.Count > 0 Then
        txtauthor.Text = dataset1.Tables("book").Rows(0)("Author")
    Else
        MsgBox("Author [" & cmbtit.Text & "] not found")
    End If
    sc.Close()

End Sub
于 2014-11-10T10:47:38.987 に答える