hi!
Die function hab ich einfach in nem
Sql-Editor erstellt.
als welcher user hast du die function erstellt? als welcher user bist du in den sql-editor reingekommen?
Was hat das denn mit den den usern zu
tun??? hä?
ein user hat eine tabelle, ein anderer eine function, ein dritter eine view … und solange ein user seine sachen nicht freigibt („granted“), schauen die anderen user durch die finger, wenn sie „fremde“ sachen mal benötigen
Und wo hab ich ein eigenes Objekt erstellt???
create or replace function
Und was ist ein hardcodierter string??
select fun_get_path(‚c:\blabla\bla\bla‘) from dual;
– und zwar das unter einfachem hochkomma
ein beispiel:
der user scott (mit dem password „tiger“
hat die funktion fun_get_path(pathname in varchar2) return varchar2); der user tomh möchte nun diese funktion verwenden, hat aber keine rechte darauf, also macht der user scott ganz einfach im sql-plus ein:
SQL>grant execute on fun_get_path to tomh;
wenn nun tomh die funktion aufrufen will, macht er entweder ein
SQL>select scott.fun_get_path(‚c:\blabla\bla\bla‘) from dual;
oder er (könnte aber auch scott machen, wenn’s public werden sollte) legt sich ein synonym an
SQL>create synonym fun_get_path for scott.fun_get_path;
nun kann tomh ein einfaches
SQL>select fun_get_path(‚c:\blabla\bla\bla‘) from dual;
absetzen
grüße,
tomh
ps: der insulanische oracle-link ist in der brettbeschreibung angegeben