Précédent   Forum des professionnels en informatique > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/08/2008, 10h45   #1
Candidat au titre de Membre du Club
 
Inscription : mai 2008
Messages : 33
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2008
Messages : 33
Points : 14
Points : 14
Envoyer un message via Skype™ à ibtissamr
Par défaut Fonction pl/sql dans une clause where

bonjour

conment utiliser une fonctions pl/sql dans une condition where

select chp1, chp2, chp3
from table1
where fonction(chp1)

ma fonction retourne un type boolean
si c 'est possible c quoi le syntaxe

merci à vous
ibtissamr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 10h50   #2
Expert Confirmé
 
Inscription : février 2006
Messages : 3 433
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 3 433
Points : 3 462
Points : 3 462
Non, ce n'est pas possible

Citation:
Oracle SQL does not support calling of functions with Boolean parameters or returns. Therefore, if your user-defined functions will be called from SQL statements, you must design them to return numbers (0 or 1) or character strings ('TRUE' or 'FALSE').
__________________
P. Forstmann

AskTom Forums OTN doc 8, 9, 10 et 11
pifor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 11h09   #3
Candidat au titre de Membre du Club
 
Inscription : mai 2008
Messages : 33
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2008
Messages : 33
Points : 14
Points : 14
Envoyer un message via Skype™ à ibtissamr
merci pour votre reponse

je vais utilser ce select à l'interieur d'un program pl/sql
pour une insertion en masse

insert into table 2
from table1(...)
ma_select

je changer le type de retoure (0 ou 1) de ma fontion ça ne marche pas
est ce que c le bonne syntaxe?
en plus j un message (invalid identifier)
ibtissamr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 11h12   #4
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 459
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 459
Points : 4 226
Points : 4 226
Si tu as changé le type de retour de ta fonction, tu ne devrais plus avoir de problème
Code :
1
2
3
SELECT chp1, chp2, chp3
FROM table1
WHERE fonction(chp1) = 1
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/08/2008, 11h18   #5
Candidat au titre de Membre du Club
 
Inscription : mai 2008
Messages : 33
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : mai 2008
Messages : 33
Points : 14
Points : 14
Envoyer un message via Skype™ à ibtissamr
merci bp
ça marche maintenant
ibtissamr est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h11.


 
 
 
 
Partenaires

Hébergement Web