Pertanto, non puoi modificare una tabella esistente non partizionata in una tabella partizionata.
È necessario creare una nuova tabella (con un nome diverso) partizionata, creare tutte le partizioni necessarie e quindi copiare i dati dalla vecchia tabella alla nuova tabella partizionata.
Qualcosa come:
create table clients_partitioned
(
.... all columns ...
)
PARTITION BY LIST (client_id);
Quindi crea le partizioni:
create table clients_1
partition of clients_partioned
values in (1,2,3);
create table clients_1
partition of clients_partioned
values in (4,5,6);
Quindi copia i dati:
insert into clients_partitioned
select *
from clients;
Una volta fatto, puoi eliminare la vecchia tabella e rinominare la nuova tabella:
drop table clients;
alter table clients_partitioned rename to clients;
Non dimenticare di ricreare le chiavi esterne e gli indici.