Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Relazione uno-a-molti

  1. #1

    Relazione uno-a-molti

    Hola a todos,

    Ho un dbase composto da due tabelle:

    1 - Articoli (ID, IDLinea, Denominazione)
    2 - Casa (ID, Denominazione)

    Le due tabelle sono relazionate secondo:
    ID Casa ---> IDLinea Articoli
    relazione uno-a-molti

    Selezionando 'denominazione' da tabella Casa, dovrei estrarre con asp tutte le 'denominazioni' di tabella 'Articoli'... non so da dove cominciare...

    Grazie a tutti

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ma i due campi "denominazione" non conterranno le stesse informazioni, vero?

    Roby

  3. #3
    Originariamente inviato da Roby_72
    Ma i due campi "denominazione" non conterranno le stesse informazioni, vero?

    Roby
    Grazie Roby: nella tabella 'Articoli' il campo denominazione contiene il nome dell'articolo; nella tabella 'Casa' il campo denominazione contiene il nome della Casa.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    select articoli.denominazione from articoli, casa where casa.id = articoli.idlinea and casa.denominazione = 'tuadenominazione'
    Roby

  5. #5
    Grazie Roby, scrivo così:
    codice:
    SQLDown = "SELECT catalogo_articoli.denominazione from catalogo_articoli, catalogo_linee WHERE catalogo_linee.ID = catalogo_articoli.IDlinea and catalogo_linee.denominazione = ' "&request("Linea")&" ' "
    ma non estrae nulla...
    il nome della Linea da estrarre lo ricavo da un form che invio a estrai.asp :master:

  6. #6
    scrivo così:
    codice:
    SQLDown = "SELECT Catalogo_Articoli.Denominazione FROM Catalogo_Articoli, Catalogo_Linee WHERE Catalogo_Linee.ID = Catalogo_Articoli.IDlinea AND Catalogo_Linee.Denominazione = '"&request("Linea")&"' "
    response.write SQLDown
    con response.write:
    codice:
    SELECT Catalogo_Articoli.Denominazione FROM Catalogo_Articoli, Catalogo_Linee WHERE Catalogo_Linee.ID = Catalogo_Articoli.IDlinea AND Catalogo_Linee.Denominazione = 'AKAL'
    ma quando cerco di richiamare i campi dalla tbl del dbase:
    codice:
    <%=RECDown("ID")%>
    restituisce:
    codice:
    ADODB.Recordset error '800a0cc1' 
    Item cannot be found in the collection corresponding to the requested name or ordinal. 
    /estrai.asp, line 91
    perchè ???

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Come perché??!!... Hai chiesto il campo denominazione non il campo ID

    Allora scrivi

    SELECT Catalogo_Articoli.* .....

    Roby

  8. #8
    :gren: Si scusami... ho sistemato tutto... ho solo un problema alcuni dei campi della tabella casa sono registrati con un virgola... quando faccio l'estrazione pur essendoci i record non vengono estratti..
    pensavo ad un replace...

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Sono campi di tipo testo o numerici? Ma è il nome del campo o il suo contenuto??

    Roby

  10. #10
    Grazie Roby ho risolto così:
    nel form:
    codice:
    <select size="1" name="Linea">
                   <option>Selezionare_Casa_Editrice</option>
                    <%
                                                   
    sql = "SELECT * FROM catalogo_linee ORDER BY denominazione 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("denominazione"), " ", "_")%>><%=rs("denominazione")%> </option>
                          
    <%
    rs.MoveNext
    Loop
    rs.Close
    set rs = Nothing
    %>
     </option>
    nella pagina estrazione:
    codice:
    Dim strLinea1 
    strLinea1 = Replace(Request("Linea"), "_", " ") 
    
    SQLDown = "SELECT Catalogo_Articoli.* FROM Catalogo_Articoli, Catalogo_Linee WHERE Catalogo_Linee.ID = Catalogo_Articoli.IDlinea AND Catalogo_Linee.Denominazione = '"& strLinea1 &"' "
    Set RECDown=ConnDown.Execute(SQLDown)
    funziona, che ne pensi?

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.