19. januar 2003 - 12:06Der er
11 kommentarer og 2 løsninger
VB Skal finde enkelte poster i en Access DB
Jeg er i gang med at udvikle et mindre system.
Jeg har en database der har nogle stamoplysninger i en tabel ved navn "Stam" og nogle kredit oplysninger i en tabel ved navn "Debit"
Når jeg tilføjer nogle Debit oplysninger på et firma så henter Debit Stam´s ID Nr og skriver dem i Debits ID nr, På den måde kan jeg holder firma og oplysninger samlet, Men hvordan for jeg den til at sotere det.
I Sql ville det hede noget i stil med Stamid = $Id Select * From Debit Where Id = $Stamid
Men hvordan ville det se ud i VB Håber i forstå mit lille problem, Ellers spørg
Ønsker ikke at benytte Sql da jeg vil mene "Læs TROR" at jeg så skal ændre en masse kode da de grundlæggende ting fungere
Men som jeg nu har kunne læse mig frem til det så skal det køres lidt i stil med det her
Dim ID As Intger Dim Debitid(100) As Intger ID = Data1.Recordset ("Id") Data2.Recordset.Movefirst Do While Data2.Recordset.EOF = False If Data2.Recordset ("Id") = ID Then "Skal den proppe det ind i arrayet" <---- Kan jeg ikke lige kode End If
Data2.Recordset ("Id") = Debitid
End Sub
Men syntes ikke det virker, Den skal jo bare smide alle poster der opfylder kravet om at have samme Id nr som Data1.Recordset´en i Arrayet og så til sidst vise arrayet i Data2
Tubber jeg kan kun give dig ret i at SQL klart er at fortrække men jeg vil ikke bruge det her da jeg skal aflevere programmet til en bekendt og syntes ikke han skal have indstaleret Sql server osv osv på hans desktop for bare at kunne køre et mindre program
Du kan sagtens bruge SQL connection og strenge til at kommunikere med en access db, og det mener jeg også er bedre end data kontrollen......
Har lavet en CD Database som kørere med en DB og kommunikation til denne via sql sætninger.....
Eks. på en simpel lille søge funktion.....: Private Sub cmdSoftwareSrc_Click() If txtSearchSoftware.Text = "" Then MsgBox "Search field empty", , "Warning" ElseIf txtSearchSoftware.Text <> "" Then txtSoftwareName.Text = "" txtSoftwareType.Text = "" txtSoftwarePlatform.Text = "" txtSoftwareCDName.Text = "" txtSoftwareCDNumber.Text = "" txtSoftwareOwner.Text = "" txtSoftwareBorowed.Text = "" txtSoftwareFileType.Text = "" Set ws = Workspaces(0) Set db = ws.OpenDatabase(App.Path & "\CDDatabase.mdb") Set rs = db.OpenRecordset("SELECT * FROM software where " & comboSoftwareBy.Text & " = '" & txtSearchSoftware.Text & "'") lstSoftware.Clear If Not rs.EOF Then rs.MoveFirst Do While Not rs.EOF lstSoftware.AddItem rs!Name rs.MoveNext Loop End If End If End Sub
Jeg er VB mand på 2 Mdr og er kun vandt til at arbejde med Den connection der heder data. Hvor i Menuen ligger MS Dao for det er vel et punkt jeg skal tilføje på samme måde som Data og ADODC Så hvor ligger den
Hvorfor ikke bare smide det i en listbox, den kan du jo bede om at sortere for dig (hvad du så end skal bruge det til) :O) Du kan endda vælge at skjule den på din form.
- Mikker
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.