URGENT BASE DE DONNEES

Signaler
Messages postés
31
Date d'inscription
mardi 26 avril 2005
Statut
Membre
Dernière intervention
28 mai 2008
-
Messages postés
496
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
29 juillet 2009
-
Bonjour à tous, je suis débutante avec PHP.
Et je voudrais bien savoir comment je peux convertir ma base de données mysql en une base de données access?

Merci @ tous et bon weekend.

5 réponses

Messages postés
496
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
29 juillet 2009
1
Ben je crois qu'il n'y a pas 36 solutions car les deux Géants, à savoir Linux et Windows, ne jouent pas à la compatibilité; il faut tout recopier à la main
Kisses
Gilles
Messages postés
31
Date d'inscription
mardi 26 avril 2005
Statut
Membre
Dernière intervention
28 mai 2008

Merci à GillesWebmaster pour cette solution, mais je veux bien savoir s'il y a une solution pour me faciliter la tâche car si on une grande passe c'est une perte du temps de recopier tout
Merci une autre fois à tous qui lit ce message et qui n'oublie pas que je suis au début du chemin...
Messages postés
496
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
29 juillet 2009
1
Je connais la fonction qui transforme une acces en mysql;
function Transfert_CSV_Mysql(){
/*
Ce script vous permettra de transferer votre base de donnée ACCESS au format
csv
sur une base de donnée MySQL automatiquement et sans efforts.
*/
/* enregistrez votre base de données access au format csv avec en
premiere ligne le titre des champs.
Ex :
"Code";"Diplomes";"Formation";"Epreuves";"Niveau";"Année";"Mots clés"
"ECM2VQ2000";"Maitrise";"Econometrie";"VARIABLES
QUALITATIVES.";"Rien";;"ECONOMETRIE UE2"
"TML1MA2000";"Licence";"Technologie
Mecanique";"MATHEMATIQUES.";"Rien";;"TMUE11"
"TML1IN2000";"Licence";"Technologie Mecanique";"INFORMATIQUE.";"Rien";;
...

ATTENTION il faut toutefois que votre tabe soit crée avec comme noms de champs
ceux correspondant
aux champs de ACCESS.
EX : ici : Code, Diplomes, Formation, Epreuves, Niveau, Année, Mots clés
*/


// Nom du fichier a transferer
$BASE_FORMAT_CSV = "C:\\Mes documents\\Epreuves.txt";
// Vous pouvez en specifier d'autre lors de l'exportation sous ACCESS
$separateur_champ = ";";
$separateur_texte = """;

// infos sur le serveur mysql
$sql_server = "localhost";
$sql_login = "root";
$sql_pass = "";
$sql_db = "test";
$sql_table = "sujets_epreuve";


$fp = fopen($BASE_FORMAT_CSV, "rb"); // rb pour windows, r pour linux/unix cf
docs nexen
$contents = fread fread($fp, filesize ($BASE_FORMAT_CSV));
fclose ($fp);

mysql_connect ($sql_server, $sql_login, $sql_pass);
mysql_select_db ($sql_db);

$ligne = strtok ($contents, "\n");
$i = 0;
while ($ligne)
{
$i++;
if ($i == 1)
{
$nom_champs = separer_champs ($ligne);
}
else
{
$champs = separer_champs ($ligne);
$query = make_query ($nom_champs, $champs);
print "$query
";
mysql_query ($query);
}
$ligne = strtok ("\n");
}

mysql_close();

function separer_champs ($ligne)
{
global $separateur_champ, $separateur_texte;
$champs = split split($separateur_champ, $ligne);
$i =0;
while ($champs[$i])
{
$champs[$i] = eregi_replace ($separateur_texte, "", $champs[$i]);
$i++;
}
return($champs);
}


function make_query ($nom_champs, $champs)
{
global $sql_table;
$OUT = "INSERT INTO $sql_table (";

$i = 0;
while ($nom_champs[$i])
{
if ($i == 0)
{$OUT .= $nom_champs[$i];}
else
{$OUT .= ", ".$nom_champs[$i]."";}
$i++;
}
$OUT .= ") VALUES (";
$i = 0;
while ($champs[$i])
{
if ($i == 0)
{$OUT .= "'".$champs[$i]."'";}
else
{$OUT .= ", '".$champs[$i]."'";}
$i++;
}
$OUT .= ");";
return ($OUT);
}
?>
}

Je continue les recherches...
Ciao
GIlles
Messages postés
496
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
29 juillet 2009
1
Je connais la fonction qui transforme une acces en mysql;
function Transfert_CSV_Mysql(){
/*
Ce script vous permettra de transferer votre base de donnée ACCESS au format
csv
sur une base de donnée MySQL automatiquement et sans efforts.
*/
/* enregistrez votre base de données access au format csv avec en
premiere ligne le titre des champs.
Ex :
"Code";"Diplomes";"Formation";"Epreuves";"Niveau";"Année";"Mots clés"
"ECM2VQ2000";"Maitrise";"Econometrie";"VARIABLES
QUALITATIVES.";"Rien";;"ECONOMETRIE UE2"
"TML1MA2000";"Licence";"Technologie
Mecanique";"MATHEMATIQUES.";"Rien";;"TMUE11"
"TML1IN2000";"Licence";"Technologie Mecanique";"INFORMATIQUE.";"Rien";;
...

ATTENTION il faut toutefois que votre tabe soit crée avec comme noms de champs
ceux correspondant
aux champs de ACCESS.
EX : ici : Code, Diplomes, Formation, Epreuves, Niveau, Année, Mots clés
*/


// Nom du fichier a transferer
$BASE_FORMAT_CSV = "C:\\Mes documents\\Epreuves.txt";
// Vous pouvez en specifier d'autre lors de l'exportation sous ACCESS
$separateur_champ = ";";
$separateur_texte = """;

// infos sur le serveur mysql
$sql_server = "localhost";
$sql_login = "root";
$sql_pass = "";
$sql_db = "test";
$sql_table = "sujets_epreuve";


$fp = fopen($BASE_FORMAT_CSV, "rb"); // rb pour windows, r pour linux/unix cf
docs nexen
$contents = fread fread($fp, filesize ($BASE_FORMAT_CSV));
fclose ($fp);

mysql_connect ($sql_server, $sql_login, $sql_pass);
mysql_select_db ($sql_db);

$ligne = strtok ($contents, "\n");
$i = 0;
while ($ligne)
{
$i++;
if ($i == 1)
{
$nom_champs = separer_champs ($ligne);
}
else
{
$champs = separer_champs ($ligne);
$query = make_query ($nom_champs, $champs);
print "$query
";
mysql_query ($query);
}
$ligne = strtok ("\n");
}

mysql_close();

function separer_champs ($ligne)
{
global $separateur_champ, $separateur_texte;
$champs = split split($separateur_champ, $ligne);
$i =0;
while ($champs[$i])
{
$champs[$i] = eregi_replace ($separateur_texte, "", $champs[$i]);
$i++;
}
return($champs);
}


function make_query ($nom_champs, $champs)
{
global $sql_table;
$OUT = "INSERT INTO $sql_table (";

$i = 0;
while ($nom_champs[$i])
{
if ($i == 0)
{$OUT .= $nom_champs[$i];}
else
{$OUT .= ", ".$nom_champs[$i]."";}
$i++;
}
$OUT .= ") VALUES (";
$i = 0;
while ($champs[$i])
{
if ($i == 0)
{$OUT .= "'".$champs[$i]."'";}
else
{$OUT .= ", '".$champs[$i]."'";}
$i++;
}
$OUT .= ");";
return ($OUT);
}
?>
}

Je continue les recherches...
Ciao
GIlles
Messages postés
496
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
29 juillet 2009
1
Finalement je crois avoir trouvé un petit soft, à essayer par tes soins...
Meric d'accepter ta réponse si elle te plait...
GIlles