Como funciona admin() e task() e qual a diferenca entre eles?
- Os comandos admin() e task() são UDRs existentes no banco sysadmin com a finalidade de permitir a administração do banco através de sessões SQLs.
- Antes da versão 11.10 estas tarefas só podiam ser feitas através dos comandos onmode/onspaces/onaudit/onparam em linha de comando.
- Com esta nova opção de administração abriu-se a possibilidade de permitir que a manutenção do banco seja feita diretamente através da aplicação utilizada pelo usuário, fazendo assim que o banco se torne cada vez mais independente de um DBA.
- A execução destes comandos geram um historico na tabela sysadmin:command_history
- Para execução dos comandos existe alguns mnemonicos dos comandos mais utilizados, os demais seguem sintaxe igual a utilizada na linha de comando. Para mais informações, consultar o manual SQLADMIN Portal.
Exemplo
-- $ onspaces -c -d dbspace2 -p /work/CHUNKS/dbspace2 -o 0 -s 20000 EXECUTE FUNCTION admin('create dbspace', 'dbspace2', '/work/CHUNKS/dbspace2', '20M'); -- $ onmode -M 4096 EXECUTE FUNCTION ADMIN("ONMODE", "M", "4096KB");
Ambos comandos fazem o mesmo trabalho a diferença está no modo de retornar o resultado da execução
admin
Retorna apenas um integer com a sequencia do output do comando na tabela command_history. Se o valor for positivo, o comando foi executado com sucesso, se for negativo representa que ocorreu um erro.
Obs.: O numero negativo representa a sequencia na tabela command_history porém com valor negativo.
task
Retorna a string de retorno do comando.
- 344 leituras
Tags:





Comentar