Conversion d'une colonne text vers integer

From: Samuel ROZE <samuel(dot)roze(at)aliceadsl(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: Conversion d'une colonne text vers integer
Date: 2009-09-26 09:23:48
Message-ID: 1253957028.4451.3.camel@samuel-laptop
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Bonjour à tous,

Pour des questions de performances et taille, j'ai une colonne "colonne"
dans ma base de données qui contient des valeurs varchar(50) et des
NULL.

Je les ai convertie avec une fonction schema.uniqueValue qui retourne
l'ID de la valeur dans une table "valeurs" :

UPDATE schema.matable SET colonne = schema.uniqueValue(colonne) WHERE
colonne IS NOT NULL;

Maintenant, je n'ai que des valeurs sous formes d'entiers et des NULL.
Je voudrais donc changer le type de ma colonne pour "integer". Or, quand
je fait:

ALTER TABLE schema.matable ALTER COLUMN colonne TYPE integer;

J'ai l'erreur:

ERREUR: la colonne « colonne » ne peut pas être convertie vers le type
pg_catalog.int4

Il y a-t-il une autre méthode de faire ?

Merci d'avance !
Cordialement, Samuel.

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Stéphane Bunel 2009-09-26 09:31:14 Re: Conversion d'une colonne text vers integer
Previous Message administrateur 2009-09-22 07:35:27 Re: Requette bloquant