vb.net插入数据以访问数据库

用户3457511

我有以下代码将数据输入到我的Access数据库,但是出现以下错误。

Query input must contain at least one table or query.

我究竟做错了什么?这是他们提到这些行的代码部分。

Private Sub EditAddButton_Click(sender As Object, e As EventArgs) Handles EditAddButton.Click

    Dim conn As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\*******************;Jet OLEDB:Database Password=************;")
    Dim insertsql As String
    Try
        insertsql = "INSERT INTO RepairOrders" & _
        "(ROOtherInfo, ROJobType, ROJobTime, RODelPicDate, RONo)" & _
        "VALUES (@other, @type, @time, @delpic, @jobno) WHERE ROJobNo = @jobno"

        Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(insertsql, conn)

        cmd.Parameters.AddWithValue("@other", AddOtherText.Text)
        cmd.Parameters.AddWithValue("@type", AddTypeCombo.Text)
        cmd.Parameters.AddWithValue("@time", AddTimeCombo.Text)
        cmd.Parameters.AddWithValue("@delpic", AddDatePick.Value.Date.ToString)
        cmd.Parameters.AddWithValue("@jobno", AddJobText.Text)

        conn.Open()
        cmd.ExecuteNonQuery()
        MessageBox.Show("Booking Added!")
        conn.Close()

    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

End Sub

我已经用星号替换了某些信息,以涵盖一些敏感信息。

编辑:

现在我收到语法错误:(

Dim conn As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\*********************************;Jet OLEDB:Database Password=***********;")
    Dim insertsql As String
    Try
        insertsql = "UPDATE RepairOrders SET ROOther = @other, SET RONo = @jobno, SET ROJobType = @type, SET ROJobTime = @time, SET RODelPicDate = @delpic WHERE RONo = @jobno"

        Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(insertsql, conn)

        cmd.Parameters.AddWithValue("@other", AddOtherText.Text)
        cmd.Parameters.AddWithValue("@type", AddTypeCombo.Text)
        cmd.Parameters.AddWithValue("@time", AddTimeCombo.Text)
        cmd.Parameters.AddWithValue("@delpic", AddDatePick.Value.Date.ToString)
        cmd.Parameters.AddWithValue("@jobno", AddJobText.Text)

        conn.Open()
        cmd.ExecuteNonQuery()
        MessageBox.Show("Booking Added!")
        conn.Close()

    Catch ex As Exception
        MsgBox(ex.Message)
    End Try
ing杰克

看来您有太多的SET语句,并且OleDb需要'?' 对于参数,您必须注意它们的数量以及它们的指定顺序。这有点清理,请查看OLEDB参数化查询以获取更详尽的示例。

Try
        insertsql = "UPDATE RepairOrders 
                       SET ROOther = ?
                        , RONo = ?
                        ,  ROJobType = ?
                        , SET ROJobTime = ?
                        , SET RODelPicDate = ?
                     WHERE RONo = ?"
    Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(insertsql, conn)

    cmd.Parameters.AddWithValue("?", AddOtherText.Text)
    cmd.Parameters.AddWithValue("?", AddJobText.Text)
    cmd.Parameters.AddWithValue("?", AddTypeCombo.Text)
    cmd.Parameters.AddWithValue("?", AddTimeCombo.Text)
    cmd.Parameters.AddWithValue("?", AddDatePick.Value.Date.ToString)
    cmd.Parameters.AddWithValue("?", AddJobText.Text)

    conn.Open()
    cmd.ExecuteNonQuery()
    MessageBox.Show("Booking Added!")
    conn.Close()

Catch ex As Exception
    MsgBox(ex.Message)
End Try

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

访问数据库中的 vb.net 搜索

Vb.net数据库问题

刷新数据库VB.NET

如何使用 VB.NET 在托管数据库中插入数据

如何从数据表vb.net向SQL Server数据库插入值

未在SQL数据库vb.net中插入数据

使用vb.net从Sql数据库中插入,更新和删除数据?

将数据从vb6插入数据库?

当我更新数据库时,插入..... vb.net时不会插入信息。

vb.net 插入复选框值到 MS 服务器数据库

使用VB.Net将DateTime插入到postgreSql数据库中

如何在Access数据库(VB Net)中插入时间

如何在VB.net中从datagridview插入多个行到SQL数据库?

ASP.NET(VB)如何将textbox.text插入SQL数据库?

在数据库 VB.NET 中插入文本框的问题

通过 VB/Visual Studio 插入 Access 数据库 (2017)

从vb.net中的数据库读取数据

数据库未从 VB.NET 数据集更新

带访问数据库的Vb.net:您如何帮助我简化这些代码?

从访问数据库vb.net在datagridview中显示一条记录

如何从vb.net Windows窗体应用程序访问远程SQL Server数据库

使用访问数据库的VB.net的客户端PC要求是什么

Vb.Net应用程序安装程序未更新访问数据库

VB .NET 中的数据库访问失败(没有任何错误消息)

通过参数化的插入语句将错误的数据从VB.net发送到Mysql数据库

VB.NET:无法将访问数据库中的选定数据显示到datagridview中

插入数据以访问数据库时出错

vb.net CheckedListbox 从数据库中获取值

VB .Net,SQL Server 2012 Express数据库连接