Faire une importation à partir d'une requête

Fermé
gilou106 Messages postés 52 Date d'inscription lundi 23 novembre 2009 Statut Membre Dernière intervention 14 avril 2014 - 11 juin 2013 à 10:50
gilou106 Messages postés 52 Date d'inscription lundi 23 novembre 2009 Statut Membre Dernière intervention 14 avril 2014 - 11 juin 2013 à 16:19
Bonjour,

J'aimerai savoir si c'est possible de faire une importation d'un fichier avec des requêtes SQL à la place d'utiliser l'invite de commande.

Merci de vos réponses ^^

5 réponses

Utilisateur anonyme
11 juin 2013 à 10:59
Bonjour

Oui, tu peux toujours enchaîner les requêtes INSERT avec un langage de programmation quelconque (PHP en général) ou le faire en une seule commande avec LOAD DATA INFILE
1
gilou106 Messages postés 52 Date d'inscription lundi 23 novembre 2009 Statut Membre Dernière intervention 14 avril 2014
Modifié par gilou106 le 11/06/2013 à 11:39
Tu pourrais me donne un exemple de syntaxe avec LOAD DATA INFILE pour un fichier .xls qui se trouve dans un autre serveur?

J'ai essayé ça :

LOAD DATA INFILE 'chemin/fichier.xls'
INTO TABLE table
FIELDS
TERMINATED BY '\t'
ENCLOSED BY '\''
ESCAPED BY '\\'
LINES TERMINATED BY '\n';

mais il me donne cette erreur (phpmyadmin) :

#29 - File 'chemin/fichier.xls' not found (Errcode: 2)
0
Utilisateur anonyme
11 juin 2013 à 11:43
Visiblement, tu n'as pas donné le bon nom de chemin/fichier.

De plus...
Ton fichier xls est-il un fichier texte ? Si ce n'est pas le cas, il faut que tu l'exportes d'abord au format convenable, avec les délimiteurs que tu indiques dans ta commande.

Je n'avais pas mentionné Dans ma 1ère réponse la possibilité d'importer avec PhpMyAdmin. C'est en général le moyen le plus pratique.
0
gilou106 Messages postés 52 Date d'inscription lundi 23 novembre 2009 Statut Membre Dernière intervention 14 avril 2014
11 juin 2013 à 11:56
Je sais qu'on peut importer avec phpMyAdmin. Le souci c'est que je cherche un moyen court et simple de faire une importation "automatique" (avec un temporisateur qu'on peut créer sur phpmyadmin) sans passer par PHP (laisser le navigateur allumé).

C'est pour sa que j'ai demandé une importation en requête SQL ^^

Pour le fichier xls, c'est un fichier automatisé qui est exporter d'une base oracle à partir d'un logiciel (pas d'extension .txt ou .csv).
Comment je peux savoir si c'est un fichier texte ? lol
0
Utilisateur anonyme
11 juin 2013 à 14:34
Comment je peux savoir si c'est un fichier texte ? lol
En l'ouvrant avec un éditeur de texte (Notepad par exemple). Si c'est lisible, c'est du texte.

Si ce n'est pas du texte, je ne vois pas de solution sans PHP (ce qui ne veut pas dire qu'il n'y en a pas)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gilou106 Messages postés 52 Date d'inscription lundi 23 novembre 2009 Statut Membre Dernière intervention 14 avril 2014
11 juin 2013 à 16:19
Ah d'accord. Je viens de le faire mais c'est crypté. Pas lisible en conclusion.
Mais j'ai trouvé une autre solution mais longue aussi.

Je vais créer une exportation automatique sur SQL*PLUS (besoin de créer un temporisateur sur l'invite de commande) pour créer un fichier en csv et après, donc, utiliser un Load Data Infile qui sera fait dans un CREATE EVENT pour importer dans phpMyAdmin, le fichier CSV.

Mais bon, problème maintenant, chercher le moyen de mettre un temporisateur sur l'invite de commande pour créer l'exportation et après tester la requete LOAD DATA INFILE
0