Inserire più records contemporaneamente in Oracle

Sto cercando il modo migliore e più performante per eseguire una insert multipla su una tabella di un database Oracle, in altre parole vorrei lanciare una query insert in grado di inserire più righe (rows) all'interno di una tabella con una sola istruzione.

In Corso 3
Oracle 14-09-2019 2 Risposte 4171 Visite +1

Risposte ( 2 approvate )

  1. Danilo Calasanna
    +1
    14-09-2019 11:52:20
    Rispondi

    In un database Oracle per inserire records multipli (più righe) in una tabella con una sola istruzione sql insert, puoi usare la seguente sintassi:

    INSERT ALL
       INTO my_table (col1, col2, col3) VALUES ('val1_1', 'val1_2', 'val1_3')
       INTO my_table (col1, col2, col3) VALUES ('val2_1', 'val2_2', 'val2_3')
       INTO my_table (col1, col2, col3) VALUES ('val3_1', 'val3_2', 'val3_3')
       .
       .
       .
    SELECT 1 FROM DUAL;

     

  2. Silvio Perfinelli
    0
    14-09-2019 11:55:42
    Rispondi

    Per inserire records multipli in Oracle, oltre alla sintassi suggeritati da Danilo, se tu hai i valori da inserire in un altra tabella, puoi allora fare una insert associata ad una select che preleva i valori dall'altra tabella, in questo modo:

    INSERT INTO a_table (column_a, column_b) SELECT column_a, column_b FROM b_table;

Rispondi

Per poter rispondere a questa domanda, devi essere registrato e loggato sul sito, dopodichè compila il box sottostante cercando di essere il più chiaro ed esauriente possibile, la tua risposta potrebbe essere la soluzione che l'utente cerca ed essere contrassegnata come migliore, consentendoti così di ottenere punti ed autorevolezza.

Sebastiano Cisato

Sebastiano Cisato

Autore di questa domanda

 Domanda Precedente

 Elenco Domande 

Domanda Successiva