Zum Inhalt springen

Brauche dringend Hilfe! VB und SQL


dragi

Empfohlene Beiträge

Hallo,

ich brauche dringend eure Hilfe!

Ich soll bis Feierabend folgendes in VB realisieren, dabei hab ich weder Ahnung von VB noch von SQL:

Ich habe eine Datenbank in der habe ich 2 Tabellen.

Tabelle Art und Tabelle Pic. In der Tabelle Art gibt es die Spalte ID (Zahl) und die Spalte ArtNr (Text) und in der Tabelle Pic gibt es die Spalte ID(Zahl) und Name(Text).

Es gibt ca. 18.000 ArtNr(Artikelnummern) und ca. 6000 Namen. Diese 6000 Namen haben die gleiche Bezeichnung wie 6000 Artikelnummern. Beispiel: Es gibt die ArtNr: 1123 und den Namen 1123.

Nun soll in einer dritten Tabelle jeweils die ID von gleicher ArtNr und Namen zusammengefasst werden. Also 3 Spalten: Einmal die ID der neuen Dazensätze, einmal die ID der Art Tabelle und einmal die ID der Pic Tabelle.

Wie soll ich das anstellen?

Ich habe nun ein Formular mit einem Button. Dazu habe ich jetzt mit einem Modul begonnen:

'--- Öffnen der Hauptdatenbank (blabla_cd.mde)

Public Sub database_open()

strPasswort = "xxxxxxxxx"

Set blablaDB = OpenDatabase(App.Path & "\Datenbank\blabla_cd.mde", False, True, "MS ACCESS; PWD=" & strPasswort)

End Sub

Irgendwie soll ich nun das folgende Select Statement verwenden: Select Tab1.ID1, Tab2.ID2 from tab1, Tab2 where Tab1.ArtNr = Tab2.Name

Aber wie soll ich das in VB einbauen? Und wie krieg ich dann diese dritte Tabelle???

Bitte helft mir! Ist sehr wichtig!

Vielen, vielen Dank

dragi

Link zu diesem Kommentar
Auf anderen Seiten teilen

guck dir mal die Microsoft DAO Object Library an

dann muß du einen Recordset erzeugen mit dem du dich in der datenbank bewegen kannst also so was wie einen Zeiger

so was in der art :

Private RsA As New ADODB.Recordset

Private CnA As New ADODB.Connection

' verbindung zur datenabnk herstellen :

With CnA 'Connection zur DataBase

.CursorLocation = adUseClient

.Mode = adModeShareDenyNone

.Provider = "Microsoft.Jet.OLEDB.4.0" ' für Access 97: 3.51 / für 2000: 4.0

.ConnectionString = "Data Source=" & DatenBankDir & DBFileName

.Open

End With

With RsA

If .State = adStateOpen Then 'Recordset schliessen

.Close 'schliessen

End If

.CursorType = adOpenKeyset

.LockType = adLockPessimistic

.Open sSql, CnA ' sSql ist deine SQL Abfrage alos einfach ein String

' CnA ist die Conection zur datenbank

If .RecordCount = 0 Then

MsgBox= "Keine Einträge in der Datenbank gefunden, Programm wird beendet!"

End If

.MoveFirst ' zeigen auf ersten eintrag in datenbank

End With

und dann so was :

Do While Not RsA.EOF ' so lange einträger in datenbank

' HIER KOMMEN DEINE AKTIONEN

RsA.MoveNext ' zeiger auf nächsten eintrag

Loop

guck mal ob dir das weiterhilft

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