我使用的是 Visual Studio 2015,Visual Basic 语言。
我想在 Access 数据库中插入一个用户名(代码中的“Utilizador”)。
这是我的代码:

Try
    Dim nconnect As New OleDbConnection("Provider=Microsoft.ACE.OleDb.12.0;" & "Data Source =|DataDirectory|S_Campo.accdb")
    nconnect.Open()
    Dim ncmd As OleDbCommand = nconnect.CreateCommand()
    ncmd.CommandText = "INSERT INTO Utilizador (Nome) VALUES (@p1)"
    ncmd.Parameters.AddWithValue("@1", Me.TextBox5.Text) 'Nome Do Utilizador
    ncmd.ExecuteNonQuery()
    nconnect.Close()
    MsgBox("Utilizador lançado com êxito", MsgBoxStyle.OkOnly, "Informação")

Catch ex As Exception
    MessageBox.Show(Err.Description)
End Try

它不会向我返回任何错误消息,但数据不会发送到数据库。
但是,UPDATE 和 DELETE 工作正常,使用“参数”。

它有什么问题?

最佳答案

看来你有参数问题。这里

ncmd.CommandText = "INSERT INTO Utilizador (Nome) VALUES (@p1)"

你的参数是 @p1 。和这里
ncmd.Parameters.AddWithValue("@1", Me.TextBox5.Text) 'Nome Do Utilizador

它是 @1
无论如何,在这里你应该如何检查成功
If ncmd.ExecuteNonQuery() > 0 Then
    MessageBox.Show("Success!!")
End If

关于vb.net - 插入访问数据库不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34560986/

10-12 16:59
查看更多