|
 |
asp_databases thread: looping just one record
Message #1 by "Frode Strømme" <fstroemm@o...> on Sat, 26 May 2001 14:55:33
|
|
If I want to show an actor twice, how would I loop through that record to
check for more.
"Skuespiller" is what I want displayed more than once, IF there's any more
matches. I guess I can't use EOF to check for this like I have tried.
gave me:
Error Type:
ADODB.Field (0x80020009)
Either BOF or EOF is True, or the current record has been deleted.
Requested operation requires a current record.
/bok/khitdisplay.asp
Thanks.
- Frode.
My code:
<%@Language=VBScript%>
<%Response.Buffer=True%>
<%
Dim strSQL, RS, MyConn
Set MyConn=Server.CreateObject("ADODB.Connection")
MyConn.Open "Driver={Microsoft Access Driver (*.mdb)};
DBQ=C:\datastores\khitdvd.mdb"
strSQL = "SELECT [khitfilm].[FilmID], [khitfilm].[Tittel], [khitbilde].
[Bilde], [khitfakta].[Region], [khitfakta].[ProdAar], [khitfakta].[Regi],
[khitfakta].[Studio], [Khitkategori].[Kategori], [khitomtale].[Omtale],
[khitpris].[Pris], [khitskue].[Skuespiller], [khitteknisk].[LydFormat],
[khitteknisk].[VideoFormat], [khitteknisk].[Undertekst], [khitteknisk].
[Lengde], [khitteknisk].[Features] " & _
"FROM ((((((khitfilm INNER JOIN khitfakta ON [khitfilm].
[FilmID] =[khitfakta].[FilmID]) INNER JOIN Khitkategori ON [khitfilm].
[FilmID] =[Khitkategori].[FilmID]) INNER JOIN khitomtale ON [khitfilm].
[FilmID] =[khitomtale].[FilmID]) INNER JOIN khitpris ON [khitfilm].
[FilmID] =[khitpris].[FilmID]) INNER JOIN khitteknisk ON [khitfilm].
[FilmID] =[khitteknisk].[FilmID]) INNER JOIN (khitskue INNER JOIN khitfs
ON [khitskue].[SkueID] =[khitfs].[SkueID]) ON [khitfilm].[FilmID]
[khitfs].[FilmID]) INNER JOIN khitbilde ON [khitfilm].[FilmID]
[khitbilde].[FilmID] " & _
"WHERE khitfilm.FilmID = " & _
Request.QueryString("dispID")
Set RS = MyConn.Execute(strSQL)
Response.Write "<table align=""center"" valign=""top""
border=""1"">"
Response.Write "<tr><td>Film Tittel:"
Response.Write RS("Tittel")
Response.Write "</td></tr>"
Response.Write "<tr><td>"
While Not RS.EOF
Response.Write RS("Skuespiller")
RS.MoveNext
If Not RS.EOF Then
Response.Write RS("Skuespiller")
RS.MoveNext
End if
Wend
Response.Write "<tr><td>test:"
Response.Write RS("Pris")
Response.Write "</td></tr>"
Response.Write "</td></tr></table>"
%>
Message #2 by "Frode Strømme" <fstroemm@o...> on Mon, 28 May 2001 19:24:07
|
|
I solved this problem by running a second SQL query
and do
While Not skuRS.EOF
Response.Write skuRS("Skuespiller")
skuRS.MoveNext
If Not skuRS.EOF Then
Response.Write ", "
End If
WEND
while I use RS.EOF for the others.
Tell me if this is method shouldn't be used.
- Frode.
> If I want to show an actor twice, how would I loop through that record
to
> check for more.
>
> "Skuespiller" is what I want displayed more than once, IF there's any
more
> matches. I guess I can't use EOF to check for this like I have tried.
>
> gave me:
>
> Error Type:
> ADODB.Field (0x80020009)
> Either BOF or EOF is True, or the current record has been deleted.
> Requested operation requires a current record.
> /bok/khitdisplay.asp
>
>
> Thanks.
>
> - Frode.
>
> My code:
> <%@Language=VBScript%>
> <%Response.Buffer=True%>
> <%
>
> Dim strSQL, RS, MyConn
>
> Set MyConn=Server.CreateObject("ADODB.Connection")
>
> MyConn.Open "Driver={Microsoft Access Driver (*.mdb)};
> DBQ=C:\datastores\khitdvd.mdb"
>
> strSQL = "SELECT [khitfilm].[FilmID], [khitfilm].[Tittel],
[khitbilde].
> [Bilde], [khitfakta].[Region], [khitfakta].[ProdAar], [khitfakta].
[Regi],
> [khitfakta].[Studio], [Khitkategori].[Kategori], [khitomtale].[Omtale],
> [khitpris].[Pris], [khitskue].[Skuespiller], [khitteknisk].[LydFormat],
> [khitteknisk].[VideoFormat], [khitteknisk].[Undertekst], [khitteknisk].
> [Lengde], [khitteknisk].[Features] " & _
> "FROM ((((((khitfilm INNER JOIN khitfakta ON [khitfilm].
> [FilmID] =[khitfakta].[FilmID]) INNER JOIN Khitkategori ON [khitfilm].
> [FilmID] =[Khitkategori].[FilmID]) INNER JOIN khitomtale ON [khitfilm].
> [FilmID] =[khitomtale].[FilmID]) INNER JOIN khitpris ON [khitfilm].
> [FilmID] =[khitpris].[FilmID]) INNER JOIN khitteknisk ON [khitfilm].
> [FilmID] =[khitteknisk].[FilmID]) INNER JOIN (khitskue INNER JOIN khitfs
> ON [khitskue].[SkueID] =[khitfs].[SkueID]) ON [khitfilm].[FilmID]
> [khitfs].[FilmID]) INNER JOIN khitbilde ON [khitfilm].[FilmID]
> [khitbilde].[FilmID] " & _
> "WHERE khitfilm.FilmID = " & _
> Request.QueryString("dispID")
>
>
> Set RS = MyConn.Execute(strSQL)
>
> Response.Write "<table align=""center"" valign=""top""
> border=""1"">"
> Response.Write "<tr><td>Film Tittel:"
> Response.Write RS("Tittel")
> Response.Write "</td></tr>"
> Response.Write "<tr><td>"
>
> While Not RS.EOF
>
> Response.Write RS("Skuespiller")
> RS.MoveNext
>
> If Not RS.EOF Then
>
> Response.Write RS("Skuespiller")
> RS.MoveNext
> End if
> Wend
>
> Response.Write "<tr><td>test:"
> Response.Write RS("Pris")
> Response.Write "</td></tr>"
>
>
>
> Response.Write "</td></tr></table>"
>
>
|
|
 |