J'utilise la requête suivante:
ALTER TABLE presales ALTER COLUMN code TYPE numeric(10,0);
pour changer le type de données d'une colonne de character(20)
à numeric(10,0)
mais j'obtiens l'erreur:
La colonne "code" ne peut pas être convertie en type numérique
la source
TYPE varchar(255) USING (substring(formertextcolumn from 1 for 255))
Si votre
VARCHAR
colonne contient des chaînes vides (qui ne sont pas les mêmes queNULL
pour PostgreSQL, comme vous vous en souvenez peut-être), vous devrez utiliser quelque chose dans la ligne suivante pour définir une valeur par défaut:(trouvé à l'aide de cette réponse )
la source