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.

Datenbanken in VB

Empfohlene Antworten

Veröffentlicht

Ich muss für die Firma ein Prgramm basteln, in dem die ganzen Artikel,Preise,Bestellungen etc. sichtbar sein sollen.

Die Daten kommen aus einer Access Datenbank mit 7 Tabellen.

Wie ist es in Visual Basic möglich, dass ich 7 Tabellen in ein Data Modul einbaue bzw. ist das überhaupt möglich ?? Evtl. mit einem anderen Modul ???

Original geschrieben von MEhrismann

... Wie ist es in Visual Basic möglich, dass ich 7 Tabellen in ein Data Modul einbaue bzw. ist das überhaupt möglich ?? ...

AFAIK nicht zur selben (Lauf)Zeit.

Beschreib doch mal genauer was Du machen willst.

Machen wollen wäre schön, müssen muss ich das.

Es sieht so aus:

Ich habe eine Access 2000 Datenbank, die 7 Tabellen beinhaltet.

Mit Visual Basic (Ver. 6.0 Enterprise) soll eine Umgebung geschaffen werden,

in der ich alle Daten der Tabellen anschauen kann.

Zum Bildlichen Vorstellen:

Ich habe eine Artikelnr., diese enthält mehrere Selektionen, die Selektionen können mehrere Unterselektionen haben. Dann gibt es eine Tabelle, die den Bezug des Artikels erklärt sowie eine Tabelle, die für jeden Artikel eine Beschreibung enthält.

Als Flatfile wäre es fast unmöglich, da es mehr als 400 Spalten wären. Deswegen sind es 7 Tabellen.

Das Programm soll so aussehen, dass ich einen Artikel weiterblättere (mit dem Data Modul) und alle Infos angezeigt werden (Auf Registern).

Original geschrieben von MEhrismann

Machen wollen wäre schön, müssen muss ich das.

Es sieht so aus:

Ich habe eine Access 2000 Datenbank, die 7 Tabellen beinhaltet.

Mit Visual Basic (Ver. 6.0 Enterprise) soll eine Umgebung geschaffen werden,

in der ich alle Daten der Tabellen anschauen kann.

Zum Bildlichen Vorstellen:

Ich habe eine Artikelnr., diese enthält mehrere Selektionen, die Selektionen können mehrere Unterselektionen haben. Dann gibt es eine Tabelle, die den Bezug des Artikels erklärt sowie eine Tabelle, die für jeden Artikel eine Beschreibung enthält.

Als Flatfile wäre es fast unmöglich, da es mehr als 400 Spalten wären. Deswegen sind es 7 Tabellen.

Das Programm soll so aussehen, dass ich einen Artikel weiterblättere (mit dem Data Modul) und alle Infos angezeigt werden (Auf Registern).

Ich weiss zwar nicht so genau was du willst, aber denke nicht, dass es mit VB nicht möglich ist.

Musst halt ein Objektmodell basteln und es dann mit Daten füllen...

wie du das machst, kann ich dir hier nicht so erklären, da musst du selber durch. Wenn du jedoch gezielte Fragen dann hast und konkretere Fragestellungen hier postet, kann man dir eher helfen...;)

gruss

blear

Stell die Artikel in eine ListBox und sobald da ein Artikel vom Benutzer selektiert wurde kannst Du die jeweiligen Daten zum diesem Artikel entweder in TextBoxen oder in einem FlexGrid anzeigen.

das geht weiß ich. Bin halt kein VB Profi.

Ich hab mir das auch so gedacht, aber wie greife ich auf weitere Tabellen zu ?

Wenn ich also aus der Listbox eine Artikelnr. Wähle, dann sollen die Textfelder über das Datamodul gefüllt werden. Aber das geht ja auch nur aus einer Tabelle, oder ??

Mache dir eine Klasse Artikel

Besteht aus allen Infos die ein Aritkel hat. auch die Abhängigkeiten

Die Abhängigkeiten sind in unterschiedlichen Tabellen (1:N) dann musst du halt für jede Beziehung ein Recordset definieren.

Machst eine Methode InitArtikel und übergibst jedesmal die ID an diese Methode und innerhalb diese Methode holst du dann alles was du brauchst.!

Füllst deine Member und holst die Abhängigkeiten in Form von Recordset.

Danach musst du nur diese Infos dann eben in GUI anzeigen.

Mal so ein Beispiel:


Class Artikel

 private pID as string

 private pNummer as string

 private pBezeichnung as string


 private porsHistory as new adodb.recordset

 prviate porsSelektionen new as adodb.recordset



 public sub InitArtikel(ID as string) 


  with CreateRecordset("SELECT * FROM ARTIKEL WHERE ARTIKEL_ID = '" + Id + "'")


    ' hier die Member von RS lesen.. 


  end with


  set porsHistory = createRecordset("SELECT * FROM HISTORY WHERE HISTORY_ARTIKEL_ID = '" + ID + "')

  set porsSelektion = createRecordset("SELECT * FROM SELEKTIONEN WHERE SELEKTIONEN_ARTIKEL_ID = '" + ID + "')


 end sub



end class


CreateRecordset kann eine Methode sein womit du dann eben ein Statement an die Datenbank schickst und ein Recordset zurückgeliefert bekommst..

ich hoffe das hilft dir weiter..

grüsse

Blear

Das geht auch leichter mittels ADO 2.x, aber wie genau kann ich jetzt nicht sagen,

da ich mein schlaues Buch gerade nicht zur Hand habe.

Kann aber später mal nachschlagen und das ergebniss hier posten!

Original geschrieben von Ramses_PyramidenVerleih

Das geht auch leichter mittels ADO 2.x, aber wie genau kann ich jetzt nicht sagen,

da ich mein schlaues Buch gerade nicht zur Hand habe.

Kann aber später mal nachschlagen und das ergebniss hier posten!

Du meinst wahrscheinlich die Shape-Recordsets..? Ist auch ne Möglichkeit, da fehlt dir jedoch jeglicher Flexibilität. find ich. Weil du alles in einem hast dann...und die evtl. Erweitereungen werden dementsprechend schwerer und aufwendiger...

Sollten die Tabellen auch noch einigermassen gross sein, und du Infos aus allen Tabellen gleichzeitig brauchen, wird es recht lange dauern den Recordset zu erstellen.

Zur Informationsbeschaffung, würd' ich mir an deiner Stelle den Kofler besorgen.

Gerade zum Thema DB's steht Einiges drinn.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

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.