Problème désordre lignes base de données
Résolu/Fermé
Snoop_dogg
Messages postés
70
Date d'inscription
samedi 3 janvier 2015
Statut
Membre
Dernière intervention
23 juillet 2016
-
29 févr. 2016 à 10:50
Snoop_dogg Messages postés 70 Date d'inscription samedi 3 janvier 2015 Statut Membre Dernière intervention 23 juillet 2016 - 29 févr. 2016 à 15:13
Snoop_dogg Messages postés 70 Date d'inscription samedi 3 janvier 2015 Statut Membre Dernière intervention 23 juillet 2016 - 29 févr. 2016 à 15:13
Bonjour,
Tout est dans le titre...
J'ai une base SQL sur phpmyadmin. Lors de l'import de mon tableau CSV, mes lignes se range n'importe comment. J'ai une première colonne ID que met en PRIMARY, Auto-increment. Seulement, quand j'importe le tableau, celui-ci se range sens dessus-dessous, d'une manière totalement illogique...
Donc je les tri sur l'index PRIMARY(croissant), tout revient dans l'ordre (id 1,2,3,4...)
La ou çà pose problème, c'est dans mon PHP. Je stock mes données dans un array, puis les affiches...et celle-ci s'affiche comme lors de l'import (n'importe comment)
Que faire?
Tout est dans le titre...
J'ai une base SQL sur phpmyadmin. Lors de l'import de mon tableau CSV, mes lignes se range n'importe comment. J'ai une première colonne ID que met en PRIMARY, Auto-increment. Seulement, quand j'importe le tableau, celui-ci se range sens dessus-dessous, d'une manière totalement illogique...
Donc je les tri sur l'index PRIMARY(croissant), tout revient dans l'ordre (id 1,2,3,4...)
La ou çà pose problème, c'est dans mon PHP. Je stock mes données dans un array, puis les affiches...et celle-ci s'affiche comme lors de l'import (n'importe comment)
Que faire?
A voir également:
- Problème désordre lignes base de données
- Formules excel de base - Guide
- Gigaset ne reconnait plus sa base - Forum telephonie fixe
- Tnt base de données vide - Forum TNT / Satellite / Réception
- Désolé l'utilisation de la base de données a expiré epic games - Forum Jeux vidéo
- Gigaset a170h problème base ✓ - Forum telephonie fixe
5 réponses
Utilisateur anonyme
29 févr. 2016 à 11:01
29 févr. 2016 à 11:01
Il n'y a pas d'accent dans "ça".
Utilise une fonction de classement d'array.
https://www.php.net/manual/fr/language.types.array.php
Utilise une fonction de classement d'array.
https://www.php.net/manual/fr/language.types.array.php
Snoop_dogg
Messages postés
70
Date d'inscription
samedi 3 janvier 2015
Statut
Membre
Dernière intervention
23 juillet 2016
7
29 févr. 2016 à 11:39
29 févr. 2016 à 11:39
Merci pour ta réponse
Le truc, c'est que j'avais déjà importer un autre tableau, et il n'y avait aucun soucis... Quelle paramètre dois-je utiliser lors de l'import pour qu'il ne me fasse pas de "merde"
J'utiliserais ta solution qu'en dernier recourt...
Le tableau n'est pas grand (une 30aine de lignes sur 4 colonnes), je peux donc assez facilement suppr. et réimporter
Le truc, c'est que j'avais déjà importer un autre tableau, et il n'y avait aucun soucis... Quelle paramètre dois-je utiliser lors de l'import pour qu'il ne me fasse pas de "merde"
J'utiliserais ta solution qu'en dernier recourt...
Le tableau n'est pas grand (une 30aine de lignes sur 4 colonnes), je peux donc assez facilement suppr. et réimporter
Utilisateur anonyme
29 févr. 2016 à 12:07
29 févr. 2016 à 12:07
Bonjour
Tes lignes ne sont pas en ordre parce que les tables des bases de données sont des ensembles non ordonnés. En théorie, rien même ne garantit que tu les lis deux fois de suite dans le même ordre.
Tu peux faire le tri en PHP comme l'a dit Ereohalm, mais c'est une solution absurde. C'est au niveau de la requête SELECT qu'il faut demander de trier les résultats grâce à la clause ORDER BY :
SELECT * FROM matable ORDER BY unchamp
Tes lignes ne sont pas en ordre parce que les tables des bases de données sont des ensembles non ordonnés. En théorie, rien même ne garantit que tu les lis deux fois de suite dans le même ordre.
Tu peux faire le tri en PHP comme l'a dit Ereohalm, mais c'est une solution absurde. C'est au niveau de la requête SELECT qu'il faut demander de trier les résultats grâce à la clause ORDER BY :
SELECT * FROM matable ORDER BY unchamp
Snoop_dogg
Messages postés
70
Date d'inscription
samedi 3 janvier 2015
Statut
Membre
Dernière intervention
23 juillet 2016
7
29 févr. 2016 à 13:41
29 févr. 2016 à 13:41
Bonjour,
Ok merci, la requête fonctionne bien, mais dès lors que je quitte ou change de table, ça se remet dans le désordre... Ne peut on pas sauvegarder quelque part? Je pensais qu'une fois une requête exécutée, celle-ci ne pouvait pas "revenir en arrière"
Ok merci, la requête fonctionne bien, mais dès lors que je quitte ou change de table, ça se remet dans le désordre... Ne peut on pas sauvegarder quelque part? Je pensais qu'une fois une requête exécutée, celle-ci ne pouvait pas "revenir en arrière"
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
29 févr. 2016 à 13:55
29 févr. 2016 à 13:55
bonjour,
La suggestion de "le père" concerne le traitement PHP .... pas la façon dont tes tables s'affichent dans phpmyadmin !
Si tu bosses en LOCAL ou que le serveur autorise la connexion distante à la BDD.. tu peux utiliser un logiciel comme HeidiSQL pour manipuler tes tables ( plus simple que phpmyadmin)
https://codes-sources.commentcamarche.net/faq/10778-heidisql-tester-ses-requetes-sql
Ok merci, la requête fonctionne bien, mais dès lors que je quitte ou change de table, ça se remet dans le désordre... Ne peut on pas sauvegarder quelque part?
La suggestion de "le père" concerne le traitement PHP .... pas la façon dont tes tables s'affichent dans phpmyadmin !
Si tu bosses en LOCAL ou que le serveur autorise la connexion distante à la BDD.. tu peux utiliser un logiciel comme HeidiSQL pour manipuler tes tables ( plus simple que phpmyadmin)
https://codes-sources.commentcamarche.net/faq/10778-heidisql-tester-ses-requetes-sql
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Snoop_dogg
Messages postés
70
Date d'inscription
samedi 3 janvier 2015
Statut
Membre
Dernière intervention
23 juillet 2016
7
29 févr. 2016 à 15:13
29 févr. 2016 à 15:13
Oups désolé, effectivement ça fonctionne beaucoup mieux comme ça
Merci a vous :)
Merci a vous :)