It is currently 7 June 2025, 19:50 Advanced search

Implementazione funzione MERGE INTO

Questo forum è nato con lo scopo di raccogliere le proposte di modifica di Instant Developer e discuterne insieme.

Implementazione funzione MERGE INTO

Postby teopost » 25 July 2016, 8:55

Quando si fanno caricamenti massivi sul database, ed è necessario implementare sincronizzazioni incrementali, può essere estremamente vantaggioso utilizzare uno statement (esistente sia in SQL Server che in ORACLE che in PostgreSQL) chiamato MERGE.

L'istruzione MERGE (nata in origine proprio per gestire caricamenti incrementali su database Oracle e solo in seguito implementata anche in SQL Server) ha un livello di prestazioni spaventoso rispetto all'implementazione classica che è possibile fare oggi con INDE (ovvero aprire un cursore, verificare l'esistenza della chiave nella destinazione e in base a questa inserire o modificare il record).

Siccome su INDE Foundation non vengono fatte nuove implementazioni a livello di db ormai da molti anni, non sarebbe male aggiungere alle attuali funzioni di base (insert, update e delete) quella di MERGE.

Inoltre sarebbe uno statement "traducibile" anche per database che non supportano tale funzionalità.

Oggi a noi è capitato, per il tipo di attività che facciamo, di dover usare lo statement di MERGE e abbiamo dovuto gestire la cosa extra INDE.

Un vero peccato.

Riferimenti utili:
- MSSQL: https://technet.microsoft.com/it-it/library/bb522522(v=sql.105).aspx
- Oracle: https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_9016.htm
- PostgreSQL: https://wiki.postgresql.org/wiki/UPSERT
- MySQL: http://dev.mysql.com/doc/refman/5.5/en/insert-on-duplicate.html
Last edited by teopost on 25 July 2016, 13:08, edited 1 time in total.
Oracle Database Administrator
User avatar
teopost
 
Posts: 211
Joined: 26 October 2010, 20:46

Re: Implementazione funzione MERGE INTO

Postby g.cassanelli » 25 July 2016, 13:03

Usata in MySql, APPROVO !
(il link per MSSQL è sbagliato...)
Informatica ! Meglio lavorare con il granito, è duro, ma è stabile ! - Computer Science ! Better to work with granite, it's hard, but it's stable !

Giuseppe Cassanelli http://www.lab-ud.com
User avatar
g.cassanelli
 
Posts: 2653
Joined: 9 November 2010, 19:00
Location: BOLOGNA

Re: Implementazione funzione MERGE INTO

Postby teopost » 25 July 2016, 13:09

Grazie della segnalazione. Ho corretto il link
Oracle Database Administrator
User avatar
teopost
 
Posts: 211
Joined: 26 October 2010, 20:46

Re: Implementazione funzione MERGE INTO

Postby fabio.fabbro » 14 December 2016, 15:06

Ciao a tutti,
si sa se per caso la questione sia andata avanti?

Nella roadmap non mi sembra di vedere novità a riguardo :-(
fabio.fabbro
 
Posts: 38
Joined: 13 February 2011, 13:19

Re: Implementazione funzione MERGE INTO

Postby m.sirri » 14 December 2016, 17:24

Abbiamo creato l'attività NPQ03081 per tenere conto di questa conversazione. Quando verrà valutata, potrai seguirne l'andamento con Instant Developer Roadmap.

Non è stata ancora valutata la proposta.
User avatar
m.sirri
Pro Gamma
Pro Gamma
 
Posts: 8574
Joined: 30 September 2010, 17:01
Location: Ozzano dell'Emilia (BO)


Return to Proposte di modifica

Who is online

Users browsing this forum: No registered users and 6 guests