vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Hintereinander Daten in Access Schreiben,löschen ergibt Fehlermeldung 
Autor: darkman203
Datum: 13.10.03 18:43

Ok ok ich weiß ich Nerve aber ich bräuchte noch mal Hilfe.
Jetzt funktioniert das füllen, löschen soweit recht gut nur füge ich einen Datensatz hinzu und will ihn dann sofort wider löschen erschein diese Fehlermeldung:
Eine nicht behandelte Ausnahme des Typs 'System.Data.DBConcurrencyException' ist in system.data.dll aufgetreten.

Zusätzliche Informationen: Parallelitätsverletzung : Der DeleteCommand hat sich auf 0 Datensätze ausgewirkt.

Ps: Ich habe ein Access Datenbank die Datenbank1 heißt.
Darin befindet sich die Tabelle1 mit den Spalten
ID=Autowert und Name=Text
Auf dem Form habe ich eine Listbox die mir den
Inhalt der Tabelle1(Name) anzeigt.
Darunter habe ich 2 Button (Button1 zum hinzufügen
und Button2 zum löschen von Daten)

Imports System.Data.OleDb
Public Class Form1
    Inherits System.Windows.Forms.Form
    Private conn As OleDbConnection
    Private cmd As OleDbCommand
    Private da As OleDbDataAdapter
    Private ds As DataSet
    Private dt As DataTable
    Private dv As DataView
'Listbox an Datenbank/Tabelle binden
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
  System.EventArgs) Handles MyBase.Load
        conn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data" & _
        "Source=Datenbank1.mdb")
        cmd = New OleDbCommand("SELECT * FROM Tabelle1", conn)
        da = New OleDbDataAdapter(cmd)
        ds = New DataSet
        conn.Open()
        da.Fill(ds, "Name")
        conn.Close()
 
        dt = ds.Tables.Item("Name")
        dv = ds.DefaultViewManager.CreateDataView(dt)
        ListBox1.ValueMember = "Name"
        ListBox1.DataSource = dv
    End Sub
'Daten in Listbox/Datenbank schreiben
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        Dim insSQL As String = "INSERT INTO Tabelle1 (Name) VALUES (@p1)"
        Dim cmd As New OleDbCommand(insSQL, conn)
        cmd.Parameters.Add("@p1", OleDbType.VarChar, 20, "Name")
        da.InsertCommand = cmd
 
        Dim rw As DataRow = dt.NewRow
        rw("Name") = TextBox1.Text
        dt.Rows.Add(rw)
 
        conn.Open()
        Try
            da.Update(dt)
            conn.Close()
        Catch ex As Exception
            MsgBox(ex.Message)
            conn.Close()
        End Try
    End Sub
'Daten aus Listbox/Datenbank löschen
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button2.Click
        Dim cb As New OleDbCommandBuilder(da)
        Dim dr As DataRow
 
        For Each dr In dt.Rows
            If dr.Item("Name") = ListBox1.Text Then Beep() : dr.Delete()
        Next
 
        Dim cmd As New OleDbCommand("UPDATE Tabelle1 SET Name = ? WHERE [ID] =" & _
          "?", conn)
        cmd.Parameters.Add("@p1", OleDbType.VarChar, 30, "Name")
        Dim prm As OleDbParameter = cmd.Parameters.Add("@p2", OleDbType.VarChar)
        prm.SourceColumn = "ID"
        prm.SourceVersion = DataRowVersion.Original
        da.UpdateCommand = cmd
        da.Update(ds, "Name")
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Hintereinander Daten in Access Schreiben,löschen ergibt Fehl...750darkman20313.10.03 18:43
Re: Hintereinander Daten in Access Schreiben,löschen ergibt ...520WaldiMaywood13.10.03 19:23

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel