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

Firebird Discussion :

Firebird Embedded et ALTER SEQUENCE


Sujet :

Firebird

  1. #1
    Rédacteur
    Avatar de evarisnea
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juin 2005
    Messages
    1 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 957
    Par défaut Firebird Embedded et ALTER SEQUENCE

    je développe une application qui fonctionne avec firebird embedded.
    lorsque j'essaie d'exécuter une requête ALTER SEQUENCE sur une table, j'ai l'erreur suivante:
    Citation Envoyé par Message d'erreur
    ---------------------------
    MON APPLICATION
    ---------------------------
    data_module:

    This user does not have privilege to perform this operation on this object.No permission for read/select access to TABLE T_CLIENT_CLI.


    ---------------------------
    OK
    ---------------------------
    pourtant, lorsque j'exécute l'application et mode client serveur, la requête fonctionne très bien.
    la requête :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER SEQUENCE GEN_T_CLIENT_CLI_ID RESTART WITH 77;/* 77  est donné à titre d'exemple */
    le bloc de code delphi utilisant la requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      //définition de la valeur du générateur
      qr1.Close();
      qr2.Close();
      qr1.SQL.Text := 'SELECT COUNT(*) AS GEN FROM T_CLIENT_CLI';
      qr1.ExecQuery();
      qr2.SQL.Text := 'ALTER SEQUENCE GEN_T_CLIENT_CLI_ID RESTART WITH '+ qr1.Fields[0].AsString +';';
      qr2.ExecQuery();
      qr1.Close();
      qr2.Close();
    alors ma question : le mode Embedded de firebird ne supporte-t-il pas les requêtes ALTER SEQUENCE ? sinon comment changer la séquence d'un générateur sous FB Embedded ?


  2. #2
    Membre très actif Avatar de TryExceptEnd
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    501
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 501
    Par défaut
    D'aprés le meesage d'erreur, c'est un probleme de privilèges sur la table : T_CLIENT_CLI dans la requete 'SELECT COUNT(*) AS GEN FROM T_CLIENT_CLI' et non pas sur la 2eme requete, En plus ta manip est plutot casse-cou.

  3. #3
    Rédacteur
    Avatar de evarisnea
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juin 2005
    Messages
    1 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 957
    Par défaut
    Citation Envoyé par TryExceptEnd Voir le message
    D'aprés le meesage d'erreur, c'est un probleme de privilèges sur la table : T_CLIENT_CLI dans la requete 'SELECT COUNT(*) AS GEN FROM T_CLIENT_CLI' et non pas sur la 2eme requete
    effectivement il s'agit d'un problème sur la requête SELECT c'est bizarre car j'ai accusé la deuxième requête parce que précédemment en mode pas à pas c'est lors de l'exécution de la deuxième que le problème se posait et là maintenant ce n'est plus le cas; mais bon après quelques modifications du code je ne peux plus en jurer.
    néanmoins, je suis car je viens de me rendre compte que je n'ai ni précisé le nom d'utilisateur ni le mot de passe des composants base de données des deux requêtes ; après correction, tout fonctionne normalement à présent .
    Citation Envoyé par TryExceptEnd Voir le message
    En plus ta manip est plutot casse-cou.
    effectivement, je vais modifier le code pour récupérer plutôt la valeur du plus grand identifiant. en fait cette partie est une sorte de réplication d'une première base vers une seconde.

    merci pour ton inspiration TryExceptEnd;
    je place le sujet en délestage.

Discussions similaires

  1. Aide sur Firebird embedded
    Par [DreaMs] dans le forum Bases de données
    Réponses: 1
    Dernier message: 21/02/2006, 12h21
  2. [Firebird] Embeded
    Par cyberlahy dans le forum Installation
    Réponses: 9
    Dernier message: 13/10/2005, 16h12
  3. alter sequence
    Par marti dans le forum Langage SQL
    Réponses: 5
    Dernier message: 06/08/2005, 07h53
  4. Suite : alter sequence
    Par marti dans le forum Langage SQL
    Réponses: 2
    Dernier message: 06/08/2005, 06h43
  5. Firebird embedded et les UDF
    Par Tito dans le forum Installation
    Réponses: 8
    Dernier message: 02/05/2005, 08h46

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