加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 在MS Access 2003中INSERT到用户表中的语法错误

发布时间:2020-12-16 00:08:49 所属栏目:asp.Net 来源:网络整理
导读:使用VB.NET和ASP.NET以及ms-access 2003数据,我正在尝试将数据从Web表单输入到db.mdb中名为“USER”的表中. 我试过这段代码: Protected Sub btnCreateAccount_Click(sender As Object,e As System.EventArgs) Handles btnCreateAccount.Click Dim conn As N
使用VB.NET和ASP.NET以及ms-access 2003数据,我正在尝试将数据从Web表单输入到db.mdb中名为“USER”的表中.

我试过这段代码:

Protected Sub btnCreateAccount_Click(sender As Object,e As System.EventArgs) Handles btnCreateAccount.Click

    Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:UsersBrianDocumentsVisual Studio 2010WebSitesWebSite3db.mdb;User Id=admin;Password=;")

    Dim cmd As OleDbCommand = New OleDbCommand("INSERT INTO USER (Name,Surname,Username,Country,TelNo,Password,Address) VALUES (?,?,?)",conn)

    If txtPass.Text = txtCPass.Text Then

        cmd.Parameters.Add("@Name",OleDbType.VarChar,255).Value = txtName.Text
        cmd.Parameters.Add("@Surame",255).Value = txtSurname.Text
        cmd.Parameters.Add("@Address",255).Value = txtAddress.Text
        cmd.Parameters.Add("@Country",255).Value = txtCountry.Text
        cmd.Parameters.Add("@Username",255).Value = txtUsername.Text
        cmd.Parameters.Add("@Password",255).Value = txtPass.Text
        cmd.Parameters.Add("@TelNo",OleDbType.Integer).Value = txtTelNo.Text

        Try

            conn.Open()
            cmd.ExecuteNonQuery()
            conn.Close()

        Catch ex As OdbcException
            Throw ex
        Finally
            conn.Close()
            lblAccount.Visible = True


        End Try

    End If

End Sub

但它给我一个错误信息:

为什么问题可能导致的任何建议?

解决方法

用户和密码是保留关键字.更改名称,或在查询中的名称周围使用方括号:
Dim cmd As OleDbCommand = New OleDbCommand("INSERT INTO [USER] (Name,[Password],conn)

然后,对于您将遇到的下一个错误:由于参数未在查询中命名,因此必须按照查询中使用的顺序添加Parameters集合中的参数对象.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读