hegalaldia Posté 16 Septembre 2010 Posté 16 Septembre 2010 Slt J'aimerais avoir une confirmation. J'ai une table lime_answers et qui comporte 7 champs : qid, code, answer, assessment_value, sortorder, language et scale_id. Cette table comporte deja des donnees et je voudrais en inserer d'autres (la liste des communes de france avec leur code postale). J'aimerais avoir la confirmation que j'utilise le bonne syntaxe : INSERT lime_answers (qid, code, answer, assessment_value, sortorder, language, scale_id) VALUES ('49', '1', 'Bourg En Bresse - 1000', '1', '1', 'fr', '0' '49', '2', 'Brou - 1000', '1', '2', 'fr', '0' '49', '3', 'St Denis Les Bourg - 1000', '1', '3', 'fr', '0' etc...) Merci pour votre avis.
Ernestine Posté 16 Septembre 2010 Posté 16 Septembre 2010 Pas du tout, il faut faire : INSERT INTO nom_de_la_table (champ1, champ2, champ3) VALUES ('valeur1', 'valeur2', 'valeur3');INSERT INTO nom_de_la_table (champ1, champ2, champ3) VALUES ('valeur1', 'valeur2', 'valeur3');INSERT INTO nom_de_la_table (champ1, champ2, champ3) VALUES ('valeur1', 'valeur2', 'valeur3');etc... (autant de INSERT qu'il y a d'enregistrements à faire)
hegalaldia Posté 16 Septembre 2010 Auteur Posté 16 Septembre 2010 Merci pour ta reponse. Tout faux (pour moi ) ! tu aurais un truc pour eviter de me taper tout ca a la main , il y a quand meme 39154 communes . J'ai essayer de voir en bidouillant avec excel, mais il faut mettre les guillemets ('') a chaque valeur.
Ernestine Posté 16 Septembre 2010 Posté 16 Septembre 2010 Le fichier de départ est un fichier Excel ? J'ai trouvé ça sur le net : http://www.toutestfacile.com/sql/cours/printables/%5BSQLFacile.com%5Dexpimp.php A toi de jouer
hegalaldia Posté 16 Septembre 2010 Auteur Posté 16 Septembre 2010 (modifié) Merci pour le lien. Oui c'est un fichier excel. J'avais reussis en bidouillzant entre excel, word et notepad++. Mais j'ai eu souci au moment de l'import. J'execute l'import et au bout d'un petit moment il n'y a ni message que tout c'est bien passe, ni d'erreur. C'est vide (la zone ou normalement on a un message). J'ai utilise la methode que tu m'a passe en lien (plus simple que la mienne cote preparation ). Mais je ne voit pas comment utiliser leur requete : LOAD DATA INFILE 'Donnees MySQL.txt' INTO TABLE lime_answers FIELDS OPTIONALLY ENCLOSED BY '" Il y a bien la zone ou mettre les requetes, mais comment va-t-il trouver mon fichier TXT et pour lui dire que les champs sont separes par des tabulation je met quoi a la place de '" ? Modifié 16 Septembre 2010 par hegalaldia
petit-ourson Posté 18 Septembre 2010 Posté 18 Septembre 2010 Source: http://dev.mysql.com/doc/refman/5.1/en/insert.html Ça devrait également fonctionner. INSERT INTO nom_de_la_table (champ1, champ2, champ3) VALUES ('valeur1', 'valeur2', 'valeur3'),('valeur1', 'valeur2', 'valeur3'), ('valeur1', 'valeur2', 'valeur3'); Il me semble que plusieurs INSERT est plus coûteux qu'un INSERT avec plusieurs VALUES. Je n'ai cependant pas de preuves à apporter.
Dan Posté 19 Septembre 2010 Posté 19 Septembre 2010 Et pour le "load data infile", il faut voir s'il est supporté sur ton hébergement. Il est souvent désactivé pour des raisons de sécurité
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant