Message posté par : Kiecane
----------------------------------------
Bonjour,
J'ai une table qui contient un champ date_a au format varchar de la forme JJ/MM/AAAA
et j'aurais aimé, soit convertir directement ce champ au format date (JJ-MM-AAAA),
soit en créer un nouveau avec ce format-là. Le problème, c’est que j’ai trouvé différentes
solutions sur internet mais aucune ne fonctionne (à chaque fois, ma requête SQL me
retourne une erreur sans que je sache déterminer à quoi cette dernière est liée
exactement).
Voici les codes que j’ai testé (en supposant que ma
table s’appelle ma_table) :
ALTER TABLE ma_table add column(new_champ date);
update bdd_total_obs set new_champ = str_to_date(date_a, '%d/%m/%Y');
Alter table bdd_total_obs drop column date_a;
alter table bdd_total_obs CHANGE date_a date;
Logiquement, si j’ai bien compris, ce script est censé créer un nouveau champ appelé
new_champ dans ma_table, tout en supprimant le champ "date_a" qui contenait la
date au format JJ/MM/AAAA. Quand j'exécute cette requête, on me renvoie qu'il y a
une erreur à côté d'un "alter" mais je ne vois pas pourquoi.
J’ai aussi testé :
SELECT CONVERT (date, date_a, 103)
FROM ma_table
Dans ce cas-là, on me renvoie une erreur comme quoi il n'y a pas de colonne
"date" dans ma_table (no such column : date) alors que logiquement date
correspond au nouveau format voulu et non pas à une colonne.
Comme aucun de ces codes ne fonctionne pour moi, pourriez-vous m’indiquer pourquoi et/ou
s’il existe une autre solution pour changer le format de mon champ date_a ?
Merci d’avance !
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=351287#p351287
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net