Avatar billede thb Nybegynder
20. april 2002 - 18:18 Der er 13 kommentarer og
1 løsning

Inner Join

Hej alle

Jeg har lavet en select query med en Inner Join:

SQL = "Select * from artikler INNER JOIN medlem on artikler.forfatter = medlem.id where artikler.id=" & id
Set s = conn.Execute(SQL)

Nå jeg så skal kalde feltet navn i tabellen artikler skriver jeg sådan:

s("artikler.navn")

fordi at der også er et felt der hedder navn i tabellen medlem, men så kommer der denne fejl:

ADODB.Recordset (0x800A0CC1)
Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal.

Hvad er der galt ???

Thomas
Avatar billede thb Nybegynder
20. april 2002 - 18:19 #1
jeg har tjekket for stave fejl... :)
Avatar billede jmarkling Nybegynder
20. april 2002 - 18:20 #2
Prøv bare med s("navn")
Avatar billede thb Nybegynder
20. april 2002 - 18:22 #3
så udskriver den tabellen medlems felt navn
Avatar billede stigc Nybegynder
20. april 2002 - 18:25 #4
Select artikel.navn as artikel_navn, * from artikler INNER JOIN medlem on artikler.forfatter = medlem.id where artikler.id=" & id
Avatar billede whatever Nybegynder
20. april 2002 - 18:26 #5
SQL = "Select medlems.*, artikler.navn AS anavn from artikler INNER JOIN medlem on artikler.forfatter = medlem.id where artikler.id=" & id
Set s = conn.Execute(SQL)

s("anavn")
Avatar billede jmarkling Nybegynder
20. april 2002 - 18:31 #6
ok, du kan gøre det på whatevers måde, den er fino, men hvis du skal joine to tabeller og navn-attributten er forskellige, så burde du omdøbe den ene kolonne, navn i en af tabellerne... så vil det første virke...
Avatar billede thb Nybegynder
20. april 2002 - 18:32 #7
whatever & stiqc, laver i ikke lige et svar begge to, for begge jeres metoder virker... Tak
Avatar billede whatever Nybegynder
20. april 2002 - 18:36 #8
Jo da.
Avatar billede thb Nybegynder
20. april 2002 - 18:40 #9
nu kommer problemet igen, med whatever & stiqc ´s måder. Har lige opdaget at den sætter medlem.id ind hvor det skal være artikler.id...

Det kan da ikke være rigtigt at jeg skal sidde og give alle felter forskellige navne med AS... ??? eller hva..

Thomas
Avatar billede whatever Nybegynder
20. april 2002 - 18:43 #10
Der er nok ikke andet at gøre ;-(
Avatar billede thb Nybegynder
20. april 2002 - 18:45 #11
jeg fatter bare ikke hvorfor man ikke kan skrive response.write s("medlem.id") eller lign.
Avatar billede whatever Nybegynder
20. april 2002 - 18:46 #12
Det kan man bare ikke...
Avatar billede stigc Nybegynder
20. april 2002 - 19:05 #13
Det er en af grundene til altid at give gode felt navne:

artikelid, brugerid mm.
Avatar billede jmarkling Nybegynder
20. april 2002 - 19:48 #14
så gør som jeg sagde lave attribut-navnene om i db'en hvis det ikke bevirker du skal ændre meget kode....
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