Remplir base de donnée avec un fichier texte
matt51
Messages postés
6
Statut
Membre
-
tedy -
tedy -
salut
Je suis en 2eme année de bts informatique et pour mon projet je dois remplir une base de donnée en fonction d'un fichier texte que j'ai exporté d'une autre base de donnée...Je ne sait pas trop comment m'y prendre.
Merci d'avance
Je suis en 2eme année de bts informatique et pour mon projet je dois remplir une base de donnée en fonction d'un fichier texte que j'ai exporté d'une autre base de donnée...Je ne sait pas trop comment m'y prendre.
Merci d'avance
A voir également:
- Remplir base de donnée avec un fichier texte
- Fichier bin - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Fichier .dat - Guide
9 réponses
dsl...
En faite, il n'y a pas de CREATE TABLE dans le fichier texte mais il y a CREATE TABLE.
Merci pour ton aide
En faite, il n'y a pas de CREATE TABLE dans le fichier texte mais il y a CREATE TABLE.
Merci pour ton aide
Bonjour,
Quel sytème utilisez vous? (MySQL ...)
Le fichier texte exporté d'une autre base de donnée doit être exécuté par le serveur de bd. Par exemple sous mysql, il faut se connecter au serveur en ligne de commande :
mysql -u utilisateur - p (le mot de passe sera demandé)
Une fois sous la ligne de commande mysql, il suffit de taper :
use database Nomdelabase;
source Nomdufichier; (Nomdufichier étant le fichier exporté de l'autre base).
Quand je dis "il suffit", je simplifie un peu parce qu'il est possible que le fichier exporté ne soit pas valide pour de nombreuses raisons, notemment une différence de version entre les 2 bases ...
Mais si tout se passe bien, le fichier est lu ligne par ligne et les requête SQL sont exécutée, recréant donc la base telle qu'elle a été exportée depuis l'autre système.
Ben :)
Quel sytème utilisez vous? (MySQL ...)
Le fichier texte exporté d'une autre base de donnée doit être exécuté par le serveur de bd. Par exemple sous mysql, il faut se connecter au serveur en ligne de commande :
mysql -u utilisateur - p (le mot de passe sera demandé)
Une fois sous la ligne de commande mysql, il suffit de taper :
use database Nomdelabase;
source Nomdufichier; (Nomdufichier étant le fichier exporté de l'autre base).
Quand je dis "il suffit", je simplifie un peu parce qu'il est possible que le fichier exporté ne soit pas valide pour de nombreuses raisons, notemment une différence de version entre les 2 bases ...
Mais si tout se passe bien, le fichier est lu ligne par ligne et les requête SQL sont exécutée, recréant donc la base telle qu'elle a été exportée depuis l'autre système.
Ben :)
Dans la fichier texte il doit y avoir en tout début une ligne qui crée la base (CREATE DATABASE ...)
Supprime la et remplace la par use Nom_de_ta_base;
Comme ça il appliquera les directives suivantes à la base qui existe déjà.
B.
Supprime la et remplace la par use Nom_de_ta_base;
Comme ça il appliquera les directives suivantes à la base qui existe déjà.
B.
J'ai remplacé CREATE DATABASE par USE (nom de ma base de donnée) mais sa ne marche pas...ma base ne se rempli pas.
Voici ce ke je fais:
mysql> use projet mon_magasin;
Database changed
mysql> source projet.txt;
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Merci...
Voici ce ke je fais:
mysql> use projet mon_magasin;
Database changed
mysql> source projet.txt;
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
Merci...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
INSERT INTO alarmes ('pkey','date','heure','host-name','alarm-file-name','alarm-desc','number') VALUES (seq_alarmes.NEXTVAL, '$date', '$heure', '$hostname', '$alarmfilename',' $alarmdesc', '$number')
eu,, ds ma première partie ('pkey','date','heure','host-name','alarm-file-name','alarm-desc','number') , il faut l'appostrophe altGr + 7
Enfin je pense...
eu,, ds ma première partie ('pkey','date','heure','host-name','alarm-file-name','alarm-desc','number') , il faut l'appostrophe altGr + 7
Enfin je pense...
Bonjour
Je voudrais mettre à jour ma base de donnée avec un fichier texte que je g exporté.Voici mon fichier texte:
-- MySQL dump 10.10
Je voudrais mettre à jour ma base de donnée avec un fichier texte que je g exporté.Voici mon fichier texte:
-- MySQL dump 10.10
bONJOUR
j'ai un probleme
j'ai le script suivant avec lequel je rempli ma base de données
<?php
$monfichier = fopen('test.txt', 'r+');
while (!feof($monfichier)) {
$texte = fgets($monfichier, 4096);
list($date, $heure, $hostname, $alarmfilename, $alarmdesc, $number) = explode(";", $texte);
$connexion= mysql_connect("localhost","root");
if($connexion)
{
echo "connexion reussie";
$requete = "CREATE SEQUENCE seq_alarmes
MINVALUE 1
STARTWITH 1
INCREMENT BY 1;
INSERT INTO alarmes (pkey,date,heure,host-name,alarm-file-name,alarm-desc,number) VALUES (seq_alarmes.NEXTVAL, '$date', '$heure', '$hostname', '$alarmfilename',' $alarmdesc', '$number')";
$select_db=mysql_select_db("alarmdb",$connexion);
if ($select_db){
echo "acces à la db réussi";
mysql_query($requete,$connexion);
}
echo "Les valeurs ont bien été enregistrées dans la table Alarmes \n\n\n ";
}
}
fclose($monfichier);
?>
mais quand j'execute le script la table n'est pas rempli
merci de m'aider
cdt
j'ai un probleme
j'ai le script suivant avec lequel je rempli ma base de données
<?php
$monfichier = fopen('test.txt', 'r+');
while (!feof($monfichier)) {
$texte = fgets($monfichier, 4096);
list($date, $heure, $hostname, $alarmfilename, $alarmdesc, $number) = explode(";", $texte);
$connexion= mysql_connect("localhost","root");
if($connexion)
{
echo "connexion reussie";
$requete = "CREATE SEQUENCE seq_alarmes
MINVALUE 1
STARTWITH 1
INCREMENT BY 1;
INSERT INTO alarmes (pkey,date,heure,host-name,alarm-file-name,alarm-desc,number) VALUES (seq_alarmes.NEXTVAL, '$date', '$heure', '$hostname', '$alarmfilename',' $alarmdesc', '$number')";
$select_db=mysql_select_db("alarmdb",$connexion);
if ($select_db){
echo "acces à la db réussi";
mysql_query($requete,$connexion);
}
echo "Les valeurs ont bien été enregistrées dans la table Alarmes \n\n\n ";
}
}
fclose($monfichier);
?>
mais quand j'execute le script la table n'est pas rempli
merci de m'aider
cdt
INSERT INTO alarmes (pkey,date,heure,host-name,alarm-file-name,alarm-desc,number) VALUES (seq_alarmes.NEXTVAL, \'$date\', \'$heure\', \'$hostname\', \'$alarmfilename\',\' $alarmdesc\',\'$number\')";
je pense que sur cette partie tu dois insérer des antislashes car dans une requete sql les ' doivent être précédées d'antislashes
Je ne suis que débutant je ne suis pas sur mais j'ai appris ça sur l'excellent siteduzero.com section PHP/Mysql
je pense que sur cette partie tu dois insérer des antislashes car dans une requete sql les ' doivent être précédées d'antislashes
Je ne suis que débutant je ne suis pas sur mais j'ai appris ça sur l'excellent siteduzero.com section PHP/Mysql