Star
É possível definir os caracteres utilizados para representar o conjunto de todos os valores de um campo na base de dados usando o comando star. Ele afeta os comandos LOAD e SELECT subsequentes.
Sintaxe:
Star is[ string ]
Argumentos:
Argumento | Descrição |
---|---|
string |
Um texto arbitrário. Observe que a string deve estar entre sinais de aspas caso contenha espaços em branco. Se nada for especificado, star is; será adotado, isto é, não haverá nenhum símbolo star disponível a menos que seja especificado explicitamente. Essa definição será válida até que um novo comando star seja criada. |
O comando Star is não é recomendado para uso na parte de dados do script (em Section Application) se o Section Access for usado. Porém, o caractere de estrela tem suporte total para os campos protegidos na parte Section Access do script. Nesse caso, você não precisa usar o comando Star is explícito, pois ele sempre está implícito em Section Access.
Limitações
- Não é possível usar o caractere de estrela com campos chave, ou seja, campos que vinculam tabelas.
- Não é possível usar o caractere de estrela com qualquer campo afetado pelo comando Unqualify, pois isso pode afetar campos que vinculam tabelas.
- Não é possível usar o caractere de estrela com tabelas não lógicas, por exemplo, tabelas de carregamento de informações ou tabelas de carregamento de mapeamentos.
- Quando o caractere de estrela é usado em um campo de redução (um campo que se vincula aos dados) no Section Access, ele representa os valores listados nesse campo no Section Access. Ele não representa outros valores que possam existir nos dados, mas que não estão listados no Section Access.
- Não é possível usar o caractere de estrela com campos afetados por qualquer forma de redução de dados fora da área Section Access.
Exemplo:
O exemplo abaixo é uma amostra de um script de carregamento de dados exibindo a seção de acesso.
Star is *;
Section Access;
LOAD * INLINE [
ACCESS, USERID, PASSWORD, OMIT
ADMIN, ADMIN, ADMIN,
USER, USER1, U1, SALES
USER, USER2, U2, WAREHOUSE
USER, USER3, U3, EMPLOYEES
USER, USER4, U4, SALES
USER, USER4, U4, WAREHOUSE
USER, USER5, U5, *
];
Section Application;
LOAD * INLINE [
SALES, WAREHOUSE, EMPLOYEES, ORDERS
1, 2, 3, 4
];
Aplicam-se os seguintes:
- O sinal Star é *.
- O usuário USER1 não pode ver o campo SALES.
- O usuário USER2 não pode ver o campo WAREHOUSE .
- O usuário USER3 não pode ver o campo EMPLOYEES.
- O usuário USER4 é adicionado duas vezes à solução para OMITIR dois campos para esse usuário, SALES e WAREHOUSE.
- Foi adicionado um “*” ao USER5 para indicar que todos os campos listados em OMITIR estão indisponíveis. O asterisco * significa todos os valores listados, não todos os valores do campo.
- O usuário USER5 não pode ver os campos SALES, WAREHOUSE e EMPLOYEES , mas esse usuário pode ver o campo ORDERS.