Maison > interface Web > js tutoriel > COLLECTE EN VRAC en PL/SQL

COLLECTE EN VRAC en PL/SQL

Mary-Kate Olsen
Libérer: 2024-09-29 06:21:02
original
841 Les gens l'ont consulté

BULK COLLECT in PL/SQL

Certainement ! Voici un exemple simple pour démontrer l’utilisation de BULK COLLECT en PL/SQL.

Qu'est-ce que la collecte groupée ?

BULK COLLECT est une méthode utilisée pour récupérer plusieurs lignes d'une requête SQL dans une collection PL/SQL en une seule opération. Cela réduit les changements de contexte entre les moteurs SQL et PL/SQL, rendant le processus plus efficace, en particulier pour les grands ensembles de données.

Exemple simple de collecte groupée

Dans cet exemple, nous allons créer une table, y insérer des données, puis utiliser BULK COLLECT pour récupérer les données dans une collection.

Étape 1 : Créer un exemple de tableau

Tout d'abord, nous créons un exemple de tableau appelé employés.

CRÉER TABLE employés (
NUMÉRO d'id_employé,
nom_employé VARCHAR2(50)
);

INSERT INTO employes (employee_id, employ_name) VALUES (1, 'John Doe');
INSERT INTO employes (employee_id, employ_name) VALUES (2, 'Jane Smith');
INSERT INTO employes (employee_id, employe_name) VALUES (3, 'Sam Wilson');
INSERT INTO employes (employee_id, employ_name) VALUES (4, 'Sara Brown');
INSERT INTO employes (employee_id, employe_name) VALUES (5, 'Mike Johnson');

COMMETTRE ;

Étape 2 : Blocage PL/SQL à l'aide de la collecte groupée

Maintenant, nous allons utiliser BULK COLLECT pour récupérer tous les noms d'employés dans une collection.

DÉCLARER
TYPE emp_name_table EST TABLE DE VARCHAR2(50); -- Définir un type de collection
emp_names emp_name_table; -- Déclarer une variable de ce type
COMMENCER
-- Collectez en masse les noms des employés dans la collection
SELECT Employee_name BULK COLLECT INTO emp_names
DES employés ;

-- Print the names
FOR i IN 1..emp_names.COUNT LOOP
    DBMS_OUTPUT.PUT_LINE('Employee Name: ' || emp_names(i));
END LOOP;
Copier après la connexion

FIN ;
/

Explication

  1. Définir un type de collection : nous définissons un type de collection appelé emp_name_table pour contenir les noms des employés.

  2. BULK COLLECT INTO : l'instruction SELECT récupère toutes les valeurs Employee_name de la table Employees et les collecte dans la collection emp_names en une seule fois.

  3. Boucle pour afficher les résultats : nous parcourons la collection en utilisant COUNT pour obtenir le nombre total d'entrées et imprimons le nom de chaque employé.

Sortie

Si vous exécutez le bloc PL/SQL ci-dessus, vous verrez un résultat comme celui-ci :

Nom de l'employé : John Doe
Nom de l'employée : Jane Smith
Nom de l'employé : Sam Wilson
Nom de l'employée : Sara Brown
Nom de l'employé : Mike Johnson

Points clés

Efficacité : l'utilisation de BULK COLLECT réduit le nombre de changements de contexte entre SQL et PL/SQL, ce qui le rend plus efficace pour le traitement de grands ensembles de données.

Gestion de données volumineuses : cette fonctionnalité est particulièrement utile lorsque vous travaillez avec de grands ensembles de données, car elle minimise la surcharge liée au traitement des lignes individuelles.

Cet exemple illustre l'utilisation de base de BULK COLLECT pour rassembler efficacement plusieurs lignes dans une collection PL/SQL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal