Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870

    Estrarre dati con query da seconda tabella

    Ciao, ho necessità di recuperare un valore da una seconda tabella di un database, dopo aver estratto i dati da una prima tabella e scrivo così:
    codice:
    sql2 = "SELECT * FROM tbl_1 WHERE ID=" & IDTB1 
    set RECdown = connDown.execute(sql2)
    
    sql3 = "SELECT InVendita FROM tbl_2 WHERE ID=" & RECDown("IDTB1") 
    set RECDown2 = connDown.execute(sql3)
    
    if CBool(RECDown2("InVendita")) = True then
      response.write("<input type='checkbox' name='checkbox' value='checkbox' checked>") 
      else
      response.write("<input type='checkbox' name='checkbox' value='checkbox'>")
    end if
    %>
    ma restituisce:
    error '80020009'
    Exception occurred.

    perchè? Grazie

  2. #2
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    OK ho risolto così:
    codice:
    sql3 = "SELECT InVendita FROM tbl_2 WHERE IDTB1=" & RECDown("ID") 
    set RECDown2 = connDown.execute(sql3)
    Avrei però un altro dubbio, recupero i record dalla tabella così:
    codice:
    <%
    sql = "SELECT * FROM Tbl1 ORDER BY nome asc"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, cn, 3, 3
    
    On Error Resume Next
    rs.MoveFirst  
    Do While Not rs.EOF%>
    
    <option value=<%=replace(rs("nome"), " ", "_")%>><%=rs("nome")%> </option>
    <%
    rs.MoveNext
    Loop
    rs.Close
    set rs = Nothing
    %>
    quando perà faccio scorrere la listbox mi vengono mostrati tutti i record, ad esempio l'utente 'pippo' ha più record a suo nome ed io troverò nella listbox una serie di record chiamati 'pippo'...
    sarebbe possibile raggruppare tutti quei record il cui nome è pippo?
    grazie.

  3. #3
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    OK ho risolto così (grazie alla ricerca di nuovo funzionante):
    codice:
    <%
    sql = "SELECT nome FROM Tbl1 GROUP by nome ORDER BY nome asc"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, cn, 3, 3
    
    On Error Resume Next
    rs.MoveFirst  
    Do While Not rs.EOF%>
    
    <option value=<%=replace(rs("nome"), " ", "_")%>><%=rs("nome")%> </option>
    <%
    rs.MoveNext
    Loop
    rs.Close
    set rs = Nothing 
    %>

  4. #4
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    ho cantato vittoria troppo presto... con l'ultima modifica alla query mi estrae sempre i due record ma le date (prese dall'altra tabella) sono sballate...
    codice:
    sql2 = "SELECT TB1.*, TB2.nome FROM TB1 INNER JOIN TB2 ON TB1.ID = TB2.IDTB2 WHERE TB2.nome='"& nome &"' "
    Set RECDown = ConnDown.Execute(sql2)
    
    sql3 = "SELECT * FROM tbl_2 WHERE IDTB1=" & RECDown("ID") 
    set RECDown2 = connDown.execute(sql3)
    
    <%=RECDown("ID")%>
    <%=RECDown2("data")%
    <%=RECDown2("scadenza")%>
    
    <%
    RECDown2.MoveNext
    RECDown.MoveNext
    WEnd
    end if
    RECDown2.Close
    RECDown.Close
    ConnDown.Close
    Set RECDown2 = Nothing
    Set RECDown = Nothing
    Set ConnDown = Nothing
    %>
    dove sbaglio?

  5. #5
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Forse non mi spiego bene... ci riprovo:
    ho una seconda tbl di un database da cui devo estrarre due campi:
    'data' e 'scadenza'
    in questa tabella ci sono dei records che hanno lo stesso 'nome utente', ma diverso 'ID'.
    i campi 'data' e 'scadenza' hanno diverse date per ogni record e la query di cui sopra, quando seleziono il nome utente, mi estrae sempre la data secondo l'ID selezionato.
    a me servirebbe invece estrarre tutte le date (data e scadenza) di quel determinato nome utente... che fatica...

    esempio:
    ID = 51
    IDTB1 = 9
    nome = pippo
    data = 30/06/04
    scadenza = 30/06/05

    ID = 52
    IDTB1 = 10
    nome = pippo
    data = 01/07/04
    scadenza = 01/07/05

    la query estrae 2 record:

    IDTB1 = 9
    nome = pippo
    data = 30/06/04
    scadenza = 30/06/05

    IDTB2 = 10
    nome = pippo
    data = 30/06/04
    scadenza = 30/06/05

    la parte rossa del 2° record invece dovrebbe restituire:
    data = 01/07/04
    scadenza = 01/07/05

  6. #6
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Sto provando a fare un'unica query:
    codice:
    SQLDown = "SELECT catalogo_linee.*, catalogo_articoli.Data, catalogo_articoli.Scadenza, catalogo_articoli.Cognome FROM catalogo_linee INNER JOIN catalogo_articoli ON catalogo_linee.ID = catalogo_articoli.IDLinea WHERE catalogo_articoli.cognome='"& strCognome &"' order by catalogo_linee.ID asc"
    ma non va...

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.