Insertin de donnees via un fichier externe

Signaler
Messages postés
5
Date d'inscription
vendredi 1 juin 2001
Statut
Membre
Dernière intervention
14 novembre 2007
-
Messages postés
5
Date d'inscription
vendredi 1 juin 2001
Statut
Membre
Dernière intervention
14 novembre 2007
-
Bonjour, j'ai besoin d'un peu d'aide sur un import d'un fichier CSV
alors je m'explik :
- j'ai 4 tables :

CREATE TABLE `marque` (
  `id_marq` int(11) NOT NULL auto_increment,
  `lib_marq` varchar(50) NOT NULL default '',
  PRIMARY KEY  (`id_marq`)

CREATE TABLE `modele` (
  `id_mod` int(11) NOT NULL auto_increment,
  `lib_mod` varchar(25) NOT NULL default '',
  `id_marq` int(11) NOT NULL default '0',
  PRIMARY KEY  (`id_mod`)

CREATE TABLE `version` (
  `id_vers` int(11) NOT NULL auto_increment,
  `lib_vers` varchar(30) NOT NULL default '',
  `id_mod` int(11) NOT NULL default '0',
  PRIMARY KEY  (`id_vers`)

CREATE TABLE `occasion` (
  `id_occas` int(11) NOT NULL auto_increment,
  `id_marq` int(15) NOT NULL default '0',
  `id_mod` int(20) NOT NULL default '0',
  `id_vers` int(10) NOT NULL default '0',
  `prix` int(5) NOT NULL default '0',
   PRIMARY KEY  (`id_occas`),

 
Je voudrais importer d'un fichier CSV qui a plusieurs collonnes soit :
Marque | Modele | Version | Prix

quelle formule SQL dois je ecrire afin d'inserer les champs dans les bonnes tables, ainsi que verifier si les marques, modele, version existent ou pas et inscrire les references des cles primaires de chaque tables dans la table Occasion

Je pense avoir été assez clair.

PS : J'ai deja reussi en PHP a importer d'un fichier CSV dans une seule table. Mais je ny arrive pas sur plusieurs tables

3 réponses

Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
salut,

C'est pas possible directement :  tu fais plusieurs fichiers csv, ou alors tu fais un script qui décortique le csv et en fait plusieurs requetes.

à+
Messages postés
144
Date d'inscription
lundi 13 octobre 2003
Statut
Membre
Dernière intervention
21 décembre 2014

ça risque d'etre assez compliqué au fait: pour chaque ligne du fichier csv tu devra vérifier, si la marque existe dans ta table (sinon, l'insérer) pareil pour le modèle, puis la version, et enfin insérer le prix. Au minimum 4 requêtes par ligne de ton fichier, l'opération risque d'être lourde...
Messages postés
5
Date d'inscription
vendredi 1 juin 2001
Statut
Membre
Dernière intervention
14 novembre 2007

Peut etre, mais je n'ajoute pas plus de 15 à 20 enregistrement a la fin.

pouvez vous m'aider au moins sur une de ces 4 boucles ?