Avatar billede speder Nybegynder
10. maj 2001 - 09:53 Der er 7 kommentarer og
2 løsninger

lave en select på en tidligere select

Hej

Hvis jeg nu trækker et recordset ud fra en database i ASP, er det så muligt, at lave et udtræk på det recordset også fra ASP. Lidt ligesom hvis du laver en forespørgsel i Access og så bagefter laver en forespørgsel på denne forespørgsel? Hvis ja, hvordan?

M.v.h.

Søren
Avatar billede nute Nybegynder
10. maj 2001 - 10:01 #1
ehhh...what ?
Avatar billede sone Nybegynder
10. maj 2001 - 10:04 #2
Hvis jeg forstår spm. rigtigt - nej.
Man kan ikke lave en forespørgsel til/i et recordset. Men du kan da bare udvidde dine SQL-kriterier, og så lave endnu en forespørgsel til databasen.
Avatar billede nute Nybegynder
10. maj 2001 - 10:08 #3
hmmm....man kan gjøre følgende:

<%
SQL = \"SELECT id FROM tabell\"
Set RS = Conn.execute(SQL)
while not RS.EOF
  SQL2 = \"SELECT id FROM tabell2 WHERE blabla = \" & RS(\"id\")
  Set RS2 = Conn.Execute( SQL2 )
  while not RS2.EOF
    response.write RS2(\"id\")
    RS2.MoveNext
  wend
  RS.MoveNext
wend
%>

/nute
Avatar billede sone Nybegynder
10. maj 2001 - 10:11 #4
nute: Det er en meget tung løsning at lave en forespørgsel pr. entry i tabellen.
Avatar billede nute Nybegynder
10. maj 2001 - 10:14 #5
jupp....men hvis man ikke lager sine tabeller fornuftige (hvis man ikke normaliserer sine tabeller), så er dette\"eneste\" mulighet uten at man skal skrive noen SQL som man, etter 5 minutter, ikke aner hvordan fungerer :)
Avatar billede ricardo Nybegynder
10. maj 2001 - 20:04 #6
Recordsets inde i recordsets er en MEGET dårlig ide! De er pokkers langsomme.
Avatar billede nute Nybegynder
10. maj 2001 - 20:27 #7
ricardo >> det har vi da konstatert allerede ?!?  ;)
Avatar billede speder Nybegynder
10. maj 2001 - 20:36 #8
Det jeg egentlig ville var noget i denne retning:

<%
sqlstm = \"SELECT * FROM whatever\"
Set recordset = Conn.execute(sqlstm)
sqlstm2 = \"SELECT * FROM recordset\"
Set recordset2 = Conn.Execute(sqlstm2)
%>

Hvad gør man med points, når man ikke får svar på sit spg., fordi der ikke findes en løsning?
Avatar billede nute Nybegynder
10. maj 2001 - 22:59 #9
hmmmm.....det høres ut som en relativ merkelig ting, det du spør om. Så skal du heller legge en SELECT inn i en annen SELECT...fx:

SELECT * FROM blabla WHERE noe = (SELECT ... FROM bla WHERE xx = n) ...

Som regel så tyder det på dårlig databasedesign, hvis man er nødt til å gjøre det på den måten du egentlig vil. Databasedesign er desverre et litt for stort emne til å diskutere i et forum som dette, men det er noen relativt enkle retningslinjer man kan lære seg for å bygge nogenlunde gode databaser uten  å ha så mye kjennskap til det.

Med hensyn til poengene, så kan du egentlig gjøre hva du vil med dem. Hvis du føler at det er én person som har gitt deg det svaret du trenger, så gir du ham poengene...er det flere som har gitt deg et svar du kan bruke, så deler du poengene, og hvis ingen har gitt deg noe svar du kan bruke til noe, så trenger du ikke gi points til noen, *men* da skal du heller prøve å forklare mer spesifikt hva du trenger å vite sånn at noen kan gi deg råd til hva du bør gjøre for å løse ditt problem.

/nute
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