Set_membership

SQL

function Set_membership(IN subject_name CHAR(31), IN subject_categ INT, IN container_name CHAR(31), IN container_categ INT, IN state BOOLEAN); returns BOOLEAN;


Parametry

subject_name
jméno subjektu práv (uživatele, skupiny)
subject_categ
kategorie subjektu práv subject_name
container_name
jméno subjektu práv (skupiny, role)
container_categ
kategorie subjektu práv container_name
state
stav náležení


Od verze

7.0c

Popis

Funkce umožňuje zjístit nebo změnit stav náležení mezi subjektem práv subject_name a subjektem práv container_name.

Pokud parametr state má hodnotu TRUE, pak funkce zařadí první subjekt do druhého. Pokud parametr state má hodnotu FALSE, pak funkce vyřadí první subjekt z druhého. Pokud parametr state má hodnotu NULL, pak funkce zjistí, zda první subjekt je zařazen do druhého.

Je-li druhý subjekt role, pak lze její jméno container_name prefixovat jménem schématu, do něhož role patří.

Má-li parametr state hodnotu TRUE nebo FALSE, musí mít přihlášený uživatel oprávnění zařazovat do skupin nebo do rolí, jinak nastane chybový sqlstate W0129 (NO_RIGHT).



Návratová hodnota

Funkce vrací NULL v případě chyby. Pokud parametr state má hodnotu TRUE nebo FALSE, funkce vrací při úspěchu TRUE. Pokud parametr state má hodnotu NULL, funkce vrací TRUE, je-li první subjekt zařazen do druhého, nebo FALSE, pokud zařazen není.



Příklad

Zařazení uživatele David do skupiny Účetní:

CALL Set_membership('David', CATEG_USER, 'Účetní', CATEG_GROUP, TRUE);

Viz