Star
La stringa utilizzata per rappresentare l'insieme di tutti i valori di un campo nel database può essere impostata tramite l'istruzione star. Interessa le istruzioni LOAD e SELECT successive.
Sintassi:
Star is[ string ]
Argomenti:
Argomento | Descrizione |
---|---|
string |
Un testo arbitrario. Tenere presente che se la stringa contiene spazi deve essere racchiusa tra virgolette. Se non si specifica alcun valore, viene utilizzato star is;, ossia non è disponibile alcun simbolo star finché non viene specificato in maniera esplicita. Questa definizione è valida finché non si specifica una nuova istruzione star. |
Si sconsiglia l'uso dell'istruzione Star is nella parte dei dati dello script (sotto Section Application) se si utilizza Section Access. Il carattere asterisco è tuttavia pienamente supportato per i campi protetti nella parte Section Access dello script. In questo caso non è necessario utilizzare l'istruzione Star is esplicita in quanto è sempre implicita in Section Access.
Limiti
- Non è possibile utilizzare il carattere asterisco con i campi chiave, ovvero i campi che collegano le tabelle.
- Non è possibile utilizzare il carattere asterisco con qualsiasi campo interessato dall'istruzione Unqualify, in quanto ciò può avere ripercussioni sui campi che collegano le tabelle.
- Non è possibile utilizzare il carattere asterisco con tabelle non logiche, ad esempio tabelle info-load o tabelle mapping-load.
- Quando viene utilizzato in un campo di riduzione (un campo collegato ai dati) in Section Access, il carattere asterisco rappresenta i valori elencati in questo campo in Section Access. Non rappresenta altri valori che possono esistere nei dati, ma non sono elencati in Section Access.
- Non è possibile utilizzare il carattere asterisco con campi interessati da qualsiasi forma di riduzione dei dati al di fuori dell'area Section Access.
Esempio
L'esempio seguente è un estratto di uno script di caricamento dei dati contenente la sezione relativa al controllo degli accessi.
Star is *;
Section Access;
LOAD * INLINE [
ACCESS, USERID, OMIT
ADMIN, ADMIN,
USER, USER1, SALES
USER, USER2, WAREHOUSE
USER, USER3, EMPLOYEES
USER, USER4, SALES
USER, USER4, WAREHOUSE
USER, USER5, *
];
Section Application;
LOAD * INLINE [
SALES, WAREHOUSE, EMPLOYEES, ORDERS
1, 2, 3, 4
];
Viene applicato quanto segue:
- Il segno Star corrisponde a *.
L'utente ADMIN visualizza tutti i campi. Non viene omesso nulla.
- L'utente USER1 non può visualizzare il campo SALES.
- L'utente USER2 non può visualizzare il campo WAREHOUSE .
- L'utente USER3 non può visualizzare il campo EMPLOYEES.
- L'utente USER4 è stato aggiunto due volte alla soluzione per omettere (OMIT) due campi relativi a questo utente, SALES e WAREHOUSE.
- USER5 presenta un “*” aggiunto che significa che tutti i campi elencati in OMIT sono indisponibili, ovvero, l'utente USER5 non può vedere i campi SALES, WAREHOUSE e EMPLOYEES ma questo utente può visualizzare il campo ORDERS.