插入访问数据库不起作用

时间:2016-01-01 23:12:36

标签: vb.net visual-studio-2015

我正在使用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工作正常。

它有什么问题?

1 个答案:

答案 0 :(得分:2)

似乎您有参数问题。这里

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