2012-04-23 3 views
0

J'utilise ci-dessous requête dans SSRS 2008 et je reçois une erreur lorsque je clique sur le bouton « Suivant » sur la Conception fenêtre Requête dans Assistant Rapport.Oracle erreur de paramètre multivaleur

« Une erreur est survenue alors que la méthode de création de la requête a été en cours d'enregistrement ORA-00911:. Caractère non valide »

SELECT E.EMPID, E.NAME 
    FROM EMP E 
    WHERE E.EMPID IN (SELECT COLUMN_VALUE FROM TABLE(CAST(SPLIT(:I_IDS) AS TEMP_TBL))); 

Qu'est-ce que je fais mal?

+0

Désolé les gars! C'était à la fin du côlon .. qui a causé cette erreur .. très désolé !! – CoolArchTek

+0

Cela m'a fait trébucher avant aussi. Alors que le point-virgule est techniquement requis dans Oracle (même si divers outils de requête vous permettent de l'omettre), il provoque une erreur dans SSRS. – Davos

Répondre

1

Avez-vous essayé de simplifier votre clause WHERE à utiliser la condition:

WHERE E.EMPID IN (:I_IDS); 

- dans votre requête? (Cela ne fonctionnera pas pour plusieurs valeurs dans un client SQL normal, mais le fait dans les ensembles de données SSRS, selon mon expérience.)