|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : août 2002 Messages : 9 ![]() |
Bonjour,
Je suis débutant en plsql, et voici ce que je souhaite faire : 1) effectuer un select sur une table pour déterminer une liste de rejet, 2) stocker les rowid de ces lignes dans une variable table 3) effectuer un update sur la table en excluant ces rowid. Pour cela, j'emploi la démarche suivante (et ça ne marche pas ...): Code :
J'ai également essayé la forme suivante : Mais ça génére l'erreur suivante : PLS-00382: expression du mauvais type Existe il un moyen d'utiliser mon tableau comme je le souhaite (utilisation d'une variable de type TABLE comme un objet table oracle) ? PS : en raison du volume de la table 1 (300 Millions de rows), impossible d'imbriquer la requete 1 dans la requete 2 |
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() dba Inscription : juillet 2007 Messages : 2 523 ![]() |
c'est une très mauvaise idée d'utiliser le rowid pour identifier une ligne, puisque le rowid n'est pas constant.
Utilise tout simplement la clé primaire. |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : août 2002 Messages : 9 ![]() |
Le problème est le même avec la clé primaire :
Mon problème est lié à l'utilisation du tableau. Ci dessous, le code mis à jour pour utiliser la clé. Comment ecrire la clause en gras pour que cela fonctionne ? Code :
Idem avec --> PLS-00382: expression du mauvais type |
||
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
c'est pas un tableau mais un curseur que le IN attend. Il faut donc une variable REF CURSOR.
|
|
|
00
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() ![]() Marius NituIngénieur développement logiciels Inscription : octobre 2007 Messages : 3 319 ![]() |
Tu ne peut pas faire Select … From variable de type tableau (collection). Soit:
|
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : août 2002 Messages : 9 ![]() |
Merci !
Je ne maitrise pas trop le concept de REF CURSOR dans la requête. J'ai donc utilisé la table temporaire. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com