Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

nach langer suche um Internet ohne Erfol entschied ich mich mein Problem erfahrenen Leuten mitzuteilen.

Ich verusche mich an einer Datenbankanbindung (MS Access 2003) hier möchte ich eine Update, Insert und Delete Funktion verwenden. Das Laden der Datenbank klappt schonmal gut. Der rest leider nicht.

Das das mein erste Kontakt mit Datenbank ist habe ich auch überhauptkeine Ahnung. Der Quelltext ist von einer Online Community VB-fun.de


Private dbpath As String = System.IO.Path.Combine(Application.StartupPath, "Dataset.mdb")

    Private Conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & dbpath & ";")

    Private sql As String = "SELECT * FROM [User];"

    Private cmd As New OleDbCommand(sql, Conn)

    Private da As New OleDbDataAdapter(cmd)

    Private ds As New DataSet



    Public Sub Load_Table()

        Try

            Conn.Open()

            ds.Clear()

            da.Fill(ds, "User")

            Form1.DataGrid1.DataSource = ds.Tables("User")

            Form1.cbUser.DataSource = ds

            Form1.cbUser.DisplayMember = "User.Username"

        Catch ex As OleDbException

            MessageBox.Show(ex.Message, "Fehler", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)

        Finally

            Conn.Close()

        End Try

    End Sub
So fängt alles an und klappt auch noch ganz gut nur jetzt fällt er auf die Schnauze...

Dim cb As OleDbCommandBuilder = New OleDbCommandBuilder(da)


        Try

            Conn.Open()


            Dim row As DataRow = ds.Tables("User").NewRow


            row("User") = User

            row("Passwort") = PW

            row("Mail") = Email

            row("Datum") = Date.Now


            ds.Tables("User").Rows.Add(row)


           [COLOR="SeaGreen"][U] da.Update(ds, "User")[/U][/COLOR]


            MessageBox.Show("Neuer Datensatz Username " & User & " hinzugefügt!", "Neuer Datensatz", MessageBoxButtons.OK, MessageBoxIcon.Information)


        Catch ex As OleDbException

            MessageBox.Show(ex.Message, "Fehler", MessageBoxButtons.OK, _

               MessageBoxIcon.Exclamation)

        Finally

            Conn.Close()

        End Try


        Load_Table()

bei der von mir Makierten stellen springt der Debugger direkt in denn Catch Teil... .

Ich weiß nicht warum und bitte um hilfe.

Gruß

Chris

Geschrieben

Hi

bin nicht mit VB beschäftigt, aber prinzipiell habe ich zwei fragen und eine Bitte:

1. Das Dataset (debugger->reinschauen) hat die neue Row "angenommen", richtig?

2. Hast du schreibberechtigung auf der Datenbank, oder vllt. nur Lesezugriff?

3. Kannst du die Exception eben hier posten, dann fällt die Fehlersuce einfacher.

Gruß

Geschrieben

Hi,

vielen dank schonmal für deine Antwort.

zu 1. Ja hat er er scheitert an dem Befehel da.Update

zu 2. Ja hab ich ist eine lokale von mir erstellte Datenbank. "Vollzugriff"

zu 3. Entschuldigung das hab ich ganz vergessen: Syntaxfehler in der INSERT INTO-Anweisung

Gruß

Chris

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...