Importation de dates de Excel vers MySQL

GrifOli Messages postés 2111 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,

Tout d'abord, j'ai un fichier .xlsx dans lequel j'ai des cellules qui contiennent des dates formattées sous le format " jj mmmm " (l'année est entrée sur la même ligne mais dans une autre cellule). Par exemple, si j'entre la date "12 juillet" dans ma cellule Excel, il sera écrit dans cette même cellule "12 juillet".

Ensuite, j'enregistre mon fichier excel en fichier .CSV, puis je l'importe dans ma base de données MySQL.

Le souci, c'est que je ne sais pas quel type de champ je dois donner à ma colonne de date pour que MySQL reconnaisse qu'il s'agit d'une date. Si je lui donne le type "DATE", ma cellule qui contenait "12 juillet" sera changée en "0000-00-00". Si je lui donne le type "VARCHAR", ça s'affiche bien, par contre, lorsque je mets les dates en ordre alphabétique, il mets les dates en ordre croissant de chiffre (ex: 01 août, 01 juillet, 02 août, 02 juillet, etc.), il ne reconnait pas les mois.

J'aimerais que les dates que j'importe dans MySQL s'affichent comme je le veux (ex: 12 juillet, 01 août, etc.) et que MySQL reconnaisse l'ordre chronologique des mois. Est-ce possible? Je vais m'arranger dans mes requêtes php pour que les dates suivent avec les années contenues dans un autre champ.

Merci!


A voir également:

1 réponse

Utilisateur anonyme
 
Bonjour

Je ne crois pas qu'il y ait de moyen simple de passer d'une date textuelle en français à un format date de mysql.
Mais il est facile d'écrire un petit script pour que tout le monde se comprenne. Soit en VBA du côté de l'origine des données, soit en PHP du côté de leur lecture
J'aimerais que les dates que j'importe dans MySQL s'affichent comme je le veux (ex: 12 juillet...
Le stockage et l'affichage sont deux choses différentes, tu peux toujours t'arranger pour afficher dans le format qui te convient. Tu auras forcément du php (ou autre...) pour récupérer tes données avant des les afficher. Si tu as bien stocké ta date avec l'un des types date, la mise en forme te coûtera au grand maximum deux lignes de code.
[edit] : point important : l'utilisation d'un vrai type date (et non pas d'une cuisine avec des chaînes) est le seul moyen d'avoir des tris corrects
0