Prova da Semana – Comentário da prova do TRF-02 – Infraestrutura – 2017 – Analista de TI – BD
Abaixo comentamos as questões de banco de dados da prova de infraestrutura do TRF-02 deste último final de semana. A banca foi a CONSULPLAN. Questões um pouco complexas mais interessantes.
- Ano: 2017 Banca: Consulplan Órgão: TRF-02 Cargo: Analista de Infraestrutura. Q. 38
O SQL Server 2008 é um SGBD (Sistemas de Gerenciamento de Banco de Dados), da Microsoft, muito utilizado pelas organizações, pois é robusto e oferece muita segurança para as transações. Há muitas ferramentas que facilitam a administração, o desenvolvimento e a própria implementação em diversos ambientes. Na administração do SQL Server 2008 R2 um conceito muito importante é o da replicação, em que é utilizado um modelo que, muitas vezes, é chamado de metáfora de replicação, baseado em alguns elementos. Esses elementos são: Publisher, Distributor, Subscribers, Publicação e Artigo. Sobre o elemento Publisher, assinale a alternativa correta.
- É um servidor SQL Server que armazena uma réplica dos dados e recebe atualizações periódicas dos dados.
- É um servidor SQL Server 2008 R2 que está disponibilizando dados para serem replicados para outros servidores.
- Pode ser uma tabela ou um objeto do Banco de dados, como um Stored Procedure que é configurado para replicação.
- Recebe de outro elemento uma cópia dos dados que foram alterados e devem ser replicados e disponibilizados para outro (s) elemento (s).
Comentário: Replicação é o mecanismo para a criação e manutenção de cópias dos mesmos dados de um servidor para outro ou cópias de dados situados em um mesmo servidor, mas em instâncias diferentes, servindo para sincronizá-los e manter a consistência. De posse desta informação, vamos comentar cada uma das alternativas acima.
Podemos observar que a alternativa A se refere ao elemento Subscriber ou Assinante. Ele recebe as atualizações do publicador diretamente ou por meio do distribuidor de conteúdo no momento da publicação.
A alternativa B está correta. O publicador é o pacote que irá conter os objetos que farão parte da replicação. Dentro desse pacote, as tabelas, store procedures, views e user defined functions são referenciados como artigos ou articles.
Percebam que a alternativa C está definindo, justamente, os artigos. E não os Publisher, portanto, temos mais uma alternativa incorreta.
Na alternativa D temos a definição de um distribuidor.
Observem uma visão geral dos elementos presentes no modelo de replicação na figura abaixo:
Gabarito: B.
- Ano: 2017 Banca: Consulplan Órgão: TRF-02 Cargo: Analista de Infraestrutura. Q. 39
O SQL*Plus é uma ferramenta disponível no Oracle que permite a inserção de instruções SQL (Structured Query Language) usando o teclado, ou até mesmo a execução de scripts contendo instruções SQL. Com o SQL*Plus a integração com o banco de dados é mais perceptível, uma vez que ao digitar as instruções SQL observa-se os resultados retornados pelo banco de dados. No SQL*Plus os comandos podem ser abreviados e usados para editar instruções SQL, salvar, recuperar e executar arquivos, como exemplos. Acerca de alguns dos comandos SQL*Plus assinale a alternativa incorreta.
- O comando RUN pode ser abreviado para somente R.
- O comando SAVE pode ser abreviado para somente S.
- O comando APPEND pode ser abreviado para somente A.
- O comando CHANGE pode ser abreviado para somente C.
Comentário: Essa questão é um pouco, para não dizer totalmente, decoreba. Se você já usou alguma vez o SQL*Plus, mais especificamente as abreviações pode até se lembrar que RUN pode ser abreviado como R. Veja a tabela abaixo com algumas abreviações usadas pelos SQL*Plus.
Gabarito: B.
- Ano: 2017 Banca: Consulplan Órgão: TRF-02 Cargo: Analista de Infraestrutura. Q. 40
O PL/SQL (Procedural Language/Structured Query Language) é uma linguagem procedural, que foi adicionada pela Oracle, a partir do Oracle Database 6, a qual permite a escrita de programas que contêm instruções SQL. Na linguagem PL/SQL, os programas são divididos em estruturas conhecidas como blocos, sendo que cada um desses blocos contém instruções PL/SQL e SQL. Essas instruções são: de declaração, executáveis e de tratamento de exceções. Exceções são usadas para tratamento de erros em tempo de execução, no código PL/SQL, em que algumas exceções já são predefinidas. Sobre exceções predefinidas, assinale a alternativa INCORRETA.
- TOO_MANY_ROWS: uma instrução SELECT INTO retornou mais de uma linha.
- STORAGE_ERROR: o módulo PL/SQL ficou em memória ou a memória se corrompeu.
- INVALID_NUMBER: ocorreu um erro de aritmética, conversão, truncamento ou restrição de tamanho.
- SUBSCRIPT_BEYOND_COUNT: foi feita uma tentativa de referenciar um elemento de tabela aninhada ou varray usando um número de índice maior do que o número de elementos da coleção.
Comentário: Essa questão possui três alternativas corretas e apenas uma errada. Vamos optar por comentar apenas a alternativa incorreta. A definição da alternativa C trata do VALUE_ERROR e não do INVALID_NUMBER, como podemos observar na tabela abaixo.
[Atualização] Um aluno me chamou atenção que a alternativa B apresenta um erro, ao invés de ficou em memória, deveríamos ter ficou sem memória. A ausência deste "s" muda totalmente o sentido da afirmação. Desta forma, creio que cabe recurso contra a questão. A própria tabela abaixo corrobora com esse raciocínio.
Gabarito: C.
Qualquer dúvida estou às ordens,
Forte abraço e bons estudos,
Thiago Cavalcanti