我做了一个留言本..向数据库提交数据的时候就会提示"myCommand.ExecuteNonQuery()"这行有错误...前高手指点`那个地方的错误~~`

解决方案 »

  1.   

    代码:
    <%@ Page Language="VB" Debug=true %>
    <%@ import Namespace="System.Data" %>
    <%@ import Namespace="System.Data.OleDb" %>
    <script runat="server">    Dim myConnection As New OleDbConnection()    Sub Page_Load(Sender As Object, E As EventArgs)    myConnection.ConnectionString="Provider = Microsoft.Jet.OLEDB.4.0;"&"Data Source="&Server.MapPath("database/gbook.mdb") 
        myConnection.Open()    End Sub    Sub Button1_Click(sender As Object, e As EventArgs)    if username.text="" or pic.SelectedValue="" or qq.text="" or email.text="" or title.text="" or content.text="" then    msg.text="请填写完整的表单" else    Dim InsertCmd As String = "insert into [book] (username,qq,email,pic,title,content) values (@username,@qq,@email,@pic,@title,@content)"
        Dim MyCommand As New OleDbCommand(InsertCmd, MyConnection)    MyCommand.Parameters.Add(New OleDbParameter("@username", OleDbType.char, 255))
        MyCommand.Parameters("@username").Value = username.text    MyCommand.Parameters.Add(New OleDbParameter("@qq", OleDbType.char, 255))
        MyCommand.Parameters("@qq").Value = qq.text    MyCommand.Parameters.Add(New OleDbParameter("@email", OleDbType.char, 255))
        MyCommand.Parameters("@email").Value = email.text    MyCommand.Parameters.Add(New OleDbParameter("@pic", OleDbType.char, 255))
        MyCommand.Parameters("@pic").Value = pic.selecteditem.value
        
    MyCommand.Parameters.Add(New OleDbParameter("@title", OleDbType.char, 255))
        MyCommand.Parameters("@title").Value = title.text
       
        MyCommand.Parameters.Add(New OleDbParameter("@content", OleDbType.char, 255))
        MyCommand.Parameters("@content").Value = content.text    myCommand.ExecuteNonQuery()
        myCommand.Connection.Close() response.redirect("default.aspx")    end if
        End Sub</script>
      

  2.   

    Dim InsertCmd As String = "insert into [book] (username,qq,email,pic,title,content) values (@username,@qq,@email,@pic,@title,@content)"上边这条语句错了,在sqlserver中可以这样写,但在Access中要写成这样    Dim InsertCmd As String = "insert into [book] (username,qq,email,pic,title,content) values(?,?,?,?,?,? )"
    其它地方没错了...
      

  3.   

    sql语句的错误,好好调试一下吧。