Zum Inhalt springen

Datenbank editieren und abrufen


Rollermann

Empfohlene Beiträge

Servus mal wieder von mir aus hier an die Geräte zu Hause!

Folgender Plan(sprache: Visual Basic)

Ein Programm, bei dem der Getränkeverbrauch und die daraus resultierende Rechnung angezeigt und bearbeitet werden kann.

Meine Datenbank: GGGDataBase.mdb mit dazugehörigem GGGDataSet

Darin enthaltene Tabellen: Preisliste; Mitglieder

Tabelle Preisliste: ID(AutoWert), Getränk(Text), Preis(Integer)

Tabelle Mitglieder: ID(AutoWert), Name(Text), Telefon(Integer), Rechnungsbetrag(Integer)

Das Form: Besteht aus mehreren Buttons und einem ListView

Das Ziel:

I Im ListView sollen die Namen der "Mitglieder" einzeln angezeigt werden, aus einem Tutorial von Microsoft weiß ich, das ich das mit ne "for each"-schleife mache... Dort wurde ein "explorer"-änliches Programm geschrieben.

II Wenn ich jetz meinetwegen im ListView auf einen der irgendwann hoffentlich mal angezeigten Namen klicke, und dann auf "Bier" (Für die unter 16: "KaraMalz" :) ) Soll bei dem angeklickten der Preis, der in der Tabell Preise bei Bier steht bei "Rechnungngsbetrag" hinzugerechnet werden...

Ich bekomm das nicht gelöst, da ich nicht mal weiß wie ich auf die Datenbank zugreife... und die Abfragen löse...

Kann man mir noch Helfen?

Bearbeitet von Rollermann
zur besseren Verständlichkeit
Link zu diesem Kommentar
Auf anderen Seiten teilen

Soweit bin ich grad gekommen:

 Private Sub hauptmaske_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        'TODO: Diese Codezeile lädt Daten in die Tabelle "GGGDataSet.Mitglieder". Sie können sie bei Bedarf verschieben oder entfernen.

        Me.MitgliederTableAdapter.Fill(Me.GGGDataSet.Mitglieder)


'Hier kommt jetzt die Abfrage der Daten rein


    End Sub

Und ganz oben im Code-Fenster
Imports KassensoftwareGGG.GGGDataSet

^Die Zeile bewirkt ja wohl, das ich überhaupt auf die Datenbank zugreifen kann! Für mich schon mal ein Teilerfolg :)

So, Nun weiß ich aber nicht, wie ich die Daten von Name abruf... Habe mit verschiedenen Konstelationen experimentiert, komme aber zu keinem vernünftigen ergebniss... und das was die Hilfe dazu ausspuckt verstehe ich net wirklich...

Link zu diesem Kommentar
Auf anderen Seiten teilen

was für eine Datenbank? Müsste eine Acess sein.

Lass mal den import weg der wird nicht zwingend benötigt.

Hier mal der Code für eine normale Abfrage welche alles ausgibt was in der Tabelle Preisliste steht.

(Dient nur zu orientierung)


Dim con As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" &"Data Source=Pfad der mdb Datei") ' Datenbankverbindung wird aufgebaut

Dim cmd As New OleDb.OleDbCommand

cmd.Connection = con

cmd.Commandtext = "Select * From Preisliste"

Dim data As New OleDb.OleDbDataAdapter(cmd)

Dim ds As New DataSet

data.Fill(ds)

DataGridView1.DataSource = ds.Tables(0)

Das mit der Listbox müsstest du lösen können indem du das form welches die listbox beinhaltet updatest. Beispiel:

Form1.update

Bearbeitet von Gateway_man
Link zu diesem Kommentar
Auf anderen Seiten teilen


Code:


Dim con As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" &"Data Source=Pfad der mdb Datei") ' Datenbankverbindung wird aufgebaut

Dim cmd As New OleDb.OleDbCommand

cmd.Connection = con

cmd.Commandtext = "Select * From Preisliste"

Dim data As New OleDb.OleDbDataAdapter(cmd)

Dim ds As New DataSet

data.Fill(ds)

DataGridView1.DataSource = ds.Tables(0)

Da sagt er dann folgendes: cmd mudd deklariert werden, DataGridView muss deklariert werden! Ja es ist ne Access .mdb... Sowet waer ich auch schon mal, aber durch den fehler kam ich nicht weiter... Hab mir dann die Eigenschaften der ListBox nochmal angeschaut und die Eigenschaften: Datasource und display member so eingestellt das er es nun so macht, wie ich es will... nur eben das mit dem update funzt net... Folgendes versucht:
Public Class NeuerKontakt


    Private Sub MitgliederBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MitgliederBindingNavigatorSaveItem.Click

        Me.Validate()

        Me.MitgliederBindingSource.EndEdit()

        Me.TableAdapterManager.UpdateAll(Me.GGGDataSet)

        hauptmaske.Update()


    End Sub


    Private Sub NeuerKontakt_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        'TODO: Diese Codezeile lädt Daten in die Tabelle "GGGDataSet.Mitglieder". Sie können sie bei Bedarf verschieben oder entfernen.

        Me.MitgliederTableAdapter.Fill(Me.GGGDataSet.Mitglieder)

    End Sub

End Class
und
Hauptmaske.ListBox1.update
und
Hauptmaske.ListBox1.refresh

Ich verstehe es so: sobald ich nach dem editieren der DB im Form NeuerKontakt Speichern klicke legt er das edit in die db und updatet Hauptmaske(das Form) bzw. ListBox1... aber es funzt net... kann es sein das ich was elementares vergessen habe? Den gesammten code hat das VisualBasicExpress generiert...

Link zu diesem Kommentar
Auf anderen Seiten teilen

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...