Bonjour à tous,

Je travaille sous oracle 8i avec toad et sqlplus.
Voilà, je veux faire passer une colonne d'un type varchar2(14) à un type varchar2(9), je vais donc employer la commande:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 ALTER TABLE nom_table
MODIFY nom_colonne VARCHAR2(9)
J'obtiens le message suivant:
ORA-01441: une colonne doit être vide pour pouvoir diminuer sa largeur
ce que je conçois très bien. :
Le hic c'est que je tiens à conserver toutes les données de la table à modifier et de même sa clef primaire qui n'est autre que la colonne à changer et les procédures qui utilisent cette même colonne.. donc je ne veux pas vider ma colonne ou la dropper sans avoir un moyen de récupérer tous les liens et les données par la suite dans la nouvelle table

les données de la table se compte en milliers de lignes donc on oublie un traitement manuel.

Avez vous une idée?

Merci d'avance pour les neurones que vous allez griller sur ce post, a+!

Bukbi