将数据插入 datagridview vb.net

Posted

技术标签:

【中文标题】将数据插入 datagridview vb.net【英文标题】:insert data to datagridview vb.net 【发布时间】:2018-07-20 12:59:11 【问题描述】:

如何将钱行和列插入 datagridview? 喜欢i went to insert to datagridview这个 是我的代码:

Private Sub btnSimpan_Click(sender As Object, e As EventArgs) Handles btnSimpan.Click
    Call konek()
    Dim simpan As String
    Dim hasil As Integer

    simpan = ("INSERT INTO T_Penjadwalan(Kode_Penjadwalan,Kelas,Kode_Jam,Jam_Mulai,Jam_Selesai,Senin,Selasa,Rabu,Kamis,Jumat,Sabtu) VALUES ('" & TBPENJADWALAN.Text & "','" & CBKelas.Text &
             "','" & KJ1.Text & "','" & KJ2.Text & "','" & KJ3.Text & "','" & KJ4.Text & "','" & KJ5.Text & "','" & KJ6.Text & "','" & KJ7.Text & "','" & KJ8.Text & "','" & KJ9.Text &
             "','" & JM1.Text & "','" & JM2.Text & "','" & JM3.Text & "','" & JM4.Text & "','" & JM5.Text & "','" & JM6.Text & "','" & JM7.Text & "','" & JM8.Text & "','" & JM9.Text &
             "','" & JS1.Text & "','" & JS2.Text & "','" & JS3.Text & "','" & JS4.Text & "','" & JS5.Text & "','" & JS6.Text & "','" & JS7.Text & "','" & JS8.Text & "','" & JS9.Text &
             "','" & Senin1.Text & "','" & Senin2.Text & "','" & Senin3.Text & "','" & Senin4.Text & "','" & Senin5.Text & "','" & Senin6.Text & "','" & Senin7.Text &
             "','" & Selasa1.Text & "','" & Selasa2.Text & "','" & Selasa3.Text & "','" & Selasa4.Text & "','" & Selasa5.Text & "','" & Selasa6.Text & "','" & Selasa7.Text &
             "','" & Rabu1.Text & "','" & Rabu2.Text & "','" & Rabu3.Text & "','" & Rabu4.Text & "','" & Rabu5.Text & "','" & Rabu6.Text & "','" & Rabu7.Text &
             "','" & Kamis1.Text & "','" & Kamis2.Text & "','" & Kamis3.Text & "','" & Kamis4.Text & "','" & Kamis5.Text & "','" & Kamis6.Text & "','" & Kamis7.Text &
             "','" & Jumat1.Text & "','" & Jumat2.Text & "','" & Jumat3.Text & "','" & Jumat4.Text & "','" & Jumat5.Text & "','" & Jumat6.Text & "','" & Jumat7.Text &
             "','" & Sabtu1.Text & "','" & Sabtu2.Text & "','" & Sabtu3.Text & "','" & Sabtu4.Text & "','" & Sabtu5.Text & "','" & Sabtu6.Text & "','" & Sabtu7.Text & "')")
    Try
        cmd = New SqlCommand(simpan, conn)
        hasil = cmd.ExecuteNonQuery()
        If hasil > 0 Then
            MessageBox.Show("Data Tersimpan", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
            Call tampilgridpenjadwalan()
        End If
    Catch ex As Exception
        MessageBox.Show("Failed : " & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error)
    End Try
End Sub

【问题讨论】:

你拥有的价值远远多于你拥有的领域。您需要将其切换为使用参数并修复插入语句。然后确定您是否真的在询问如何将其插入数据库,因为这似乎是这段代码试图做的事情(有点)。 DataGridView 是一个包含行和列的 GUI 界面,允许在类似表格的布局中查看和编辑数据。 Datagridview save changes to Database vb.net的可能重复 你能告诉我代码是怎么做的吗,因为我现在不会 【参考方案1】:

首先,正如其他人所说,在VB.NET中执行SQL查询时最好使用参数。它有很多好处,而且相当简单。

以插入查询的 sn-p 为例,与其将第一个值子句定义为 '" & TBPENJADWALAN.Text & "',不如将​​第一个值定义为 @TBPENJADWALAN

然后使用以下代码将来自TBPENJADWALAN.Text 的字符串传递给@TBPENJADWALAN

cmd.Parameters.Add("@TBPENJADWALAN", OleDbType.VarChar, 50).Value = TBPENJADWALAN.Text

OleDbType.VarChar = 您存储的数据类型

50 = 字段大小

所以,而不是你的代码如下......

simpan = ("INSERT INTO T_Penjadwalan(Kode_Penjadwalan) VALUES ('" & TBPENJADWALAN.Text & "')

...应该是:

simpan = ("INSERT INTO T_Penjadwalan(Kode_Penjadwalan) VALUES (@TBPENJADWALAN)")

cmd.Parameters.Add("@TBPENJADWALAN", OleDbType.VarChar, 50).Value = TBPENJADWALAN.Text

它更清洁、更安全。您可以采用该示例并更改插入查询的其余部分。


就您关于将数据插入DataGridView 的原始问题而言,根据我的经验,最好创建一个DataSetAdapter 来填充它。试试这个:

Dim adapter As SQLDataAdapter
Dim ds As New DataSet
adapter = New SQLDataAdapter(simpan, cmd)
adapter.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)

【讨论】:

由于 OP 使用的是 SqlCommand,我猜他使用的是 SQL Server,所以这将是 SqlDbType。

以上是关于将数据插入 datagridview vb.net的主要内容,如果未能解决你的问题,请参考以下文章

vb.net怎么将datagridview的数据写入数据库

需要一些关于将数据放入 vb.Net 中的 DataGridView 的建议

关于VB.NET2005中dataGridView的问题

关于VB.NET中 datagridview 刷新问题

vb.net将datagridview中的数据保存到txt并加载

VB.net 中的 DataGridView 不允许我更新