IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Transfert d'une base Access à Firebird [ODBC]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 56
    Points : 27
    Points
    27
    Par défaut Transfert d'une base Access à Firebird
    Bonjour,

    Je dois transférer des données d'une base access à une base firebird (réorganisation de données).
    J'ai plusieurs question a ce sujet.

    1) Est il possible de faire une fonction de connexion comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function connect_fb($db,$dbuser,$dbpass){
    $db_fb = ibase_connect($db, $dbuser, $dbpass);
    if(!$db_fb) die ("Echec de connexion a la base de donnee");
    }
    2)Comment passer d'une colonne a une autre de ma base access en PHP...

    3) Y a il des particularités lorsque l'on transfert des données d'access et firebird...

    Merci de votre aide !

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Bonjour ,

    Je n'ai pas encore eu le temps de me plonger dans Firebird (même si j'en brûle d'envie lol )

    Vais essayer de te guider :

    1- oui
    2- Tu peux faire une sauvegarde de la structure et de tes données Access et les réinjecter dans FireBird non ?
    3- Je vois pas , les 2 supportant le sql pas de difficultés a priori
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 56
    Points : 27
    Points
    27
    Par défaut
    Le soucis c'est que je dois eorganiser les données lorsque je les passe de access a firebird. Conclusion je prend colonne pas colonne et je les réinject au bon endroit dans la base firebird.

    D'autre part j'ai un pb avec ma fonction de deconnexion et je ne sais pas d'ou ca vient ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	function disconnect_fb(){
    	ibase_close($this->id);
    }
    et je pense que ca va etre pareil pour ma fonction de deconnxion de ma base access...

    merci de ta reponse...
    C'ets vari qu'a ce sujet les tutos sont pas enorme sur le net^^

  4. #4
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    ça serait pas plutot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function disconnect_fb(){
    	ibase_close();
    }
    Je vois pas d'où tu sors le $id ? a moins que tu es créé une classe complète dans ce cas il serait préférable de nous la montrer !
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 56
    Points : 27
    Points
    27
    Par défaut
    Merci^^

    Pas eu le courage de faire une classe complete. Je procede par fonction ... plus rapide.

    Par contre j'ai un soucis : je érécupère mes données et je stocke dans un tableau pour faciliter le traitement. Sauf que ca ne marche pas....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $query = "SELECT data1,data2 FROM table";
    $res = ibase_query(connect_fb('xxx', 'xxx', 'xxx'), $query);
    while ($row = ibase_fetch_object($res)){
    	$data1 = $row[0];
    	$data2 = $row[1];
    	echo $data1.": ".$data2."<br>.\n";
    }
    t il me srs comme erreur : Cannot use object of type stdClass as array in D:\xxx\xxx.php on line 84

    T'as une idée? Merci

  6. #6
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    normal tu demande a $row d'etre converti en objet et tu t'en sers comme un tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    while ($row = ibase_fetch_object($res)){
    	$data1 = $row->(nom colonne);//ou numero j'ai un doute verifie sur php.net lol
    	$data2 = $row->(nom colonne);
    	echo $data1.": ".$data2."<br>.\n";
    }
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 56
    Points : 27
    Points
    27
    Par défaut
    Ouais pas faux !

    Par contre je viens de découvrir une erreur sur ma connexion a access (et donc aussi ma déconnxion je suppose)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function connect_ma($dsn, $user, $pass){
    	$db_ma = odbc_connect($dsn, $user, $pass);
    	if(!$db_ma) die ("Echec de connexion a la base de données");
    }
     
    function disconnect_ma(){
    	odbc_close();
    }
    et lorsque j'appelle ma fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    connect_ma('nom_de_la_source_de_donnees', '', '');
    et l'erreur : SQL error: [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié, SQL state IM002 in SQLConnect in D:\xxx\xxx.php on line 55

    ???????? une idée?????

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 56
    Points : 27
    Points
    27
    Par défaut
    En tout cas merci pour ton aide...

  9. #9
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Citation Envoyé par gorgoroth Voir le message
    ???????? une idée?????
    oui , je dirais qu'il ne trouve pas ta base access ....
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 56
    Points : 27
    Points
    27
    Par défaut
    oui d'accord....
    Mais mon lien ODBC est fait. Ya pas de pilote a insérer dans le code...
    Donc je n'arrive pas a voir ce que c'est...

    ODBC c'est le mal... vais essayer de passer en PDO

  11. #11
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    Tu as déjà réussi a te connecter a ta base access ?

    sinon le module ODBC n'est peut être pas active dans le Apache !
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 56
    Points : 27
    Points
    27
    Par défaut
    Si mais vais passer par pdo verra bien ce que ca donne. J'ai l'habitude que les liens ODBC ne fonctionne jamais donc bon ca ne m'etonne pas tant que ca ^^

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Transfert de données 'une base Access vers Excel
    Par sidisadmir dans le forum ADO.NET
    Réponses: 0
    Dernier message: 06/11/2013, 05h13
  2. [PDO] Requête d'une base Access vers Firebird
    Par gorgoroth dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 03/04/2008, 13h20
  3. [SQL] Réorganisation des données d'une base access à firebird
    Par gorgoroth dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 27/03/2008, 09h58
  4. bug dans une base Access
    Par bizouard dans le forum Access
    Réponses: 5
    Dernier message: 29/12/2003, 12h41
  5. [ODBC] Intranet en PHP : Lister les tables d'une base Access
    Par fblouet dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 28/10/2003, 14h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo