Procédure stockée Oracle à l'aide du tableau comme paramètre pour insérer un tableau

J'ai été la recherche d'un exemple clair de cette situation, mais sans succès. Désolé si ça a déjà été répondu.

Je suis en train de faire quelque chose d'assez simple - une procédure stockée qui va prendre l'entrée et les insérer dans une table. Je veux prendre un tableau de plusieurs lignes et de faire de l'insertion une fois pour toutes.

Je pensais que ce serait simple, mais je n'ai pas trouvé un exemple qui montre moi.

Dans beaucoup d'exemples, je vois les gens de créer une fonction pour retourner un tableau - est-ce que je dois faire?

Pour l'instant j'ai:

CREATE OR REPLACE TYPE my_type  is table of  ( name varchar2(20), phone varchar2(10));

CREATE OR REPLACE PROCEDURE customer.insert_mydata(v_my_data my_type )
AS
BEGIN

   BEGIN
 insert into mytable(Name, phone)
 values (v_my_data.name, v_my_data.phone) ; 
      COMMIT;
   END;
EXCEPTION
   WHEN OTHERS
   THEN
      ROLLBACK;
---error logging      );
END;
¿Avez-vous trouvez des erreurs lors de l'utilisation de votre script? Fondamentalement, l'approche est la même: la création d'un objet explicite du type, puis d'un autre type, comme un tableau de object_type et ensuite, vous définissez le paramètre avec la table_of type. Si vous nous dire sur les erreurs ou les échecs, je vais essayer de les aider.
Merci, je vais obtenir le message d'erreur et la poste. merci encore.

OriginalL'auteur user1707389 | 2012-10-01