Oracle
 sql >> Base de données >  >> RDS >> Oracle

Méthode de collecte :fonction EXISTS dans la base de données Oracle

Maintenant que nous avons appris les concepts de la première fonction de collecte, qui est COUNT dans le didacticiel précédent. Il est temps de passer à la deuxième fonction de la série des méthodes de collecte. Je vous présente donc ici la méthode de collecte PL/SQL EXISTS. Dans ce blog, nous allons explorer en détail la méthode de collecte EXISTS ( ).

Qu'est-ce que la méthode de collecte EXISTS ( ) ?

Collection Method EXISTS ( ) vérifie l'existence d'un élément à un index spécifique dans une collection. S'il trouve l'élément spécifié, il renvoie TRUE sinon il renvoie FALSE.

Vous pouvez utiliser la fonction EXISTS ( ) pour vérifier l'existence d'une ligne spécifique dans la collection.

Syntaxe de la méthode de collecte EXISTS ( )

La syntaxe de la fonction EXISTS ( ) est –

EXISTS (index number);

La fonction EXISTS prend l'indice/numéro d'index d'une cellule de la collection comme entrée et le recherche dans la collection. S'il trouve un élément correspondant au numéro d'index, il renvoie TRUE sinon il renvoie FALSE.

La méthode de collecte EXISTS renvoie-t-elle NULL ?

Non La fonction EXISTS ne renvoie pas null. Il renvoie soit True soit False.

Que se passe-t-il si je supprime une ligne déjà existante à l'aide de la fonction TRIM ou DELETE ?

Si vous supprimez une ligne à l'aide de la fonction Trim ou Delete, la méthode de collecte EXISTS ( ) renverra FALSE pour l'index de cette ligne.

La méthode de collecte EXISTS génère-t-elle une exception ?

Non, la méthode de collecte EXISTS ne déclenche aucune exception. En fait, c'est la seule fonction qui ne lève aucune exception, même si elle est utilisée avec une collection non initialisée.

Si cela ne génère pas d'exception, que se passera-t-il si j'applique cette fonction à une collection non initialisée ?

La méthode de collection EXISTS ( ) renvoie false, si elle est appliquée soit à une collection non initialisée, soit à une collection initialisée sans éléments.

Exemple de méthode de collecte EXISTS ( ).

Cet exemple simple vous montrera comment vous pouvez utiliser cette fonction dans votre application.

SET SERVEROUTPUT ON;
DECLARE
        --Declare a local Nested Table
    	TYPE my_nested_table IS TABLE OF VARCHAR2 (20);
 --Declare collection variable and initialize the collection.	
col_var_1   my_nested_table := my_nested_table('Super Man','Iron Man','Bat Man');
BEGIN
    IF col_var_1.EXISTS (1) THEN
        DBMS_OUTPUT.PUT_LINE ('Hey we found '||col_var_1 (1));
    ELSE
        DBMS_OUTPUT.PUT_LINE ('Sorry, no data at this INDEX');
    END IF;
END;
/  

Dans le programme ci-dessus, nous vérifions s'il y a un élément à l'index 1 dans la collection 'my_nested_table' ou non. S'il y a un élément à l'index spécifié, la partie IF de l'instruction IF-ELSE s'exécutera, sinon la partie ELSE entrera en action.

Qu'allez-vous faire ?

Supposons que vous souhaitiez insérer des données dans un index spécifique mais que vous ne sachiez pas si cet index contient déjà des données ou non. Dans le cas où il en contient, vous ne voulez pas l'écraser. Que ferez-vous dans ce cas ?

Pour savoir comment vous pouvez utiliser la méthode de collecte EXISTS pour trouver la solution à ce problème, allez-y et regardez le tutoriel PL/SQL sur ma chaîne YouTube.

C'est une démonstration très simple. Je suis sûr que vous pouvez trouver des exemples plus fous. Alors qu'attendez-vous, allez-y et écrivez votre code et voyez de quelles autres manières possibles vous pouvez utiliser cette méthode.

Si vous voulez que je révise votre code, vous pouvez partager votre code avec moi sur ma page Facebook ou sur mon Twitter également.

Comment trouvez-vous ce blog ? Y a-t-il quelque chose que vous voudriez que nous améliorions ? Dites-nous ce que vous ressentez sur notre page Facebook et sur notre Twitter.

Merci et bonne journée.