Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/10/2007, 15h28   #1
Nouveau Membre du Club
 
Inscription : juillet 2006
Messages : 40
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 40
Points : 33
Points : 33
Par défaut Changer le type d'une colonne

Je souhaite modifier une base de données (9i) dans laquelle les dates et numériques ont été chargés sous forme de chaînes de caractères (aux formats prédéfinis YYYYMMDD, NNNNNNNN,NNNN) pour remplacer ces champs par des DATE et NUMBER.
Bien sur le nom des colonnes concernées est préservé :
last_date VARCHAR2(8) -> last_date DATE

Avez-vous quelques idées pour faire la manipulation sans perte de données ?
Vincent_D est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 15h40   #2
Membre du Club
 
Inscription : août 2005
Messages : 68
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 68
Points : 68
Points : 68
Scripts de migration :
- ajout de deux nouvelles colonnes,
- conversion
- supression de l'ancienne colonne
- recréation de tous les objets (indexes, triggers, contraintes, etc ...) qui pointaient sur la colonne.

Bon courage.
xavi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 15h54   #3
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 453
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 453
Points : 4 213
Points : 4 213
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ALTER TABLE MATABLE
   RENAME COLUMN LAST_DATE TO LAST_DATE_N
/
ALTER TABLE MATABLE
   ADD COLUMN LAST_DATE DATE
/
UPDATE MATABLE
SET last_date = TO_DATE(last_date_n, 'YYYYMMDD')
/
COMMIT
/
faire la vérif
 
ALTER TABLE MATABLE
DROP COLUMN DATE_DATE_N
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h15.


 
 
 
 
Partenaires

Hébergement Web