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

Connexion aux bases de données Firebird Discussion :

SPB Constant Error...


Sujet :

Connexion aux bases de données Firebird

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 142
    Points : 120
    Points
    120
    Par défaut SPB Constant Error...
    Bonjour à tous,

    J'intègre dans une application Delphi des composants d'administration Interbase (IBBackUpService, IBRestoreService et IBValidationService).

    Je dois faire une erreur grossière car à l'exécution j'obtiens le message :
    "SPB constant error"

    Peut-être pourriez-vous m'éclairer ?

    (Interbase 6.0 - Delphi 2005)

  2. #2
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 142
    Points : 120
    Points
    120
    Par défaut
    J'ai fait 2 erreurs :

    1- Propriété "Paramètre" : j'ai bêtement copié la propriété du IBDatabase :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    user_name=SYSDBA
    password=masterkey
    lc_ctype=ISO8859_1
    Avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    user_name=SYSDBA
    password=masterkey
    ça va beaucoup mieux.

    2- Paramètre "Protocol" positionné sur 'TCP' alors que ma base est locale. Trivial !

    Par contre, avec le IBValidationService, il subsiste un problème :
    A l'exécution je récupère le message d'erreur suivant :

    "Please retry, specifying an option"...

    Bizarrement, lorsque que je suis dans Delphi et que je positionne à "True" la propriété Active du IBValidationService, je n'obtiens aucun message.

    Là, je ne vois pas...

  3. #3
    Membre averti

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 379
    Points : 376
    Points
    376
    Par défaut
    je ne sais pas tout, mais même en local, il est souhaitable voir préférable d'effectuer une liaison "tcp" même si cela semble lourd.

    en outre, il est pratique d'aller faire un tour dans aliases.conf et d'y mettre un alias de la base de données, ainsi, il est possible de ce connecter suivant cet exemple: "localhost:employee" et bien sûr dans aliases.conf il y a:
    employee = /usr/local/firebird/example/employee.fdb ou quelque de proche.

    la connexion "distante" et je pense et sauf erreur quasi obligatoire à partir de firebird 1.5.

    cela dit, j'utilise toujours la chaîne de connexion distante, plus facile à retenir et plus facile à transporter. sans oublier les alias.

  4. #4
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 142
    Points : 120
    Points
    120
    Par défaut
    Bonjour Jean-Jacques,

    Merci de ta réponse.

    il est pratique d'aller faire un tour dans aliases.conf
    C'est quoi aliases.conf ? Peux-tu préciser ?

    J'ai une autre question qui va sentir le réchauffé, mais tant pis.

    Elle concerne le renommage du fichier Interbase dans le cas où on utilise Windows XP. J'ai bien suivi la problématique. A différents endroits sur ce forum (cf. post-it ci-dessus), on dit qu'il suffit de modifier le fichier de la base de données.

    Comment Interbase va-t-il reconnaître que le fichier "toto.gdf" s'appelle maintenant "toto.frb" (par exemple) ? J'ai néanmoins essayé. Et, à l'ouverture de la base (sous IBConsole), j'obtiens le splendide message d'erreur que j'attendais, du genre "Impossible de localiser votre base".

    J'ai dû rater un truc...

  5. #5
    Membre averti

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 379
    Points : 376
    Points
    376
    Par défaut
    hello

    en principe, firebird (version 1.5) dispose d'un fichier nommé "aliases.conf" qui est situé dans le dossier "bin" de l'installe.

    tu peux donner l'extension que tu veux, même aucune extension, interbase ou firebird effectue la connexion à la base avec le nom que tu précise toi même soit dans la connexion, soit dans le fichier aliases.conf

    si par exemple, tu décide d'avoir comme extention "toto" et ben dans ta connexion (sans alias) localhost:c:\bases\mabase.toto ou en linux localhost:/bases/mabase.toto

    et si tu "fait" un alias, alors dans le fichier aliases.conf tu ajoute MaBase = c:\bases\mabase.toto et tu te connecte alors: localhost:MaBase

    mais je ne suis pas sûr que le fichier "aliases.conf" existe en "interbase", par contre en firebird si 8)

    donc en résumé que tu met ou pas une extension au fichier de la base de données n'a aucune importance, mais surtout en windows xp n'utilise pas "gdb" en linux, heu... lui il s'en moque comme de l'an 40

  6. #6
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 142
    Points : 120
    Points
    120
    Par défaut
    Salut !

    Je comprends mieux : tu parlais de Firebird 1.5 que je ne connais pas. Je suis en Interbase 6.0.

    Effectivement, le fichier aliases.conf n'existe pas sous IB. Les alias existent bien, mais on les définit d'1 autre façon. Le principe reste à peu près le même. Ca n'empêche : je suis incapable de renommer le fichier BDD.

    J'ai tout de même résolu mon problème en faisant un Backup/Restore, car, comme un cou***, j'avais suffixé ma base en .gdb

    Par curiosité, s'il existe une autre méthode, je voudrais bien la connaître...

    Merci en tout cas de tes renseignements.

    A+

  7. #7
    Membre averti

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 379
    Points : 376
    Points
    376
    Par défaut
    pour renomer? il suffit d'arrêter le service interbase et de renomer manu-militari le fichier, mais attention, cela ne fonctionnera que si le base et dans un unique fichier, dans le cas contraire, n'y pense même pas.

    après changement de nom, n'oubli pas de changer soit l'alias ou la chaîne de connexion de toutes tes applications qui se connecte à cette base (d'où l'intérêt d'un alias)

Discussions similaires

  1. Réponses: 10
    Dernier message: 29/01/2009, 01h55
  2. [D7 TIBBackupService] Constante SPB
    Par Moine dans le forum Bases de données
    Réponses: 4
    Dernier message: 21/12/2007, 14h30
  3. Réponses: 3
    Dernier message: 01/05/2007, 18h57
  4. Parse error sur une constante
    Par Missie46 dans le forum Langage
    Réponses: 1
    Dernier message: 10/11/2006, 10h19
  5. Errors: too many characters in constant
    Par beb30 dans le forum C
    Réponses: 2
    Dernier message: 03/04/2006, 16h46

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