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

    INSERT multiplo - sintassi

    Ciao a tutti,

    voglio fare 3 insert una di seguito all'altra e procedo così:

    -includo il mio file di connessione

    codice:
    <% 
    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("DATABASE_DEMO.mdb")
    strConn=strConn & ";pwd=" & strCode
    Conn.Open strConn 
    %>
    - faccio le mie 3 INSERT:

    codice:
    SQL_Tabella1 = "INSERT INTO Tabella1 (datoX1, datoX2, datoX3)"
    SQL_Tabella1 = SQL_Tabella1 & "VALUES('"& datoX1 &"', '"& datoX2 &"', '"& datoX3 &"')"
    Conn.execute(SQL_Tabella1)
    
    SQL_Tabella2 = "INSERT INTO Tabella2 (datoY1, datoY2, datoY3)"
    SQL_Tabella2 = SQL_Tabella2 & "VALUES('"& datoY1 &"', '"& datoY2 &"', '"& datoY3 &"')"
    Conn.execute(SQL_Tabella2)
    
    SQL_Tabella3 = "INSERT INTO Tabella3 (datoZ1, datoZ2, datoZ3)"
    SQL_Tabella3 = SQL_Tabella3 & "VALUES('"& datoZ1 &"', '"& datoZ2 &"', '"& datoZ3 &"')"
    Conn.execute(SQL_Tabella3)
    Conn.close
    Domanda: è giusto procedere in questa maniera... facendo il Conn.execute dopo ogni INSERT e chiudendo l'oggetto Conn solo alla fine della terza ed ultima INSERT?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    La regola è appunto chiudere le connessioni appena possibile. Il metodo che usi quindi va benissimo.

  3. #3
    Ciao longline grazie.

    Ho un'altra domanda a proposito degli INSERT.

    Perché mi da l'errore:

    codice:
    Costante String senza terminazione
    ogni volta che in una INSERT vado a capo? (vado a capo perché non voglio scrivere tutti i campi su una sola riga perché saranno un centinaio)

    Se li tengo su una sola riga dovrebbe funzionare... no?

  4. #4
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Le andate a capo le gestirei in questo modo:
    codice:
    SQL = "INSERT INTO NomeTabella "
    SQL = SQL & "("
    SQL = SQL & "NomeCampo1, NomeCampo2, NomeCampo3, "
    SQL = SQL & "NomeCampo4, NomeCampo5, NomeCampo6 "
    SQL = SQL & ") "
    SQL = SQL & "VALUES "
    SQL = SQL & "("
    SQL = SQL & "Valore1, Valore2, Valore3, "
    SQL = SQL & "Valore4, Valore5, Valore6 "
    SQL = SQL & ") "

  5. #5
    Perfetto grazie 1000!


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.