Avatar billede lennart Nybegynder
28. januar 2001 - 00:57 Der er 13 kommentarer og
1 løsning

database problem

jeg er ved at lave et odds program og er stødt ind i problemer som jeg håber at der er nogle der kan hjælpe med.

ind til nu har jeg lavet så man kan vælge et hold fra en comboboks og så kommer der alle mulige oplysninger frem. det virker fint problemet er at jeg vil have programmet til at vise hvem holdet har spillet mod og det kan jeg ikke rigtig få til at virke

her er source koden

Dim dbname As String
Dim db As Database
Dim rs As Recordset
Dim rs2 As Recordset

    \' Open the database.
    dbname = App.Path
    If Right$(dbname, 1) <> \"\\\" Then dbname = dbname & \"\\\"
    dbname = dbname & \"Team.mdb\"
   
    Set db = OpenDatabase(dbname)
  Set rs = db.OpenRecordset(\"SELECT TeamID, Teamname FROM Team ORDER BY Teamname\", dbOpenSnapshot)
   
  Set rs2 = db.OpenRecordset(\"SELECT TeamAway.teamname FROM qryMatch\", dbOpenSnapshot)
   
    \' Load the ComboBox.
    rs.MoveFirst
    Do While Not rs.EOF
        cboTeamhome.AddItem rs!teamname
        cboTeamhome.ItemData(cboTeamhome.NewIndex) = rs!teamID
        rs.MoveNext
    Loop
   
    rs.Close
     
    \' Load the ComboBox.
    rs2.MoveFirst
    Do While Not rs2.EOF
       
        cboTeamaway.AddItem rs2!TeamAway.teamname
        cboTeamaway.ItemData(cboTeamaway.NewIndex) = rs2!teamAwayID
       
      rs2.MoveNext
    Loop
 
    rs2.Close
    db.Close
   
    \' Connect the Data control to the database.
    \'datTeamname.DatabaseName = dbname
    datTeamoplysninger.DatabaseName = dbname
    \'datmatches.DatabaseName = dbname
    \' Select the first choice.
    cboTeamhome.ListIndex = 0
    cboTeamaway.ListIndex = 0

den kommer med følgende fejlmeddelse method or data member not found
hvad gør jeg galt

håber det er en der kan hjælpe
Avatar billede stigc Nybegynder
28. januar 2001 - 01:07 #1
fejl i hvilke linienumme?
Avatar billede lkp Nybegynder
28. januar 2001 - 01:31 #2
Hej Lennart

Som Stigc skriver, vi mangler et linje nummer.

Har du haft noget af det til at køre med databasefunktionerne?

MVH

LKP
Avatar billede lkp Nybegynder
28. januar 2001 - 01:37 #3
Men jeg kan forestille mig, at VB brokker sog over linjen:

cboTeamaway.AddItem rs2!TeamAway.teamname

Det du prøver at referere til, er højst sandsynligt feltet du har fra din query \"TeamAway.teamname\", men VB tror at du prøver at tilgå en metode i objektet cboTeamaway.AddItem rs2!TeamAway (der ikke eksisterer).

Prøv i stedet med linjen cboTeamaway.AddItem rs2(\"TeamAway.teamname\")

Og hvis det ikke duer, så lav navnet TeamAway.teamname om til noget uden . (punktum)

Gøres i sql ved at bruge ordet AS eks. \"SELECT TeamAway.teamname AS name [...]\".

Og i Access query editor med et : (kolon) skrives foran feltnavnet eks.: name:TeamAway.teamname.

Håber at det løser dit problem

Med venlig hilsen

LKP
Avatar billede lkp Nybegynder
28. januar 2001 - 01:38 #4
Skulle have været et svar :-)
Avatar billede lennart Nybegynder
28. januar 2001 - 02:43 #5
hej

ja jeg har haft den første del til at kører perfekt men det var gal med
cboTeamaway.AddItem rs2!TeamAway.teamname
som du selv sagde lkp

jeg desvære ikke få det til at virke jeg har skrevet følgende

Set rs2 = db.OpenRecordset(\"SELECT TeamAway.teamname AS [TeamAwayName], TeamAway.TeamID AS [TeamAwayID] FROM qryMatch\", dbOpenSnapshot)

i databasen

SELECT League.LeagueName, TeamHome.Teamname, TeamAwayName:TeamAway.Teamname, Match.MatchDay, Match.TeamHomeScore, Match.TeamAwayScore
FROM ((Match INNER JOIN Team AS TeamHome ON Match.TeamHomeLink = TeamHome.TeamID) INNER JOIN Team AS TeamAway ON Match.TeamAwayLink = TeamAway.TeamID) INNER JOIN League ON Match.LeagueLink = League.LeagueID;

kan ikke få det til at virke



Avatar billede lkp Nybegynder
28. januar 2001 - 14:18 #6
Hej Lennart

Du skal kun gøre det det ene sted, dvs. enten omdøbe den i din query, eller omdøbe det i den SQL sætning der henter posterne.

Hvis du kun laver ændringen i den første sætning, virker det så heller ikke?

Med venlig hilsen

LKP
Avatar billede lennart Nybegynder
28. januar 2001 - 16:19 #7
hvis jeg kun laver den i sql i første sætning så kommer den med en fejl der er for få parameter (1)

i databasen kommer den med følgende fejl syntaks fejl 3075

Avatar billede lkp Nybegynder
29. januar 2001 - 17:56 #8
Hej Lennart, prøv at ændre nedenstående linje:

SELECT TeamAway.teamname AS [TeamAwayName], TeamAway.TeamID AS [TeamAwayID] ...

til

SELECT [TeamAway].teamname AS TeamAwayName, [TeamAway].TeamID AS TeamAwayID ...

Og lad din query i databasen være som den var først.

Med venlig hilsen

LKP
Avatar billede lennart Nybegynder
30. januar 2001 - 13:07 #9
fedt der virker næsten
jeg den kommer bare stadig med den fejl med at der mangler en parametre

hvad skal jeg gøre
SELECT [TeamAway].TeamID AS TeamAwayID, [TeamAway].teamname AS TeamAwayName FROM qryMatch

hvis du vil kan jeg godt uploader mit projekt hvis du gider kigger på det !
Avatar billede lkp Nybegynder
01. februar 2001 - 11:22 #10
Hej Lennart

Jeg vil meget gerne kigge på dit projekt. Upload det et sted, og smid adressen herinde.

Med venlig hilsen

LKP
Avatar billede lennart Nybegynder
02. februar 2001 - 01:19 #11
hej lkp
det ligger her http://www.lennarthermansen.dk/predictmaster.zip

hvis du har msn messenger kan du finde mig som lennarthermansen@hotmail.com

Med venlig hilsen
lennart hermansen
Avatar billede lennart Nybegynder
03. februar 2001 - 13:29 #12
lkp har du en email så vi lige kan diskutere videre...
Avatar billede lkp Nybegynder
04. februar 2001 - 11:41 #13
Hej Lennart

Min emailadresse er:
lk@monitor.dk

Med venlig hilsen

LKP
Avatar billede lennart Nybegynder
11. februar 2001 - 16:17 #14
tusind tak for hjælpen
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester