changement de type pour un champ dans une table
J'aurai souhaité savoir s'il était possible de changer le type d'un champ c'est à dire par exemple passer de integer à text, sans être obliger de supprimer la table et de la refaire, je suis allée sur le site sql pro, mais
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
ALTER TABLE T_IMPORT
ADD TMP_IMP_DATE CHAR(6)
UPDATE T_IMPORT
SET TMP_IMP_DATE = IMP_DATE
ALTER TABLE
DROP IMP_DATE
ALTER TABLE
ADD IMP_DATE DATE
UPDATE T_IMPORT
SET IMP_DATE = CAST(CASE SUBSTRING(TMP_IMP_DATE, 5, 2)
WHEN < '03' THEN '20'
ELSE '19'
END || SUBSTRING(TMP_IMP_DATE, 5, 2)
|| '-' || SUBSTRING(TMP_IMP_DATE, 3, 2)
|| '-' || SUBSTRING(TMP_IMP_DATE, 1, 2) AS DATE)
ALTER TABLE
DROP TMP_IMP_DATE
COMMIT |
Ne marche pas chez moi , voilà ce que je fais
Code:
1 2 3 4 5 6 7 8 9
| GDBASE=# ALTER TABLE "TABLE"
GDBASE-# ADD "TMP-NUM-ORDRE" bigint
GDBASE-# ALTER TABLE
GDBASE-# DROP "NUM-ORDRE"
GDBASE-# ALTER TABLE
GDBASE-# ADD "NUM-ORDRE" INTEGER
GDBASE-# ALTER TABLE
GDBASE-# DROP "TMP-NUM-ORDRE";
ERROR: parser: parse error at or near "ALTER" |
fAUT IL METTRE UN ; A CHAQUE FOIS??? J'AI DU MAL