Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di Willy99
    Registrato dal
    Jan 2000
    Messaggi
    246

    Aggiungere record in tabelle uno a molti

    Ciao a tutti,

    nmi serve un aiuto su come aggiungere dei record nuovi in un Database Access che ha due tabelle collegate da una relazione uno a molti:

    tbl01 (lato uno)
    IDtbl01
    Articolo
    Descrizione


    tbl02 (lato molti)
    IDtbl02
    IDtbl01
    Taglia

    cioe un Articolo ha una sola Descrizione ma puo avere infinite Taglie.

    Come devo ragionare logicamente per aggiungere un record in tabella tbl02, e per record intendo una taglia in piu (collegata allo stesso articolo di tbl01) e come faccio a legare con asp le due tabelle?
    Etiam capillus unus habet umbram suam

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non le leghi con asp, basta inserire l'identificativo corretto.
    Con la prima query inserisci un record nella tabella "tbl01".
    Recuperi il suo "IDtbl01" e lo inserisci con tante query quante sono le taglie nella tabella "tbl02".

    Roby

  3. #3
    Utente di HTML.it L'avatar di Willy99
    Registrato dal
    Jan 2000
    Messaggi
    246
    VVoVe: ..ehm..potrei avere un piccolo esempietto...grazie
    Etiam capillus unus habet umbram suam

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Cioè?
    Una INSERT
    Una SELECT (per recuperare l'id appena inserito)
    Tante INSERT (in base alle taglie che tu sai)

    Che ti devo dire di più?

    Roby

  5. #5
    Utente di HTML.it L'avatar di Willy99
    Registrato dal
    Jan 2000
    Messaggi
    246
    va bene provo..ma mi sa che tornero'...
    Etiam capillus unus habet umbram suam

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559


    Fai un pezzo alla volta...

    Roby

  7. #7
    Utente di HTML.it L'avatar di Willy99
    Registrato dal
    Jan 2000
    Messaggi
    246
    ..ehm..ho creato un db sempre con 2 tabelle che lavorano con lo stesso concetto di quelle esposte poche righe piu su (tbl01 si chiama Nuby e tbl02 si chiama NubyMov, nella prima c'è un codice articolo nella seconda simulo dei movimenti di magazzino con 2 campi uno per la data e uno per la quantita..mi tornav apiu facile che ragionare con le taglie...)
    Mi funziona tutto bene, cioè quasi tutto, quando faccio L'INSERT per inserire i dati nella tabella NubyMov (tbl02) mi da questo errore:

    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
    [Microsoft][Driver ODBC Microsoft Access] Tipi di dati non corrispondenti nell'espressione criterio.
    /mov-process.asp, line 8

    dove linea 8 di mov-process.asp è quella in grassetto:


    <%
    nome=Request.Form("nome")
    cognome=Request.Form("Data")
    residenza=Request.Form("Scarico")
    SQL = "INSERT INTO NubyMov (IDnuby,Data,Scarico)"
    SQL = SQL&"VALUES('"&nome&"','"&Data&"','"&Scarico&"')"
    Conn.Execute(SQL)
    Response.Redirect "index.asp"
    %>


    IDnuby è il contatore (ID) della tabella tbl01

    che sbaglio? :master:
    Etiam capillus unus habet umbram suam

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se è un contatore nella INSERT non ci va... Controlla anche il tipo di campo data che hai inserito... E' di tipo data/ora o di tipo testo?

    Dai una letta alle guida ASP che trovi qui http://freeasp.html.it non vorrei l'impegno fosse troppo gravoso al momento.

    Roby

  9. #9
    Utente di HTML.it L'avatar di Willy99
    Registrato dal
    Jan 2000
    Messaggi
    246
    non ci va? azz...

    non c'è proprio modo?

    Il parametro che passa da tbl01 a tbl02 (e che dovrebbe legarmi le due tabelle) è effettivamente il contenuto del campo ID con tipo dati "Contatore", e sto tentando di mettere il suo valore (recuperato con questo codice):

    Dim cod
    cod=Request.Querystring("cod")

    nella tbl02 in un campo di tipo numerico con la query:

    SQL = "INSERT INTO NubyMov (IDnuby,Data,Scarico)"
    SQL = SQL&"VALUES('"&nome&"','"&Data&"','"&Scarico&"')"
    Conn.Execute(SQL)

    Ma non c'è proprio nessun artifico per poterlo inserire ?
    Etiam capillus unus habet umbram suam

  10. #10
    Utente di HTML.it L'avatar di Willy99
    Registrato dal
    Jan 2000
    Messaggi
    246


    ...ce l'ho fatta (se non ho preso un abbaglio) sono riuscito ad importare nella tbl02 del lato molti anche il campo della tbl01 con tipo campo Contatore.

    Etiam capillus unus habet umbram suam

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.