Temat: Archiwizacja danych

Mam do dyspozycji dwie table.
Dla 170 tysięcy rekordów muszę z tabeli A przenieść dane do tabeli B za konkretny okres czasu.
Przy jednoczesnym usunięciu danych z tabeli A. Czy ktoś byłby mi w stanie pomóc?
Grzegorz D.

Grzegorz D. PL/SQL Developer

Temat: Archiwizacja danych

Zakładając, że struktura tabel A i B jest identyczna (nazwy kolumn, typy kolumn, kolejność kolumn) i istnieje kolumna z datą, która będzie wyznaczać "okres czasu", i nie ma dodatkowych ograniczeń i problemów (np. pokrywające się klucze główne):


insert into tabelaB
select *
from tabelaA
where kolumna_z_data between data_od and data_do;

delete
from tabelaA
where kolumna_z_data between data_od and data_do;

commit;


Ewentualnie, jeżeli na tabeliA jest klucz główny (np. kolumna id), można spróbować jeszcze zrobić tabelę pośrednią z danymi do wstawienia do tabeliB i do usunięcia z tabeliA.
Być może wtedy usunięcie danych będzie szybsze.
Dodatkowo tabelaC będzie służyć za backup, gdyby jednak dane się z jakiegoś względu nie wstawiły/usunęły.


-- utwórz tabelę pośrednią
create table tabelaC as
select *
from tabelaA
where kolumna_z_data between data_od and data_do;

-- dodaj dane do tabeli B
insert into tabelaB
select * from tabelaC;

-- usuń dane z tabeli A
delete
from tabelaA
where id in (select id from tabelaC);

-- zatwierdź transackję gdy wszystko poszło ok
commit;

-- usuń tabelę gdy niepotrzebna
drop table tabelaC;
Ten post został edytowany przez Autora dnia 11.10.17 o godzinie 22:08
Sebastian Wroni

Sebastian Wroni Account Manager,
Własna działaność

Temat: Archiwizacja danych

Przede wszystkim jeżeli szukacie konkretnej podpowiedzi i dokładności w zakresie archiwizacji danych to jak najbardziej mogę polecić Wam, żebyście również poświęcili więcej uwagi na ofertę przygotowaną przez firmę https://hsm-recycling.pl/pl/archiwizacja-danych/ z którymi bardzo dobrze nam się współpracuje. Konkretni, pomocni i jednocześnie licząc przy tym na obsługę która na pomoże, aby zabezpieczyć biznes i z niektórymi sprawami się sprawnie uporać. Pozdrawiam!

Następna dyskusja:

Archiwizacja i odtwarzanie ...




Wyślij zaproszenie do