So speichern Sie Daten direkt auf der Datenbank vb.net

Bin ich der Begegnung mit einem problem in meinem Visual Basic.NET code speichern die Daten direkt in eine Microsoft Access-Datenbank. Hier ist der code, den ich versucht habe zu erreichen, mein problem:

Imports System.Data.OleDb

Public Class Form1
Dim cnn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\ching13\Desktop\watta1.mdb"

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Using dbConnection = New OleDbConnection(cnn)
        Dim dt As New DataTable
        Dim da As New OleDbDataAdapter
        Try
            dbConnection.Open()
            Dim cmd As New OleDbCommand
            cmd.CommandText = "INSERT INTO Log-In( Username, [Password] ) VALUES (@user, @pass)"

            cmd.Parameters.Add(New OleDbParameter("@user", DbType.String))
            cmd.Parameters.Add(New OleDbParameter("@pass", DbType.String))

            cmd.Prepare()

            cmd.Parameters("@user").Value = TextBox1.Text
            cmd.Parameters("@pass").Value = TextBox2.Text

            cmd.ExecuteNonQuery()

        Catch ex As Exception
        Finally
            dbConnection.Close()


        End Try
        MessageBox.Show("Data Saved")
        TextBox1.Text = ""
        TextBox2.Text = ""

    End Using
End Sub
End Class

Hier ist meine überarbeitete Visual Basic-code:

Imports System.Data.OleDb
Public Class Form1
    Dim cnn As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\ching13\Desktop\watta2.accdb"


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Using dbConnection = New OleDbConnection(cnn)
        Dim dt As New DataTable
        Dim da As New OleDbDataAdapter
        dbConnection.Open()
        Dim cmd As New OleDbCommand
        cmd.Connection = dbConnection
        cmd.CommandText = "INSERT INTO Log-In( Username, [Password] ) VALUES (@user, @pass)"

        cmd.Parameters.Add(New OleDbParameter("@user", DbType.String))
        cmd.Parameters.Add(New OleDbParameter("@pass", DbType.String))

        cmd.Prepare()


        cmd.Parameters("@user").Value = TextBox1.Text
        cmd.Parameters("@pass").Value = TextBox2.Text

        cmd.ExecuteNonQuery()
        dbConnection.Close()


        MessageBox.Show("Data Saved")
        TextBox1.Text = ""
        TextBox2.Text = ""

    End Using
End Sub
End Class
  • Und was ist der Fehler, den du Begegnung? Sie müssen zumindest einige Informationen. (Tipp: Sie sind explizit ignorieren von Ausnahmen in Ihrer Catch block. Ausnahmen enthalten sehr nützliche Informationen, und sollte nicht ignoriert werden. Es gibt eine gute chance, dass das system versucht, Ihnen zu sagen, was genau falsch ist, und du bist einfach nicht Zuhören.)
  • Nicht zu sehen, etwas, geben Sie mir einen Anhaltspunkt.Die PS die Sie nicht brauchen, um die Verbindung zu schließen und das catch-block ist auch frech...
  • Ohne Sie würden Sie einen null-Verweis-Ausnahme-ich denke, angesichts dessen, was Sir Tim sah. Das ist der Grund, warum try Catch end verpönt ist...
  • Sir, was mein problem ist, dass die Daten, die ich einfügen möchten, oder fügen Sie in meiner Datenbank nicht hinzufügen. Der code funktionierte nicht.
  • warum hat deine db geändert? in der ersten code, den Sie geschrieben, es war watta1.mdb und Ihre aktualisierten code ist watta2.accdb
InformationsquelleAutor user3195853 | 2014-01-14
Schreibe einen Kommentar