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

SQL Procédural MySQL Discussion :

procédure stockée : erreur 1329


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut procédure stockée : erreur 1329
    Bonjour

    Lors de l'exécution d'une procédure stockée j'obtiens l'erreur :

    No data - zero rows fetched, selected, or processed (Error 1329)
    J'ai compris que c'est parce qu'il n'y a plus d'enregistrement à récupérer, mais comment éviter l'erreur ?

    La procédure en question.

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    DELIMITER $$
     
    DROP PROCEDURE IF EXISTS `hipparcos`.`SET_STARS_PAIRS` $$
    CREATE PROCEDURE `STARS_PAIRS`()
    BEGIN
     
      DECLARE var_id_hip1 VARCHAR(10);
      DECLARE var_id_hip2 VARCHAR(10);
      DECLARE var_dot_prod FLOAT;
      DECLARE var_mag_1 FLOAT;
      DECLARE var_mag_2 FLOAT;
      DECLARE var_ra_1 FLOAT;
      DECLARE var_dec_1 FLOAT;
      DECLARE var_ra_2 FLOAT;
      DECLARE var_dec_2 FLOAT;
      DECLARE var_num1 INTEGER;
      DECLARE var_num2 INTEGER;
     
      DECLARE curseur1 CURSOR FOR SELECT `id`, `ra_d`, `dec_d`, `mag`, `num` FROM catalog WHERE mag < 0 ORDER BY num;
      DECLARE curseur2 CURSOR FOR SELECT `id`, `ra_d`, `dec_d`, `mag`, `num` FROM catalog WHERE mag < 0 and num > var_num1 ORDER BY num;
     
     
      OPEN curseur1;
     
      LOOP
        FETCH curseur1 INTO var_id_hip1, var_ra_1, var_dec_1, var_mag_1, var_num1;
     
        OPEN curseur2;
     
        LOOP
          FETCH curseur2 INTO var_id_hip2, var_ra_2, var_dec_2, var_mag_2, var_num2;
     
          SET var_dot_prod = var_ra_1*var_dec_1 + var_ra_2*var_dec_2;
     
          INSERT INTO paires (`id_hip1`, `id_hip2`, `dot_prod`, `mag_1`, `mag_2`, `ra_1`, `dec_1`, `ra_2`, `dec_2`, `num_1`, `num_2`)
          VALUES (var_id_hip1, var_id_hip2, var_dot_prod, var_mag_1, var_mag_2, var_ra_1, var_dec_1, var_ra_2, var_dec_2, var_num1, var_num2);
     
        END LOOP;
     
        CLOSE curseur2;
     
      END LOOP;
     
      CLOSE curseur1;
     
    END $$
     
    DELIMITER ;
    Le but est le suivant : j'ai dans une table (catalog) une liste d'étoiles et je souhaite enregistrer dans la table paire toutes les paires possible.

    Actuellement l'erreur se produit dans la deuxième boucle.

  2. #2
    Expert confirmé
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 932
    Par défaut
    Tu n'as pas de condition de sortie de boucle....

    Regarde un bon exemple ici : http://dev.mysql.com/doc/refman/5.0/en/cursors.html

  3. #3
    Invité
    Invité(e)
    Par défaut
    merci, j'ai réussi

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

Discussions similaires

  1. Procédure stockée : erreur de création
    Par jeromesteffe dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 21/06/2007, 17h45
  2. [procédure stockée] Erreur dans un while
    Par LE NEINDRE dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 19/06/2007, 16h46
  3. Réponses: 7
    Dernier message: 03/05/2007, 12h44
  4. Création de procédure stocké erreur
    Par ran_hery dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/02/2007, 09h39
  5. [Procédure stockée] Erreur 1305
    Par SSJ17Vegeta dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 18/11/2005, 02h38

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