Précédent   Forum des professionnels en informatique > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/10/2006, 11h58   #1
Membre éprouvé
 
Inscription : septembre 2004
Messages : 465
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 465
Points : 412
Points : 412
Par défaut [Oracle 8i] UTL_FILE_DIR en PL/SQL

Bonjour.

Mon souci est le suivant: j'aimerais récupérer la valeur du paramètre UTL_FILE_DIR et l'utiliser dans un programme PL/SQL.

Sous sqlplus, ça fonctionne:
Code :
1
2
3
4
5
6
7
SQL> SELECT value FROM SYS.V_$PARAMETER  WHERE NAME = 'utl_file_dir';
 
VALUE
--------------------------------------------------------------------------------
/sas/base_q1/mtfiles
 
SQL>
mais lorsque je compile mon programme PL/SQL (sous Toad), sur la requête
Code :
"SELECT value INTO ls_rep FROM SYS.V_$PARAMETER WHERE NAME = 'utl_file_dir'"
j'ai l'erreur suivante:
Code :
PLS-00201: identifier 'SYS.V_$PARAMETER' must be declared
Je suis loggé sous le même utilisateur sur Sqlplus et Toad.

Une idée?

Merci.
GoLDoZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/10/2006, 12h02   #2
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
si on avait le source exact ça nous aiderait je pense
orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/10/2006, 12h58   #3
Expert Confirmé
 
Homme
Chef de projet en SSII
Inscription : janvier 2004
Messages : 2 866
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : Conseil

Informations forums :
Inscription : janvier 2004
Messages : 2 866
Points : 3 448
Points : 3 448
Je suppose que le droit de faire un select sur cette vue t'es donné via un rôle. Oracle n'en tient pas compte en PL/SQL ou en sql dynamique. Il faut donc que le priviliège te soit donner directement :
Code :
GRANT SELECT ON v$parameter TO tonUser;
__________________
Un problème sans solution est un problème mal posé

Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP.
plaineR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/10/2006, 14h15   #4
Membre éprouvé
 
Inscription : septembre 2004
Messages : 465
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 465
Points : 412
Points : 412
@Fred: le source ne t'apportera pas grandchose, mais disons que ceci ne compile pas:
Code :
1
2
3
4
5
6
CREATE OR REPLACE PROCEDURE test_v IS
ls_rep VARCHAR2(200);
BEGIN
SELECT value INTO ls_rep FROM SYS.V_$PARAMETER WHERE NAME = 'utl_file_dir';
dbms_output.put_line (ls_rep);
END test_v;
@plaineR: je vais voir si je peux modifier les droits sur ce user, je sens plutôt un truc dans le genre
GoLDoZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h48.


 
 
 
 
Partenaires

Hébergement Web