PL/SQL:::errer débordement
gumuslive
Messages postés
63
Statut
Membre
-
OlaaLaNoisette.. -
OlaaLaNoisette.. -
Bonjour,
ma question est sur l'erreur de débordement et comment peut-on la traiter dans PL/SQL
le td que je travaille sur demande de créer une sorte de tableau et de le remplir par un resultat de la requette sql demandée (..)avec la prise en considération l'erreur éventuelle de débordement ce que je comprends pas : kel débordement j'aurais dans ce cas;je vois pas de possiblité d'un erreur de débordement qlq peut-il m'expliquer s'il vous plais merci d'avance
ma question est sur l'erreur de débordement et comment peut-on la traiter dans PL/SQL
le td que je travaille sur demande de créer une sorte de tableau et de le remplir par un resultat de la requette sql demandée (..)avec la prise en considération l'erreur éventuelle de débordement ce que je comprends pas : kel débordement j'aurais dans ce cas;je vois pas de possiblité d'un erreur de débordement qlq peut-il m'expliquer s'il vous plais merci d'avance
A voir également:
- PL/SQL:::errer débordement
- Logiciel sql - Télécharger - Bases de données
- Requete sql pix ✓ - Forum MySQL
- Sql lister les tables ✓ - Forum Programmation
- Winrar 64 ccm pl - Télécharger - Compression & Décompression
- Ora-06502: pl/sql : erreur numérique ou erreur sur une valeur: tampon de chaîne de caractères trop petit ✓ - Forum Oracle
3 réponses
Bonsoir,
Ils veulent peut être dire que vous devez gérer le cas ou le tableau en sortie a une taille inférieure au nombre d'enregistrements à charger.. non ?..
Crdlt.
Ils veulent peut être dire que vous devez gérer le cas ou le tableau en sortie a une taille inférieure au nombre d'enregistrements à charger.. non ?..
Crdlt.
merci pour votre réponse, mais,est ce que quands on déclare un tableau en PL/SQL comme suite
type table_nom varchar(20);
on ne spécifie pas combient d'enregistrement on va entrer dans ce tableau;c'est ce que je ponse (on spécifie la taille maximum d'un seul enregistrement comme dans l'exemple varchar(20))
merci d'avance
type table_nom varchar(20);
on ne spécifie pas combient d'enregistrement on va entrer dans ce tableau;c'est ce que je ponse (on spécifie la taille maximum d'un seul enregistrement comme dans l'exemple varchar(20))
merci d'avance
salut ,
dans ce very beg forum je trouve pas de réponse !!! ???
dans ce very beg forum je trouve pas de réponse !!! ???
Re,
A prioiri, je vois pas comment vous pourriez gérer les "buffer overflow" en PL/SQL ce qui est du ressort d'Oracle : je n'ai jamais vu ce problème pour ma part.
Partons déjà sur un exemple simple où on range les enregistrements d'un curseur dans un tableau :
DECLARE
CURSOR name_cur IS
SELECT last_name
FROM student
WHERE rownum <= 10;
TYPE last_name_type IS TABLE OF student.last_name%TYPE
INDEX BY BINARY_INTEGER;
last_name_tab last_name_type;
v_counter INTEGER := 0;
BEGIN
FOR name_rec IN name_cur LOOP
v_counter := v_counter + 1;
last_name_tab(v_counter) := name_rec.last_name;
DBMS_OUTPUT.PUT_LINE ('last_name('||v_counter||'): '||last_name_tab(v_counter));
END LOOP;
DBMS_OUTPUT.PUT_LINE ('last_name(11): '||last_name_tab(11));
END;
--> On ne gère pas la dimension du tableau a priori - Oracle le gère et ce n'est donc pas une piste à explorer.
Je vais me renseigner.
A+.
A prioiri, je vois pas comment vous pourriez gérer les "buffer overflow" en PL/SQL ce qui est du ressort d'Oracle : je n'ai jamais vu ce problème pour ma part.
Partons déjà sur un exemple simple où on range les enregistrements d'un curseur dans un tableau :
DECLARE
CURSOR name_cur IS
SELECT last_name
FROM student
WHERE rownum <= 10;
TYPE last_name_type IS TABLE OF student.last_name%TYPE
INDEX BY BINARY_INTEGER;
last_name_tab last_name_type;
v_counter INTEGER := 0;
BEGIN
FOR name_rec IN name_cur LOOP
v_counter := v_counter + 1;
last_name_tab(v_counter) := name_rec.last_name;
DBMS_OUTPUT.PUT_LINE ('last_name('||v_counter||'): '||last_name_tab(v_counter));
END LOOP;
DBMS_OUTPUT.PUT_LINE ('last_name(11): '||last_name_tab(11));
END;
--> On ne gère pas la dimension du tableau a priori - Oracle le gère et ce n'est donc pas une piste à explorer.
Je vais me renseigner.
A+.