2013-10-02 36 views
0

我在属性中使用了一个带有表格的mysql产品代码,数量,公司,价格。我已经在vb 2012中创建了一个datagridview,我想从窗体中获取输入,然后在datagridview中显示结果。我也想显示我在mysql中创建的表格的价格。但是,我无法这样做。需要帮助从MySQL中填充数据网格

这是我的程序代码。 plz帮助我

Dim row As Integer = DataGridView1.Rows.Add() 
    Dim connection As String 
    Dim command As String 
    Dim command2 As String 
    command2 = "select Company from Stock WHERE Product_Code =('" + TextBox1.Text + "');" 
    connection = "Data Source=localhost; Database=Entry; User Id=root; Password=;" 
    command = "select Price from Stock WHERE Product_Code =('" + TextBox1.Text + "');" 
    Dim con As New MySqlConnection(connection) 
    Dim cmd As New MySqlCommand(command) 
    Dim data As DataTable 
    Dim adp As New MySqlDataAdapter 
    Dim data2 As DataTable 
    Dim adp2 As New MySqlDataAdapter 
    DataGridView1.Rows.Item(row).Cells(0).Value = TextBox1.Text 
    DataGridView1.Rows.Item(row).Cells(2).Value = TextBox2.Text 
    Try 

     adp = New MySqlDataAdapter(command, connection) 
     adp2 = New MySqlDataAdapter(command2, connection) 
     data = New DataTable 
     data2 = New DataTable 
     adp.Fill(data) 
     adp2.Fill(data2) 
     DataGridView1.Rows.Item(row).Cells(1).Value = data 
     DataGridView1.Rows.Item(row).Cells(3).Value = data 
    Catch ex As Exception 
     MessageBox.Show("Error") 
    End Try  

回答

0

你应该能够找到如何做到这遍SO(堆栈溢出)的例子。但是给你伸出援助之手,这里有你需要研究的东西:

首先,你应该参数的SQL,以防止注射和可读性:http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.parameters.aspx

其次,你不要行添加到一个DataGrid,你将数据源设置为实现IList的东西:http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.datasource.aspx然后,如果需要,可以将项目添加到列表中。如果您只想显示表中的行,则可以将数据源设置为数据表(DATA)。