mysql - 需要帮助从 MySQL 填充数据网格

标签 mysql sql vb.net datagridview

我在mysql中制作了一个表,其属性为产品代码、数量、公司、价格。我在 vb 2012 中创建了一个 datagridview,我想从表单中获取输入,然后在 datagridview 中显示结果。我还想显示我在 mysql 中创建的表中的价格。但是,我做不到。

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

    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      

最佳答案

您应该能够找到如何在 SO 上执行此操作的示例(堆栈溢出)。但为了给您提供帮助,您需要研究以下内容:

首先,您应该参数化 SQL 以防止注入(inject)和可读性:http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.parameters.aspx

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

关于mysql - 需要帮助从 MySQL 填充数据网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19141833/

相关文章:

mysql - 从 SQL Server 高效更新 MySQL 表

php - 多个唯一值 MYSQL

mysql - SELECT/GROUP BY - 时间段(10 秒、30 秒等)

vb.net - DirectCast 对性能和后期/早期绑定(bind)有什么影响?

c# - 我如何翻译 newButton.Click += delegate { window.IsOpen = false; };在 vb.net 中

vb.net - Cursor.Wait 在 printDialog 之后

mysql - 插入到 mysql 中的地理空间字段

php - sprintf() 如何防止 SQL 注入(inject)?

sql - 分区中的 ORDER BY - SELECT 关键字

MySQL 并仅使用一些结果