|
|
Subject: Re: Modifier un type - msg#00003
List: db.postgresql.french
C'est aussi ce que je pensais faire, mais il y a un petit problème : j'ai une
douzaine de programmes qui travaillent sur cette table et qui vont récupérer
la donnée poids à la nième position dans la table... Or, si je crée une
nouvelle colonne, elle va venir en dernière position et il faudrait alors que
je modifie aussi les sources des programmes...
pas cool... :-|
Le vendredi 8 Avril 2005 09:59, Laurent Birckel a écrit :
> à ma connaissance, il est impossible de modifier un type sous postgreSQL
>
> solution (si j'ai tout compris !)
>
> a) créer une nouvelle colonne avec le nouveau type
> b) charger cette colonne avec le contenu de l'ancienne
> c) supprimer l'ancienne
> d) renommer la nouvelle
>
> Laurent
>
> -----Message d'origine-----
> De : pgsql-fr-generale-owner@xxxxxxxxxxxxxx
> [mailto:pgsql-fr-generale-owner@xxxxxxxxxxxxxx]De la part de Stéphane
> Dupuy
> Envoyé : vendredi 8 avril 2005 09:52
> À : pgsql-fr-generale@xxxxxxxxxxxxxx
> Objet : [pgsql-fr-generale] Modifier un type
>
>
> Bonjour à tous !
> J'utilise PostgreSQL 7.3.2 et j'ai un petit problème de type...
> Dans une table, j'ai une colonne POIDS qui a été declarée en SMALLINT.
> Or, je viens de tomber sur un cas où mon poids est supérieur à 40 tonnes =>
> 40000 kg => supérieur à la valeur maximale d'un SMALLINT !
> Donc, je voudrais modifier le type de ma colonne POIDS en INTEGER pour
> contourner ce problème...
> Comment faire sans perdre mes données ?
> Y-a-t-il une astuce sur la commande ALTER TABLE pour modifier un type de
> données ?
> Merci pour votre aide...
> --
> Stéphane Dupuy (sdupuy@xxxxxxxxxx)
> Service Informatique
>
> Transports H.Ducros
> Parc Masterclub
> Rue du Prof. Dangeard
> 33300 Bordeaux
>
> Tél : 05 57 10 60 60
> Fax : 05 57 10 60 61
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@xxxxxxxxxxxxxx
Was this page helpful?
Thread at a glance:
Previous Message by Date:
click to view message preview
Re: Modifier un type
Le vendredi 8 Avril 2005 09:52, vous avez écrit :
> Bonjour à tous !
> J'utilise PostgreSQL 7.3.2 et j'ai un petit problème de type...
> Dans une table, j'ai une colonne POIDS qui a été declarée en SMALLINT.
> Or, je viens de tomber sur un cas où mon poids est supérieur à 40 tonnes =>
> 40000 kg => supérieur à la valeur maximale d'un SMALLINT !
> Donc, je voudrais modifier le type de ma colonne POIDS en INTEGER pour
> contourner ce problème...
> Comment faire sans perdre mes données ?
> Y-a-t-il une astuce sur la commande ALTER TABLE pour modifier un type de
> données ?
> Merci pour votre aide...
La modification d'un type de colonne n'est faisable qu'à partir de la version
8 de PostgreSQL.
Peut-être convertir l'unité avec un update ;-)
--
Cordialement,
Apollonie Raffalli
Lycée Laetitia Bonaparte
Ajaccio
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq
Next Message by Date:
click to view message preview
Re: Modifier un type
çà, c'est pas une bonne idée d'utiliser la position du champ au lieu de son
nom...
suggestion:
créer une nouvelle table avec les nouvelles colonnes au bon type et
dans le
bon ordre
copier la table d'origine sur la seconde
virer la première et renommer la seconde
mais
gaffe aux dépendances (triggers, contraintes, indexes, séquences, j'en
passe et des meilleures)
faire la manip sur une copie de la BDD !
bon courage
Laurent
-----Message d'origine-----
De : pgsql-fr-generale-owner@xxxxxxxxxxxxxx
[mailto:pgsql-fr-generale-owner@xxxxxxxxxxxxxx]De la part de Stéphane
Dupuy
Envoyé : vendredi 8 avril 2005 10:05
À : pgsql-fr-generale@xxxxxxxxxxxxxx
Objet : Re: [pgsql-fr-generale] Modifier un type
C'est aussi ce que je pensais faire, mais il y a un petit problème : j'ai
une
douzaine de programmes qui travaillent sur cette table et qui vont récupérer
la donnée poids à la nième position dans la table... Or, si je crée une
nouvelle colonne, elle va venir en dernière position et il faudrait alors
que
je modifie aussi les sources des programmes...
pas cool... :-|
Le vendredi 8 Avril 2005 09:59, Laurent Birckel a écrit :
> à ma connaissance, il est impossible de modifier un type sous postgreSQL
>
> solution (si j'ai tout compris !)
>
> a) créer une nouvelle colonne avec le nouveau type
> b) charger cette colonne avec le contenu de l'ancienne
> c) supprimer l'ancienne
> d) renommer la nouvelle
>
> Laurent
>
> -----Message d'origine-----
> De : pgsql-fr-generale-owner@xxxxxxxxxxxxxx
> [mailto:pgsql-fr-generale-owner@xxxxxxxxxxxxxx]De la part de Stéphane
> Dupuy
> Envoyé : vendredi 8 avril 2005 09:52
> À : pgsql-fr-generale@xxxxxxxxxxxxxx
> Objet : [pgsql-fr-generale] Modifier un type
>
>
> Bonjour à tous !
> J'utilise PostgreSQL 7.3.2 et j'ai un petit problème de type...
> Dans une table, j'ai une colonne POIDS qui a été declarée en SMALLINT.
> Or, je viens de tomber sur un cas où mon poids est supérieur à 40 tonnes
=>
> 40000 kg => supérieur à la valeur maximale d'un SMALLINT !
> Donc, je voudrais modifier le type de ma colonne POIDS en INTEGER pour
> contourner ce problème...
> Comment faire sans perdre mes données ?
> Y-a-t-il une astuce sur la commande ALTER TABLE pour modifier un type de
> données ?
> Merci pour votre aide...
> --
> Stéphane Dupuy (sdupuy@xxxxxxxxxx)
> Service Informatique
>
> Transports H.Ducros
> Parc Masterclub
> Rue du Prof. Dangeard
> 33300 Bordeaux
>
> Tél : 05 57 10 60 60
> Fax : 05 57 10 60 61
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@xxxxxxxxxxxxxx
---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend
Previous Message by Thread:
click to view message preview
Re: Modifier un type
à ma connaissance, il est impossible de modifier un type sous postgreSQL
solution (si j'ai tout compris !)
a) créer une nouvelle colonne avec le nouveau type
b) charger cette colonne avec le contenu de l'ancienne
c) supprimer l'ancienne
d) renommer la nouvelle
Laurent
-----Message d'origine-----
De : pgsql-fr-generale-owner@xxxxxxxxxxxxxx
[mailto:pgsql-fr-generale-owner@xxxxxxxxxxxxxx]De la part de Stéphane
Dupuy
Envoyé : vendredi 8 avril 2005 09:52
À : pgsql-fr-generale@xxxxxxxxxxxxxx
Objet : [pgsql-fr-generale] Modifier un type
Bonjour à tous !
J'utilise PostgreSQL 7.3.2 et j'ai un petit problème de type...
Dans une table, j'ai une colonne POIDS qui a été declarée en SMALLINT.
Or, je viens de tomber sur un cas où mon poids est supérieur à 40 tonnes =>
40000 kg => supérieur à la valeur maximale d'un SMALLINT !
Donc, je voudrais modifier le type de ma colonne POIDS en INTEGER pour
contourner ce problème...
Comment faire sans perdre mes données ?
Y-a-t-il une astuce sur la commande ALTER TABLE pour modifier un type de
données ?
Merci pour votre aide...
--
Stéphane Dupuy (sdupuy@xxxxxxxxxx)
Service Informatique
Transports H.Ducros
Parc Masterclub
Rue du Prof. Dangeard
33300 Bordeaux
Tél : 05 57 10 60 60
Fax : 05 57 10 60 61
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?
http://archives.postgresql.org
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq
Next Message by Thread:
click to view message preview
Re: Modifier un type
çà, c'est pas une bonne idée d'utiliser la position du champ au lieu de son
nom...
suggestion:
créer une nouvelle table avec les nouvelles colonnes au bon type et
dans le
bon ordre
copier la table d'origine sur la seconde
virer la première et renommer la seconde
mais
gaffe aux dépendances (triggers, contraintes, indexes, séquences, j'en
passe et des meilleures)
faire la manip sur une copie de la BDD !
bon courage
Laurent
-----Message d'origine-----
De : pgsql-fr-generale-owner@xxxxxxxxxxxxxx
[mailto:pgsql-fr-generale-owner@xxxxxxxxxxxxxx]De la part de Stéphane
Dupuy
Envoyé : vendredi 8 avril 2005 10:05
À : pgsql-fr-generale@xxxxxxxxxxxxxx
Objet : Re: [pgsql-fr-generale] Modifier un type
C'est aussi ce que je pensais faire, mais il y a un petit problème : j'ai
une
douzaine de programmes qui travaillent sur cette table et qui vont récupérer
la donnée poids à la nième position dans la table... Or, si je crée une
nouvelle colonne, elle va venir en dernière position et il faudrait alors
que
je modifie aussi les sources des programmes...
pas cool... :-|
Le vendredi 8 Avril 2005 09:59, Laurent Birckel a écrit :
> à ma connaissance, il est impossible de modifier un type sous postgreSQL
>
> solution (si j'ai tout compris !)
>
> a) créer une nouvelle colonne avec le nouveau type
> b) charger cette colonne avec le contenu de l'ancienne
> c) supprimer l'ancienne
> d) renommer la nouvelle
>
> Laurent
>
> -----Message d'origine-----
> De : pgsql-fr-generale-owner@xxxxxxxxxxxxxx
> [mailto:pgsql-fr-generale-owner@xxxxxxxxxxxxxx]De la part de Stéphane
> Dupuy
> Envoyé : vendredi 8 avril 2005 09:52
> À : pgsql-fr-generale@xxxxxxxxxxxxxx
> Objet : [pgsql-fr-generale] Modifier un type
>
>
> Bonjour à tous !
> J'utilise PostgreSQL 7.3.2 et j'ai un petit problème de type...
> Dans une table, j'ai une colonne POIDS qui a été declarée en SMALLINT.
> Or, je viens de tomber sur un cas où mon poids est supérieur à 40 tonnes
=>
> 40000 kg => supérieur à la valeur maximale d'un SMALLINT !
> Donc, je voudrais modifier le type de ma colonne POIDS en INTEGER pour
> contourner ce problème...
> Comment faire sans perdre mes données ?
> Y-a-t-il une astuce sur la commande ALTER TABLE pour modifier un type de
> données ?
> Merci pour votre aide...
> --
> Stéphane Dupuy (sdupuy@xxxxxxxxxx)
> Service Informatique
>
> Transports H.Ducros
> Parc Masterclub
> Rue du Prof. Dangeard
> 33300 Bordeaux
>
> Tél : 05 57 10 60 60
> Fax : 05 57 10 60 61
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org
---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@xxxxxxxxxxxxxx
---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend
|
|