Archiver les données d'une table dans une aut

Decon Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -  
Decon Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je souhaite archiver les donnée d'une table table1 dans une autre table t2.
je dois commencer par créer une partition sur la table t2. Ensuite à une date donnée, j'archive les données de la tables t1 dans t2 via une procédure appelée depuis un script sh en ajoutant à la partition un flag disant que j'ai archivé les données à telle date.

J'espère avoir été clair.
Merci de votre aide.

A voir également:

4 réponses

Shu_Wong Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   5
 
Bonjour,
Il est impossible d'archiver les données d'une seule table, seule une bd entière peut être archivée et archiver des données ne se fait pas d'une db à une une autre mais d'une db à un fichier de sauvegarde (et de restauration si besoin est) en .bak.
Sinon si j'ai compris ce que tu veux faire, tu dois pouvoir le faire en créant un script à partir d'un plan de maintenance, par contre je ne sais pas quel sgbd le fait ou non mais perso sur sql server ça marche niquel.
1
Decon Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   2
 
Justement je travail sur oracle sql developper.
0
Shu_Wong Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   5
 
Désolé Oracle je connais pas du tout j'ai jamais bossé avec.
0
Decon Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   2
 
Je reviens avec un problème semblable.

Comme je le disais j'ai créé ma table t1 à l'image de la table t2.
T2 est la table sur laquelle les partitions seront créées.
J'essaye donc d'ajouter une partition à t2 de la façon suivante
ALTER TABLE t2 ADD PARTITION 
            --TO_CHAR(to_date('10/02/2011','DD/MM/YYYY'), 'P_MM_YYYY')
            to_char('P_' || to_char(to_date('10/02/2011','DD/MM/YYYY'),'MM_YYYY'))
            VALUES LESS THAN 
            (TO_DATE(
            TO_CHAR(TRUNC(ADD_MONTHS(to_date('10/02/2011','DD/MM/YYYY'), 1),'MONTH'),'DD/MM/YYYY')
             ,'DD/MM/YYYY'))                            


J'ai un message d'erreur:
Erreur SQL : ORA-14150: missing SUBPARTITION keyword
.

Voici le code de création de t2
CREATE TABLE "t2"
  (
    "PERIODE" DATE,
    "STATUT_SAPE"         NUMBER(1,0),
    "LIB_TYPE_DONNE"      VARCHAR2(50 CHAR),
      )
  PCTFREE 20 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING STORAGE
  (
    INITIAL 49152 NEXT 65536 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT
  )
  TABLESPACE "tablespace" 


Merci d'avance de votre aide.
0