Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/12/2010, 07h48   #1
Invité de passage
 
Inscription : décembre 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 3
Points : 0
Points : 0
Par défaut Nombre maximum de champs dans INSERT INTO

Bonjour,

Je demande de l'aide pour stoker dans MySQL les nombreux résultats d'un formulaire.

J'ai un gros formulaire/questionnaire, avec environ 250 champs de réponse.

Au maximum, combien de champs je peux mettre dans une instruction INSERT INTO ?
Code :
1
2
 
"INSERT INTO table1(nom, date_naissance, sexe, nbr_enfants, etc, etc, ... combien au maximum?) VALUES('$nom', '$date_naissance', '$sexe', '$nbr_enfants', etc, etc, ... combien au maximum?)";
Question complémentaire:
Même s'il était possible de mettre disons 255 champs, cela fait quand même une ligne de commande complexe à écrire. Existe-t-il une procédure plus simple pour stoker dans une table un grand nombre de champs récupérés d'un gros formulaire ?

Merci pour votre aide.
Bien cordialement,
Yohan.
titoi256 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2010, 10h50   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 980
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 980
Points : 18 225
Points : 18 225
Envoyer un message via MSN à CinePhil
Je ne voudrais pas être à la place de celui qui doit renseigner le formulaire !
Surtout quand je vois qu'il s'agit d'une table relative semble t-il à des personnes, je ne me vois pas donner 250 renseignements sur moi !

Et 250 colonnes dans une table, même si c'est théoriquement possible, c'est souvent le signe d'une erreur de conception de la BDD !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2010, 11h55   #3
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
Citation:
Envoyé par CinePhil Voir le message
Je ne voudrais pas être à la place de celui qui doit renseigner le formulaire !
Surtout quand je vois qu'il s'agit d'une table relative semble t-il à des personnes, je ne me vois pas donner 250 renseignements sur moi !

Et 250 colonnes dans une table, même si c'est théoriquement possible, c'est souvent le signe d'une erreur de conception de la BDD !
oui, si demain vous devez rajouter un champs (encore !) dans votre formulaire, vous devrez rajouter une colonne à votre table, et ainsi revoir toutes les requêtes de vos applications derrières... bon courage !

Expliquez nous un peu le contexte, qu'on puisse vous dire ce qui ne va pas, car a mon avis, il y a un problème en amont !
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2010, 12h55   #4
Invité de passage
 
Inscription : décembre 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 3
Points : 0
Points : 0
Précisions:

C'est un questionnaire en sciences humaines de 90 questions, avec près de 250 champs de réponses différentes.

Les seuls accès à la base de données seront pour enregistrer les réponses des Internautes.

Une fois l'enquête terminée, les données seront exportées pour être analysée dans un logiciel statistique spécialisé (SPSS).

Il est éventuellement possible de scinder le questionnaire en 3 ou 4 pages, mais cela fait toujours une ligne de commande INSERT INTO complexe.

Connaissez-vous une méthode plus simple pour enregistrer de nombreux champs (ayant chacun un nom différent) dans MySQL ?

Merci pour votre aide,
Bien cordialement,
Yohan.
titoi256 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2010, 13h46   #5
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 980
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 980
Points : 18 225
Points : 18 225
Envoyer un message via MSN à CinePhil
Citation:
Envoyé par titoi256 Voir le message
C'est un questionnaire en sciences humaines de 90 questions, avec près de 250 champs de réponses différentes.
Il devrait donc y avoir une table de questions, peut-être une table de réponses possibles pour les questions et une table d'enregistrement des réponses.

Mais quand je lis ceci :
Citation:
Les seuls accès à la base de données seront pour enregistrer les réponses des Internautes.

Une fois l'enquête terminée, les données seront exportées pour être analysée dans un logiciel statistique spécialisé (SPSS).
Dois-je comprendre que le SGBD ne sert que de stockage temporaire de données et que celles-ci seront injectées en bloc dans le logiciel de statistique ?
Pourquoi alors ne pas injecter directement les données dans le logiciel de statistiques ?
N'y a t-il pas un autre moyen pour enregistrer les données dans un format lisible par le logiciel de statistiques ? Format texte délimité ou XML par exemple ?

Citation:
Il est éventuellement possible de scinder le questionnaire en 3 ou 4 pages, mais cela fait toujours une ligne de commande INSERT INTO complexe.
Ça ne changera effectivement pas grand chose au problème !

Citation:
Connaissez-vous une méthode plus simple pour enregistrer de nombreux champs (ayant chacun un nom différent) dans MySQL ?
Enregistrer les réponses au questionnaire dans un fichier texte délimité puis LOAD DATA INFILE du fichier.

Mais j'ai de gros doutes sur la pertinence des choix technologiques faits sur ce projet !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2010, 14h19   #6
Invité de passage
 
Inscription : décembre 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 3
Points : 0
Points : 0
Merci pour votre réponse.

Citation:
Il devrait donc y avoir une table de questions, peut-être une table de réponses possibles pour les questions et une table d'enregistrement des réponses.
Le questionnaire est écrit en HTML tout simple. Il ressemble à ce gros questionnaire ci-dessous, sauf avec moins de réponses en texte, et plus de questions fermées ou semis-fermées (case à cocher ou bouton radio - ce qui permet un traitement statistique).

http://www.elisabrune.com/enquete

Quel est l'intérêt de créer une table des questions, plus une table des réponses possibles, en plus de la table des réponses finales ? Vous avez un lien avec un exemple ou un tutoriel ?

Citation:
Pourquoi alors ne pas injecter directement les données dans le logiciel de statistiques ?
N'y a t-il pas un autre moyen pour enregistrer les données dans un format lisible par le logiciel de statistiques ? Format texte délimité ou XML par exemple ?
et

Citation:
Enregistrer les réponses au questionnaire dans un fichier texte délimité puis LOAD DATA INFILE du fichier.
Oui, ce serait parfait ! Mais comment faire pour avoir sur un serveur (de free, wanadoo ...) un seul fichier avec tous les enregistrements au bon format (il faudrait une solution simple et fiable pour ne perdre aucune données) ?
Existe-t-il des exemples ou des tutoriels ?

Citation:
Mais j'ai de gros doutes sur la pertinence des choix technologiques faits sur ce projet !
Quels seraient alors les choix pertinents, pour un questionnaire similaire à celui-ci :
http://www.elisabrune.com/enquete
mais avec plus de données numériques, de réponses OUI/NON, boutons radios, cases à cocher ?

Merci pour votre aide,
Bien cordialement,
Yohan.
titoi256 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h15.


 
 
 
 
Partenaires

Hébergement Web