da.update wird nicht ausgeführt

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von greyman.

    da.update wird nicht ausgeführt

    Hallo,
    ein VB2008 Anfänger braucht mal bisschen Unterstützung.
    Bin gerade erst am Anfang um mich in VB2008 und das Thema Datenbanken einzuarbeiten und komme auch in kleinen aber feinen
    Schritten voran.

    Jetz hahb ich allerdings ein Problem welches ich nicht ganz verstehe (Aber ihr könnt mir das sicher erklären)

    Ich habe eine Access-Db mit 3 Spalten (Name, PLZ, Ort).
    In die möchte ich ganz simpel neue Daten aus Textboxen eintragen. Dachte das ist ganz einfach
    aber irgendwo hängts und ich weiß net was falsch ist.
    Hier mal der Code :

    VB.NET-Quellcode

    1. Imports System.Data.OleDb
    2. Public Class Form1
    3. Private conn As New OleDbConnection("Provider=Microsoft.jet.oledb.4.0; Data Source=db2.mdb")
    4. Private da As OleDbDataAdapter = Nothing
    5. Private ds As DataSet = Nothing
    6. Private dt As DataTable = Nothing
    7. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    8. Dim str As String = "SELECT * From Tabelle1"
    9. da = New OleDbDataAdapter(str, conn)
    10. conn.Open()
    11. Dim ds As New DataSet
    12. da.Fill(ds, "Tabelle1")
    13. conn.Close()
    14. End Sub
    15. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    16. Dim insql = "INSERT INTO Tabelle1 (Name, PLZ, ORT) VALUES (?,?,?)"
    17. Dim inscmd As New OleDbCommand(insql, conn)
    18. inscmd.Parameters.Add("?", OleDbType.VarChar, 40, "Name")
    19. inscmd.Parameters.Add("?", OleDbType.BigInt, 5, "PLZ")
    20. inscmd.Parameters.Add("?", OleDbType.VarChar, 30, "Ort")
    21. da.InsertCommand = inscmd
    22. Dim dt As New DataTable
    23. dt = ds.Tables("Tabelle1")
    24. Dim rw As DataRow = dt.NewRow()
    25. rw("Name") = TextBox1.Text
    26. rw("PLZ") = TextBox2.Text
    27. rw("Ort") = TextBox3.Text
    28. dt.Rows.Add(rw)
    29. conn.Open()
    30. da.Update(dt)
    31. conn.Close()
    32. End Sub
    33. End Class


    wie gesagt is alles voll anfängermäßig aber wär trotzdem toll wenn jemand nen Tipp hätte damit ich für die Zukunft derartige Fehler vermeide ;(
    danke, aber leider immernoch die gleiche Fehlermeldung:
    NullReferenceException
    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.


    :S

    noch ne Idee?

    Hab mir grad noch mal meinen Code im Debugger angeschaut:

    er bemängelt die Zeile:

    VB.NET-Quellcode

    1. dt = ds.Tables("Tabelle1")

    wenn ich da mit der maus auf dt gehe dann kommt da "dt|nothing"
    is das vielleicht der Fehler???

    Dachte aber das sollte so angegeben werde, hab das zumindest in vielen Beispielen so gesehen. :(

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „greyman“ ()