SECLABEL_BY_NAME funzione scalare

La funzione SECLABEL_BY_NAME restituisce l'etichetta di sicurezza specificata. L'etichetta di sicurezza restituita ha un tipo di dati DB2SECURITYLABEL. Utilizzare questa funzione per inserire un'etichetta di sicurezza denominata.

Read syntax diagramSkip visual syntax diagramSECLABEL_BY_NAME(security-policy-name ,security-label-name)

Lo schema è SYSIBM.

security - policy - name
Una stringa che specifica una politica di sicurezza che esiste al server corrente (SQLSTATE 42704). La stringa deve essere un carattere o una stringa costante o variabile host.
nome - etichetta - etichetta
Un'espressione che restituisce il nome di un'etichetta di sicurezza che esiste al server corrente per la politica di sicurezza denominata da security - policy - name (SQLSTATE 4274I). L'espressione deve restituire un valore che è un tipo di dati integrato di tipo CHAR, VARCHAR, GRAPHIC o VARGRAPHIC.

Esempi

Nei seguenti esempi, Tina cerca di inserire una riga nella tabella REGIONI protetta dalla politica di sicurezza denominata CONTRIBUTI. Tina vuole che la fila sia protetta dall'etichetta di sicurezza denominata EMPLOYEESECLABEL.

  • Esempio 1: questa istruzione ha esito negativo perché CONTRIBUTIONS.EMPLOYEESECLABEL è un identificativo sconosciuto:
       INSERT INTO REGIONS
       VALUES (CONTRIBUTIONS.EMPLOYEESECLABEL, 1, 'Southwest')   -- incorrect 
  • Esempio 2: questa istruzione non riesce perché il primo valore è una stringa, non ha un tipo di dati DB2SECURITYLABEL:
       INSERT INTO REGIONS
       VALUES ('CONTRIBUTIONS.EMPLOYEESECLABEL', 1, 'Southwest') -- incorrect
  • Esempio 2: questa istruzione riesce perché la funzione SECLABEL_BY_NAME restituisce un'etichetta di sicurezza che ha un tipo di dati DB2SECURITYLABEL:
       INSERT INTO REGIONS
       VALUES (SECLABEL_BY_NAME('CONTRIBUTIONS', 'EMPLOYEESECLABEL'),
         1, 'Southwest')                                         -- correct