Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

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

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ß

  • Autor

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

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.