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 :

[Oracle/Deplhi]


Sujet :

Bases de données Delphi

  1. #1
    Membre habitué
    Inscrit en
    Mai 2002
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 275
    Points : 185
    Points
    185
    Par défaut [Oracle/Deplhi]
    Bonjour,

    Je viens de migrer la base de donnée de mon application de Oracle 7.3 en Oracle 8.1.7.
    Serveur 8.1.7
    Client 8.1.7.
    Mon application est developpée en Delphi 4. (BDE)
    Je lance une requete utilisant la syntaxe "Select * from table For UpDate", dans un événement BeforePost d'une table.
    Bien sur la table n'est pas la même que celle utilisé dans la requete.
    A l'ouverture de la requete, j'ai l'erreur [ORA-01002] Extraction en rupture de séquence.
    J'ai testé ma requete dans TOAD, elle fonctionne trés bien.
    J'ai regardé dans l'aide Oracle mais rien trouvé qui pourrait m'aider.
    Si quelq'un a une idée Merci d'avance.
    Je ne sais pas si mon problème est lié directement à Oracle ou à Delphi(BDE)

    A+
    Cyril

  2. #2
    Seb
    Seb est déconnecté
    Membre régulier

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

    Informations forums :
    Inscription : Décembre 2002
    Messages : 81
    Points : 97
    Points
    97
    Par défaut
    Salut,

    Dans la liste des erreurs d'Oracle, j'ai trouvé cela :
    ORA-01002 fetch out of sequence
    Cause: In a host language program, a FETCH call was issued out of sequence.
    A successful parse-and-execute call must be issued before a fetch. This can
    occur if an attempt was made to FETCH from an active set after all records have
    been fetched. This may be caused by fetching from a SELECT FOR UPDATE
    cursor after a commit. A PL/SQL cursor loop implicitly does fetches and may
    also cause this error.

    Action: Parse and execute a SQL statement before attempting to fetch the data.
    Si cela peut t'aider.

    A+,

    Seb.
    Avant de poser votre question merci de regarder :
    La FAQ Delphi (430 Questions / Réponses)
    ou les cours et tutoriels Delphi.

  3. #3
    Membre expérimenté
    Avatar de Bloon
    Homme Profil pro
    Consultant Freelance
    Inscrit en
    Avril 2002
    Messages
    467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant Freelance
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2002
    Messages : 467
    Points : 1 339
    Points
    1 339
    Par défaut
    Voila ce qu'en dit oerr :

    $oerr ora 1002
    01002, 00000, "fetch out of sequence"
    // *Cause: This error means that a fetch has been attempted from a cursor
    // which is no longer valid. Note that a PL/SQL cursor loop
    // implicitly does fetches, and thus may also cause this error.
    // There are a number of possible causes for this error, including:
    // 1) Fetching from a cursor after the last row has been retrieved
    // and the ORA-1403 error returned.
    // 2) If the cursor has been opened with the FOR UPDATE clause,
    // fetching after a COMMIT has been issued will return the error.
    // 3) Rebinding any placeholders in the SQL statement, then issuing
    // a fetch before reexecuting the statement.
    // *Action: 1) Do not issue a fetch statement after the last row has been
    // retrieved - there are no more rows to fetch.
    // 2) Do not issue a COMMIT inside a fetch loop for a cursor
    // that has been opened FOR UPDATE.
    // 3) Reexecute the statement after rebinding, then attempt to
    // fetch again.
    Bloon
    A lire : Les règles du club
    Delphi : La FAQ - Articles

  4. #4
    Membre habitué
    Inscrit en
    Mai 2002
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 275
    Points : 185
    Points
    185
    Par défaut
    Merci de vos réponse.

    J'ai déja regardé tout ça mais sans succes.
    Je n'ai pas de transaction en cours, pas de cursors non plus.
    J'ai refait un projet teste en reprenant le minimun de code, j'ai toujours le même problème.
    Je ne vois toujours pas pourquoi.
    J'ai l'impression que la syntaxe "for Update" mis dans un événement
    beforePost d'une table. Ne fonctionne plus en Oracle 8.
    Mais je m'interroge car ce serais pour moi une régression de la part d'Oracle.
    Je vais tester sur une autre base.
    A+
    Cyril

  5. #5
    Membre chevronné

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 288
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2002
    Messages : 1 288
    Points : 1 936
    Points
    1 936
    Par défaut
    Note: du moment que tu ouvre une requête tu as un curseur

    A mon avis c'est le 2) qui te concerne.
    Delphi 7/XE2/XE3
    C#
    Oracle 9i à 12c
    SQL Server 2008 à 2014

  6. #6
    Membre habitué
    Inscrit en
    Mai 2002
    Messages
    275
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 275
    Points : 185
    Points
    185
    Par défaut
    Bonjour,

    Le problème ne vient pas d'Oracle mais du BDE(5.01) de Delphi 4.
    Aprés une mise à jour de celui-ci en version 5.11.
    Cest un bug de borland.
    Le problème n'existe plus.

    A+
    Cyril

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

Discussions similaires

  1. Cryptage de colonnes sous Oracle
    Par Julian Roblin dans le forum SQL
    Réponses: 9
    Dernier message: 28/11/2006, 18h24
  2. [Comparatif] DB2, Oracle et SQLServer
    Par Laurent MALAVASI dans le forum Décisions SGBD
    Réponses: 6
    Dernier message: 25/10/2002, 12h26
  3. [VB6] Connection ODBC Oracle
    Par babe dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 07/10/2002, 16h52
  4. [Kylix] sqlconnection + oracle
    Par tibo55555 dans le forum EDI
    Réponses: 1
    Dernier message: 02/09/2002, 09h09
  5. Problème d'installation oracle 8.1.7 sous NT
    Par Anonymous dans le forum Installation
    Réponses: 7
    Dernier message: 02/08/2002, 14h18

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