Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    seleziona i primi X valori

    Ciao,
    ho questo problema da risolvere: da una tabella contenente una ventina di valori dovrei selezionarne un valore che varia al variare di una variabile. Un giro di parole che è meglio spiegare con un esempio.

    Mettiamo che la variabile sia contenuta in un campo di un'altra tabella: rs (numero")

    Vorrei che la mia query funzionasse così:

    query = "select top rs (numero") * from tab"

    Si può fare?

    Grazie in anticipo

  2. #2
    Certo!

    codice:
    query = "select top " & rs("numero") & " * from tab"
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    Il mio problema è che quel rs(numero) sta in una tabella diversa da tab.

    Non si può così, vero?

  4. #4
    E che problema c'è?
    E' un valore che hai dentro il tuo oggetto recordset (rs) di una query precedente...
    In quella maniera lo dai in input alla query di sopra.

    Prova no?
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  5. #5
    L'errore è sempre lo stesso:

    Tipo di errore:
    ADODB.Recordset (0x800A0CC1)
    Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto.
    /prova/prova.asp, line 303

  6. #6
    a che riga te lo da l'errore? ma rs("numero") come lo ottieni?

  7. #7
    Questo è il codice completo

    codice:
    <% 	
    	set rs = server.createobject("ADODB.Recordset")
    	database = "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.Mappath("mdb-database/camera.mdb")
    	query = "select top " & rs("numero") & " * from tab1 where cod="&request.querystring("pol")&" order by id asc"
    	rs.open query,database
    	response.write "<div align='right'>[img]images/" &rs("cod")& "m.gif[/img]</div>
    "
    	do while (not rs.eof)
    	response.write("<font style=''>" & UCfirst(rs("nome")) & "</font>" & "
    ")
    	rs.movenext
    	loop
    	rs.close
    	set rs = nothing
    %>
    L'errore lo dà nella riga dove c'è la query. rs(numero) sta in una tabella diversa da tab1 e lo ottengo semplicemente come input (nel senso che lo inserisco manualmente via access).

    In un altro caso, invece, ottengo rs(numero2) così:

    codice:
    query = "SELECT Sum("&request.querystring("go")&".[numero]) AS [numero2] WHERE codice='1'...
    In pratica numero2 è la somma di più record numero.
    In alcuni casi mi serve che vengano visualizzati i primi "numero", in un altro caso i primi "numero2"

    Dove sbaglio?

  8. #8
    codice:
    rs("numero")
    lo devi leggere con una query preventiva a quella che hai postato sopra qui:

    codice:
    <% 	
    	set rs = server.createobject("ADODB.Recordset")
    	database = "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.Mappath("mdb-database/camera.mdb")
    	query = "select top " & rs("numero") & " * from tab1 where cod="&request.querystring("pol")&" order by id asc" 
    	rs.open query,database
    	response.write "<div align='right'>[img]images/" &rs("cod")& "m.gif[/img]</div>
    "
    	do while (not rs.eof)
    	response.write("<font style=''>" & UCfirst(rs("nome")) & "</font>" & "
    ")
    	rs.movenext
    	loop
    	rs.close
    	set rs = nothing
    %>
    altrimenti non arriva e la query di sopra non funziona.

    Attualmente, come recuperi rs("numero")???
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.