Expression du mauvais type [oracle] - SQL/NoSQL - Programmation
Marsh Posté le 06-02-2006 à 11:20:36
ca serait pas par rapport a mon cursor ? faudrait il que je le ferme ??
Marsh Posté le 06-02-2006 à 13:46:06
Ou sinon ca bloque dans la declaration de mon cursor ... s'il vous plait help !
Marsh Posté le 06-02-2006 à 14:51:41
le cursor en parametre c'est :
----------------------------------------------------------------------- |
je me suis dit que peut etre l'erreur venait du select parceque j'ai pas rentré tous les noms de champs.. mais quand je veux les rajouter dans le select ca marche pas parcequ'il y a deja des noms qui y ressemblent..
oula je sens que je vais t'embrouiller la non ?
Marsh Posté le 06-02-2006 à 15:26:36
REF CURSOR est un pointeur vers le curseur Cur9, en aucun cas tu ne peux l'ouvrir dans une autre procédure
Tu devrais vérifier l'utilisation des REF CURSOR mais là ça ne me parait pas correcte. C'est plutôt une boucle FORALL que tu dois utiliser je pense.
Apparemment, il y a des exemples ici : http://sheikyerbouti.developpez.com/pl_sql/?page=Chap1
Marsh Posté le 06-02-2006 à 15:56:24
Mirki OraFrance !! ^^
De mon coté je viens de m'apercevoir qu'il y avit un problème aussi dans mon select regarde je pense que ca peut venir de ca :
-> Select du cursor :
Mirki OraFrance !! ^^
De mon coté je viens de m'apercevoir qu'il y avit un problème aussi dans mon select regarde je pense que ca peut venir de ca :
-> Select du cursor :
Code :
|
-> et le Select de ma procédure :
Code :
|
le truc c'est que ce cursor est utiliser dans la procédure par plusieurs requetes et que je ne peux donc pas enlever pr.cdt_cod, pr.lievte_cod, l.lievte_nom ...
je sais po trop comment faire ! je vais bucher ton FORALL
Marsh Posté le 06-02-2006 à 16:56:56
c'est bon c'est pas grave j'ai mis dans mes requetes les champs en trop (tampis si je les utilises pas)
sinon si ta une autre soluce je veux bien l'entendre =)
Merci
Marsh Posté le 06-02-2006 à 10:11:35
Bonjour,
je travaille avec le SGBD Oracle et j'ai une erreur que je comprend pas...
J'ai une procédure avec une requête comme celle-ci :
[fixed]/**********************************************************************************
--* PROCEDURE : PRC_SEL_PROD
--* -------------------------------------------------------------------------------
--*
--* PARAMETRE :
--* RETOURNE :
--* DESCRIPTION :selectionne les produit de catalogue franco, hors catalogue franco
/**********************************************************************************/
PROCEDURE PRC_SEL_PROD(PRODCursor IN OUT PRODCur,sChoixcat IN VARCHAR2,Choix IN VARCHAR2) IS
BEGIN
IF Choix = '1' THEN /*produits hors catalogue franco*/
OPEN PRODCursor FOR
SELECT c.cla_cod, c.cla_nom, f.famille_cod, f.famille_nom,
p.prd_cod, p.prd_nom,p.prd_lon, p.prd_lar,sf.famille_cod ,sf.sfamille_cod, sf.sfamille_nom
FROM cla c ,famille f, sfamille sf, prde pr, prd p, catprde ca
WHERE f.cla_cod = c.cla_cod
AND sf.famille_cod = f.famille_cod
AND pr.sfamille_cod = sf.sfamille_cod
AND p.prd_cod = pr.prd_cod
AND ca.prd_cod = pr.prd_cod
AND ca.catprde_iac = 'O'
AND ca.cat_cod = SChoixCat
ORDER BY c.cla_tri ,f.famille_tri,sf.sfamille_tri,pr.prde_tri, p.prd_cod, p.prd_nom;fixed]
l'erreur qui m'apparait est : expression du mavais type sur le select ... je comprend trop trop si quelqu'un pouvait eclairer ma lanterne je lui en serait eternellement reconaissante.
Mirki
Message édité par DeadStar le 06-02-2006 à 10:12:41