A qui il peut répondre,fonction oracle pour revenir liste des dates comme objet
Je suis en train de retourner la liste des dates et jours de la semaine à utiliser dans d'autres fonctions. Le code ci-dessous est compilé sans erreur. Mais il devrait donner une sortie de 15 jours (via la variable V_MAX_DAYS) et le numéro du jour de cette semaine.
J'ai essayé de mettre en œuvre comme ceci, mais je ne peux pas obtenir de sortie en utilisant DBMS_OUTPUT. Je veux le tester mais j'ai l'erreur ORA-06532 lors de l'exécution. Mon but est de retourner des valeurs à l'application asp.net comme nous l'avons fait en utilisant SYS_REFCURSOR. Comment puis-je y parvenir? Nous vous remercions de votre préoccupation,
Le script est comme ci-dessous:
CREATE OR REPLACE TYPE DATE_ROW AS OBJECT
(
WEEKDAY_VALUE DATE,
DATE_IN_LIST VARCHAR2(5)
)
/
CREATE OR REPLACE TYPE DATE_TABLE as table of DATE_ROW
/
CREATE OR REPLACE FUNCTION FN_LISTDATES
RETURN DATE_TABLE
IS
V_DATE_TABLE DATE_TABLE := DATE_TABLE();
V_MAX_DAYS NUMBER := 15;
V_CALCULATED_DATE DATE;
V_WEEKDAY VARCHAR2 (5);
BEGIN
FOR X IN -2 .. V_MAX_DAYS
LOOP
SELECT TO_DATE (TO_CHAR (SYSDATE + X, 'DD.MM.YYYY'))
INTO V_CALCULATED_DATE
FROM DUAL;
V_DATE_TABLE.EXTEND;
V_DATE_TABLE(X) := DATE_ROW(V_CALCULATED_DATE, 'Test');
END LOOP;
RETURN V_DATE_TABLE;
END;
/
Si vous voulez obtenir une sortie de PL/SQL, vous devez définir SERVEROUTPUT: 'set SERVEROUTPUT on'. – FrustratedWithFormsDesigner
Je vais avec TOAD 9.6.0.27 –
FWFD, des recommandations pour le cas de test? Jusqu'à présent, je comprends que vous me proposez de le tester en utilisant la console SQLPlus. BTW, je suppose que je devrais essayer avec des fonctions de table pipelined depuis 20 lignes n'est pas beaucoup. Mais il va être appelé pour chaque utilisateur connecté au site Web. –