Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 将记录插入SQL Server数据库后刷新datagridview_Sql Server_Vb.net_Datagridview - Fatal编程技术网

Sql server 将记录插入SQL Server数据库后刷新datagridview

Sql server 将记录插入SQL Server数据库后刷新datagridview,sql-server,vb.net,datagridview,Sql Server,Vb.net,Datagridview,我正在尝试在插入新记录后更新datagridview 以下按钮位于表单上,datagridview位于另一个表单上: Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Try Dim dt As New DataTable Using DBCon As New SqlConnection("Server=192.168.1.4,1433;Da

我正在尝试在插入新记录后更新datagridview

以下按钮位于表单上,datagridview位于另一个表单上:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Try
        Dim dt As New DataTable

        Using DBCon As New SqlConnection("Server=192.168.1.4,1433;Database=example;User=test;Pwd=test;"),
    DBCmd As New SqlCommand("INSERT INTO Jobs (Zone,Equipement,Description) 
VALUES ( '" & TextEdit1.Text & "','" & TextEdit2.Text & "','" & TextEdit3.Text & "') ", DBCon)
            DBCon.Open()
            dt.Load(DBCmd.ExecuteReader)
            mainform.GridControl1.DataSource = dt

        End Using

        MsgBox.Show("Record Has been Added Successfully!!")
        DialogResult = DialogResult.OK
    Catch ex As Exception
        MsgeBox.Show(ex.Message)
    End Try

您需要编写以下代码。请您仔细阅读这篇文章,了解如何使用CRUD demo参数化您的查询

dt.Load(DBCmd.ExecuteReader)
mainform.GridControl1.DataSource = dt
mainform.GridControl1.Refresh()

请先参数化您的查询。“它很好用”不,它不是,它很容易注射。当有东西进入
”时,它肯定不会“正常”工作;删除表格作业-- <代码> Text Text 3.Text <代码>…请不要将您的凭据与其他任何地方共享。如果由于某种原因,您认为您的代码不安全,那么如果有人把亨利的东西放到设备文本框中,会发生什么情况。您的代码将失败。参数化sql不仅可以防止sql注入,还可以处理各种其他挑战。一旦你了解了这比任何奇怪的字符串操作都要容易。只需了解如何。显示第一次加载DataGridView的代码。您实际上只需要重新执行该代码。@christymallony在消息之后,您需要选择dt值的更新。您的datagridview是否第一次在datagridview上加载显示数据?当我转到datagridview表单时,我已经看到数据,当我打开插入表单并添加数据时,它不会刷新,也看不到新添加的数据row@christymallony插入记录后,需要将数据源重新分配给GridControl,然后调用刷新。您的代码只缺少您在问题中遇到的刷新。我在这里发布之前尝试过,这就是为什么您会看到DialogResult=DialogResult.OK,还因为我也在主窗体中刷新,但它不起作用