Mysql et shell

Fermé
lamou23 Messages postés 178 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 21 mars 2011 - 17 juin 2010 à 18:22
mamiemando Messages postés 33284 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 25 septembre 2024 - 20 juin 2010 à 03:20
salut,

je veux savoir comment pourrai je envoyer le contenu d'un fichier dans une base de donnée en utilisant mysql sous shell?

j'ai la base de donnée contenat les attribut (id_fichier,non_fichier,contenu)

je veux par exemple copier le contenu du fichier /home/linux/fichier1.txt dans la table "fichier" avec un id_fichier automatique, nom_fichier ="fichier1" et son contenu

comment faire??
aidez moi svl
merci

2 réponses

mamiemando Messages postés 33284 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 25 septembre 2024 7 787
19 juin 2010 à 02:56
Tout dépend de la manière dont est construit ton fichier. Si ce sont des directives SQL :

mysql -u root -p < monfichier.sql


Si c'est un fichier plat (csv...) :
http://dev.mysql.com/doc/refman/5.0/fr/load-data.html

Bonne chance
0
lamou23 Messages postés 178 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 21 mars 2011
19 juin 2010 à 17:33
salut,

j'ai par exemple cette table:
**********************************************************************************************************
CREATE TABLE alerte (
id_alerte int(11) NOT NULL auto_increment,
date date,
heure char (20),
niveau varchar (20),
type varchar(20),
addresse_ip varchar(20),
contenu TEXT,
PRIMARY KEY (id_alerte),
FOREIGN KEY(addresse_ip) REFERENCES serveur(IP_privee) ON DELETE CASCADE
);
*****************************************************************************************************

je voudrais copier ce fichier alerte.txt contenant les lignes suivantes dans le champs "contenu" de la table décrite précédemment:

****************Notification****************
Service: charge cpu
Adresse: 192.168.80.128
Etat: warning
Date:samedi 19 juin 2010
heure:16:02:20
Charge 1min: 0.00
Charge 5min: 0.00
Charge 15min: 0.00
***********************************************************************************
dans le tutoriel que tu m'as envoyé j'ai remarqué qu'ils font entrer le contenu du fichier sans spécifier le champs


merci d'avance
0
mamiemando Messages postés 33284 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 25 septembre 2024 7 787
20 juin 2010 à 03:20
Ce n'est pas forcément exactement la commande idéale pour ton besoin effectivement. Peut être un truc du genre

mysql -u root -p < "insert into mabase.alerte value('...','....',........,'$(cat alerte.txt)')"


Bonne chance
0