Duplication possible:
Comment raccourcir un champ varchar2 dans Oracle?
Dans Oracle (9i et plus)
Alter table employee MODIFY ename varchar2(10);
Je veux modifier le nom de colonne de l’employé de table de varchar2 (30) à varchar2 (10)
Case 1: si la table a des données ayant une colonne ename contenant des valeurs de longueur inférieure à 10 caractères (je veux dire qu’elle peut tenir confortablement dans varchar2 (10)) – est-ce autorisé par oracle?
Cas 2: si la table a des données ayant une colonne ename contenant des valeurs de longueur supérieure à 10 caractères (je veux dire qu’elle ne peut pas tenir dans varchar2 (10)) – n’est-ce pas autorisé par oracle?
Cas 1: Oui, cela fonctionne bien.
Cas 2: ceci échoue avec l’erreur ORA-01441: impossible de diminuer la longueur de la colonne car une valeur est trop grande.
Partager et profiter.