Page 1 of 1

SQL: purge table

PostPosted: 08 Aug 2021, 02:20
by frog
Supponiamo che, per errore, siano stati fatti inserimenti multipli dei medesimi record nella tabella. Ecco che risolve tutto il comando:

SQL> purge table <tablename>;

che cancella i record doppi dalla tabella.



Opinioni in merito sono gradite.



Regards,
The frog

Re: SQL: purge table

PostPosted: 08 Aug 2021, 04:41
by frog
Va precisato che se ci sono dei constraint di delete in cascata (primary key e foreign key) si puo' effettuare il purge in questo modo:

SQL> purge table <tablename> disable cascade constraints;



Opinioni in merito restano gradite.



Regards,
The frog

Re: SQL: purge table

PostPosted: 08 Aug 2021, 11:19
by frog
E se la tabella e' di volume e ci sono molti record duplicati allora:

SQL> purge table <tablename> disable cascade costraints commit every <numrecords>;



Opinioni in merito restano gradite.



Regards,
The frog

Re: SQL: purge table

PostPosted: 08 Aug 2021, 14:08
by frog
La purge della tabella necessita di un versioning dei record.



Opinioni in merito restano gradite.



Regards,
The frog

Re: SQL: purge table

PostPosted: 08 Aug 2021, 14:31
by frog
NON SI PUO' FARE. Infatti il versioning del record per ogni inserimento presuppone una select count from table where record=recordins e questo sulle tabelle di volume e' impensabile.


Forse sara' possibile sui futuri computer quantistici, ma per ora non e' fattibilr.



Come non detto.



Regards,
The frog

Re: SQL: purge table

PostPosted: 09 Aug 2021, 07:06
by frog
Forse e' fattibile con l'hashing che trasforma il contenuto di un record in una chiave (row-id), ma non ne sono sicuro.



Opinioni in merito sono fortemente gradite.



Regards,
The frog