forked from docs/doc-exports
Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com> Reviewed-by: Jiang, Beibei <beibei.jiang@t-systems.com> Co-authored-by: Lu, Huayi <luhuayi@huawei.com> Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
111 lines
6.1 KiB
HTML
111 lines
6.1 KiB
HTML
<a name="EN-US_TOPIC_0000001188521132"></a><a name="EN-US_TOPIC_0000001188521132"></a>
|
|
|
|
<h1 class="topictitle1">Granting Execution Permissions</h1>
|
|
<div id="body8662426"><p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p6732287593">This feature is used to give privileges to users for specific packages. As GaussDB does not support packages, all the procedures and functions defined in the specific packages will be granted the execution permssion.</p>
|
|
<p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p14973201863210"><strong id="EN-US_TOPIC_0000001188521132__en-us_topic_0237712301_b397922703217">Input</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_screen1381020382329">GRANT EXECUTE ON SAD.BAS_LOOKUP_MISC_PKG TO EIP_SAD;</pre>
|
|
<p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p3732133017320"><strong id="EN-US_TOPIC_0000001188521132__en-us_topic_0237712301_b14657427143516">Output</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_screen159251331358">GRANT EXECUTE ON procedure_name TO EIP_SAD;
|
|
GRANT EXECUTE ON function1_name TO EIP_SAD;</pre>
|
|
<div class="note" id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_note13345952417"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p33535914247">Both procedure _name and function1_name must belong to SAD.BAS_LOOKUP_MISC_PKG.</p>
|
|
</div></div>
|
|
<p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p10201451125810"><strong id="EN-US_TOPIC_0000001188521132__en-us_topic_0237712301_b20767727532">The execution permission</strong></p>
|
|
<p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p7312328264">The last authorization of the package is not converted.</p>
|
|
<p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p4312624260">--GRANT</p>
|
|
<p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p163161752152810"><strong id="EN-US_TOPIC_0000001188521132__en-us_topic_0237712301_b179251958192816">Input</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_screen1776143371817">Below should be created as 1spec/t603.SQL
|
|
CREATE OR REPLACE PACKAGE SAD.bas_dml_lookup_pkg IS
|
|
FUNCTION func_name RETURN VARCHAR2;
|
|
PROCEDURE data_change_logs ( pi_table_name IN VARCHAR2
|
|
, pi_table_key_columns IN VARCHAR2
|
|
, po_error_msg OUT VARCHAR2
|
|
);
|
|
END bas_dml_lookup_pkg;
|
|
/
|
|
GRANT EXECUTE ON SAD.bas_dml_lookup_pkg TO eip_sad;
|
|
==============================
|
|
Below should be created as 2body/t603.SQL
|
|
CREATE OR REPLACE PACKAGE BODY SAD.bas_dml_lookup_pkg IS
|
|
g_pkg_name CONSTANT VARCHAR2(30) := 'bas_dml_ic_price_rule_pkg' ;
|
|
g_func_name VARCHAR2(100);
|
|
|
|
FUNCTION func_name
|
|
RETURN VARCHAR2
|
|
IS
|
|
l_func_name VARCHAR2(100) ;
|
|
BEGIN
|
|
l_func_name := g_pkg_name || '.' || g_func_name ;
|
|
RETURN l_func_name ;
|
|
|
|
END func_name;
|
|
|
|
PROCEDURE data_change_logs ( pi_table_name IN VARCHAR2
|
|
, pi_table_key_columns IN VARCHAR2
|
|
, po_error_msg OUT VARCHAR2
|
|
)
|
|
IS
|
|
BEGIN
|
|
...
|
|
END data_change_logs;
|
|
|
|
END bas_dml_lookup_pkg;
|
|
/</pre>
|
|
<p id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_p81943918315"><strong id="EN-US_TOPIC_0000001188521132__en-us_topic_0237712301_b87913014194">Output</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001188521132__en-us_topic_0238518411_en-us_topic_0237362302_en-us_topic_0202727307_screen18116445194">BEGIN
|
|
INSERT INTO MIG_ORA_EXT.MIG_PKG_VARIABLES
|
|
( PACKAGE_NAME,SPEC_OR_BODY,VARIABLE_NAME
|
|
, VARIABLE_TYPE,CONSTANT_I,DEFAULT_VALUE
|
|
, RUNTIME_EXEC_I )
|
|
VALUES ( UPPER('bas_dml_lookup_pkg'), 'B', UPPER('g_pkg_name')
|
|
, UPPER( 'VARCHAR2(30)' ),TRUE,'bas_dml_ic_price_rule_pkg'
|
|
, FALSE ) ;
|
|
|
|
INSERT INTO MIG_ORA_EXT.MIG_PKG_VARIABLES
|
|
( PACKAGE_NAME,SPEC_OR_BODY,VARIABLE_NAME
|
|
, VARIABLE_TYPE,CONSTANT_I,DEFAULT_VALUE
|
|
, RUNTIME_EXEC_I )
|
|
VALUES ( UPPER('bas_dml_lookup_pkg'), 'B', UPPER( 'g_func_name' )
|
|
, UPPER( 'VARCHAR2(100)' ),FALSE,NULL
|
|
, FALSE ) ;
|
|
|
|
END ;
|
|
/
|
|
|
|
CREATE OR REPLACE FUNCTION SAD.bas_dml_lookup_pkg#bas_dml_lookup_pkg#func_name
|
|
RETURN VARCHAR2
|
|
PACKAGE
|
|
IS
|
|
MIG_PV_VAL_DUMMY_G_PKG_NAME VARCHAR2(30) := MIG_ORA_EXT.MIG_FN_GET_PKG_VARIABLE( 'SAD' ,'bas_dml_lookup_pkg' ,'g_pkg_name' )::VARCHAR2(30);
|
|
MIG_PV_VAL_DUMMY_G_FUNC_NAME VARCHAR2(100) := MIG_ORA_EXT.MIG_FN_GET_PKG_VARIABLE( 'SAD' ,'bas_dml_lookup_pkg' ,'g_func_name' )::VARCHAR2(100);
|
|
l_func_name VARCHAR2 ( 100 ) ;
|
|
|
|
BEGIN
|
|
l_func_name := MIG_PV_VAL_DUMMY_G_PKG_NAME || '.' || MIG_PV_VAL_DUMMY_G_FUNC_NAME ;
|
|
MIG_ORA_EXT.MIG_FN_SET_PKG_VARIABLE ( 'SAD' ,'bas_dml_lookup_pkg' ,'g_func_name' ,MIG_PV_VAL_DUMMY_G_FUNC_NAME ) ;
|
|
MIG_ORA_EXT.MIG_FN_SET_PKG_VARIABLE ( 'SAD' ,'bas_dml_lookup_pkg' ,'g_pkg_name' ,MIG_PV_VAL_DUMMY_G_PKG_NAME ) ;
|
|
|
|
RETURN l_func_name ;
|
|
END ;
|
|
/
|
|
|
|
CREATE OR REPLACE PROCEDURE SAD.bas_dml_lookup_pkg#data_change_logs
|
|
( pi_table_name IN VARCHAR2
|
|
, pi_table_key_columns IN VARCHAR2
|
|
, po_error_msg OUT VARCHAR2 )
|
|
PACKAGE
|
|
IS
|
|
BEGIN
|
|
...
|
|
END ;
|
|
/
|
|
|
|
GRANT EXECUTE ON FUNCTION SAD.bas_dml_lookup_pkg#bas_dml_lookup_pkg#func_name() TO eip_sad;
|
|
GRANT EXECUTE ON FUNCTION SAD.bas_dml_lookup_pkg#data_change_logs(VARCHAR2, VARCHAR2) TO eip_sad;</pre>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="dws_mt_0104.html">Oracle Syntax Migration</a></div>
|
|
</div>
|
|
</div>
|
|
|