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

Bases de données Delphi Discussion :

[delphi][interbase]problème de transaction


Sujet :

Bases de données Delphi

  1. #1
    Membre régulier Avatar de daheda
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 81
    Points : 109
    Points
    109
    Par défaut [delphi][interbase]problème de transaction
    bonjour à tous
    bon! je poste ce message car j'ai un problème. j'utilise delphi et interbase comme DB; Au debut j'ai mis un IBdatabase et un IBTransaction à chacune de mes fiche , par concéquant les autres fiches ne voient pas les donnée inserer par une fiche d'insertion, c'est un problème de transaction (je suppose) et comme solution j'ai remplacé tous les IBdatabase et IBtransaction par un seul dans un Datamodule mais encore Delphi me montr l'erreur suivant :
    ---------------------------
    Notification d'une exception du débogueur
    ---------------------------
    Le projet Project1.exe a provoqué une classe d'exception EIBClientError avec le message 'Base de données non affectée'. Processus stoppé. Utilisez Pas-à-pas ou Exécuter pour continuer.
    ---------------------------
    OK Aide
    ---------------------------

    là suis vraiment désorienter!
    à l'aide s'il vous plait!
    merci de bien vouloir m'aider à comprendre ce qui se passe
    merci

  2. #2
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut et bienvenu sur ce forum

    Il faudrait que tu nous indiques comment tu as définis ton IBDatabase.
    Notamment la propriété DatabaseName (visiblement elle n'a pas été renseignée) et aussi les paramètres définis dans Params.

    Voici une définition standard pour se connecter à une BDD Interbase/Firebird:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
      with IBDatabase1 do begin
        DatabaseName := '127.0.0.1:C:\Databases\MaBase.gdb';
        Params.Clear;
        Params.Add('user_name=SYSDBA');
        Params.Add('password=monpwd');
        Params.Add('lc_ctype=ISO8859_1');
        Params.Add('sql_role_name=NONE'); // facultatif puisque SYSDBA
        try
          Connected := True;
        except
          on E: EIBInterbaseError do 
             // Traitement en conséquence
             // raise;
        end;
      end;
    @+ Claudius.

  3. #3
    Membre régulier Avatar de daheda
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 81
    Points : 109
    Points
    109
    Par défaut
    Merci Claudius!
    j'ai défini ma IBDatabase sur la pallet d'inspecteur d'objet en metant ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
       databasename=D:\database\Serv\DATABASE.GDB
       defaulttransaction=IBtransaction1
       loginprum=true
       User_Name=SYSDBA
       password=masterkey
    j'espère que c'est ce que tu voulais savoir sur la IBDataBase
    Et en ce qui concerne la Base de donnée elle es parametré en standard; c'est à dire que je n'ai rien modifier ni ajouter au moment de la creation de la base en mode Local

    mais en voici un extrait de mes code(en piece jointe).
    c'est sur cet extrait que m'apparait l'erreur que j'ai cité et sur les autres fiches.
    Excuse de mon abstraction (je fait de mon mieu d'être explicite).
    Merci et merci de votre comprehension
    Fichiers attachés Fichiers attachés

  4. #4
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut,

    J'ai jeté un coup d'oeil rapide à ton unit. Tu dois avoir un de tes TIBQuery qui n'est plus relié à IBDatabase. Cette liaison a du disparaître lorsque tu as créé ton DataModule pour centraliser tes transactions.

    Vérifies tes TIBQuery et isole celui ou ceux qui n'ont plus de liaison avec le TIBDatabase.

    @+ Bon dev
    Claudius.

  5. #5
    Membre régulier Avatar de daheda
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 81
    Points : 109
    Points
    109
    Par défaut
    Grand merci Claudius!
    j'ai resolu le problème en mettant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Application.CreateForm(TDataModule1, DataModule1);
    juste apres l'initialisation de l'appli et en faisant ce que t'as dit! certes il manquais l'initialisation d'un IBQuery
    merci infiniment

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

Discussions similaires

  1. Problème d'insertion d'un champs numérique avec delphi interbase
    Par mouradtn dans le forum Bases de données
    Réponses: 5
    Dernier message: 23/07/2010, 15h27
  2. Les transactions avec Delphi & InterBase
    Par Redhouane dans le forum Bases de données
    Réponses: 5
    Dernier message: 31/12/2004, 15h34
  3. Interbase, threads et transactions
    Par Reisubar dans le forum Bases de données
    Réponses: 3
    Dernier message: 08/07/2004, 17h55
  4. [interbase] gerer les transactions
    Par webbulls dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/05/2004, 18h27
  5. [Interbase] Problème de connections
    Par yolepro dans le forum InterBase
    Réponses: 3
    Dernier message: 24/02/2004, 15h31

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