PROVA: TRE RN – Estagiário de Informática – Banco de Dados 2016 PDF
GABARITO: TRE RN – Estagiário de Informática – Banco de Dados 2016 PDF
LÍNGUA PORTUGUESA
Leia o texto para responder as seguintes questões. TEXTO
Caminhos alternativos
Pensar a mobilidade exige alternativas de inserção segura e confortável de todos na dinâmica da cidade.
José Carlos de Souza Mobilidade urbana é um conceito que essencialmente se refere à ideia de deslocamento de uma pessoa de um ponto a outro da cidade. Numa abordagem mais ampla, ele ainda abrange o conjunto de aspectos que determinam as circunstâncias em que esse deslocamento se realiza: infraestrutura, gestão de trânsito, segurança. No entanto, a forma como esse conceito vem sendo problematizado, em razão do desafio em que se transformou o deslocamento das pessoas nos grandes centros urbanos, exige uma ampliação de seu
significado.
O crescimento desordenado das cidades brasileiras, o adensamento populacional dos grandes centros urbanos, a priorização do carro em detrimento das alternativas de transporte coletivo e a falta de investimentos na infraestrutura viária criaram nos últimos anos um cenário caótico no que diz respeito ao deslocamento das pessoas.
Nos últimos dez anos, grande parte da população dobrou o tempo necessário para ir e vir do trabalho. O resultado é menos tempo para o lazer, para a educação, para o convívio com a família e amigos: uma verdadeira circunstância de exclusão social.
O preço pago pela sociedade por essa situação desastrosa em que se transformou a questão da mobilidade urbana é algo difícil de dimensionar, mas não há dúvidas de que, se nada for feito, a situação ainda pode piorar. Daí, o motivo pelo qual a discussão sobre mobilidade urbana precisa ser realizada com seriedade e urgência tanto pelas autoridades quanto pelo cidadão comum.
Pensar mobilidade urbana vai muito além de restringir a circulação de automóveis, ampliar o número de ciclovias ou de linhas de metrô, de priorizar o transporte coletivo em detrimento do particular.
Significa também encontrar alternativas de inserção segura e confortável de todas as pessoas na dinâmica da cidade, oferecendo múltiplas possibilidades para que elas possam ocupar o espaço público e por ele circular, transformando esse processo numa experiência rica de interação e integração social.
Esse talvez seja o sentido mais profundo que o conceito de mobilidade urbana deva ganhar,
enriquecendo o próprio significado que se possa atribuir à ideia de urbanidade e cidadania.
(extraído de http://www.cartaeducacao.com.br/aulas/caminhos– alternativos/15.10.2015)
O autor atribui uma circunstância de exclusão social a:
- A circulação de automóveis, a ampliação de ciclovias e de linhas do metrô.
- O tempo gasto em deslocamento em detrimento do tempo dedicado ao lazer, ao convívio
- O alto custo do investimento financeiro no lazer
- A falta de seriedade na abordagem do problema de mobilidade
- O crescimento desordenado das cidades brasileiras.
Assinale a alternativa cujo verbo tenha a mesma regência que o verbo destacado no trecho: “Mobilidade urbana é um conceito que essencialmente se refere à ideia de deslocamento de uma pessoa de um ponto a outro da cidade”:
- Admirávamos sua dedicação às causas
- Ela, durante o discurso, fez alusão à ideia do
- Meus comentários aludiram à herança genética de seu
- Ela era favorável à ideia de viajar pelo
- Agradeci o presente a meu
O período “No entanto, a forma como esse conceito vem sendo problematizado” transposto para a voz ativa teria a seguinte re-escritura:
- No entanto, a forma como problematizam esse
- No entanto, a forma como vem problematizando esse
- No entanto, a forma como vêm problematizando esse
- No entanto, a forma como veem problematizando esse
|
- No entanto, a forma como veem problematizado esse
No trecho “O preço pago pela sociedade por essa situação desastrosa em que se transformou a questão da mobilidade urbana é algo difícil de dimensionar, mas não há dúvidas de que, se nada for feito, a situação ainda pode piorar”. A colocação pronominal está correta assim como está na alternativa:
- Tais palavras não dizem-se aos
- Se o vê chegar, ela se empertiga e ergue-se da
- Tenho tornado-me grande defensor das causas
- Hoje discute-se muito sobre mobilidade urbana.
- Aluguei uma casa para mim
O emprego do acento indicador de crase no trecho “Esse talvez seja o sentido mais profundo que o conceito de mobilidade urbana deva ganhar, enriquecendo o próprio significado que se possa atribuir à ideia de urbanidade e cidadania” dá-se para marcar a fusão da preposição “A” com o artigo definido “A”. A exigência da preposição se faz por:
- O nome “ideia”.
- Os nomes “urbanidade e cidadania”.
- O verbo “poder”.
- O nome “significado”
- O verbo “atribuir”.
No fragmento: “O crescimento desordenado das cidades brasileiras, o adensamento populacional dos grandes centros urbanos, a priorização do carro em detrimento das alternativas de transporte coletivo e a falta de investimentos na infraestrutura viária criaram nos últimos anos um cenário caótico no que diz respeito ao deslocamento das pessoas”. A grafia das palavras está correta exceto em uma alternativa. Assinale-a:
- Microrregião,
- Copiloto,
- Autoestima, afro-descendente.
- Afro-brasileiro,
|
- Anti-higiênico, super-homem.
No fragmento “mas não há dúvidas de que, se nada for feito, a situação ainda pode piorar” o “que” é:
- Conjunção subordinativa integrante introduzindo uma oração subordinada substantiva completiva
- Conjunção subordinativa integrante introduzindo uma oração subordinada substantiva objetiva
- Pronome relativo introduzindo uma oração subordinada adjetiva explicativa.
- Pronome relativo introduzindo uma oração subordinada adjetiva restritiva.
- Conjunção coordenativa introduzindo uma oração subordinada adjetiva explicativa.
Leia:
“Transformou em direito o acesso dos cidadãos à banda larga”.
“O acesso à banda larga tornou-se, pela primeira vez, um direito individual”.
O acento indicador de crase nos dois fragmentos dá-se:
- Por exigência da expressão banda larga e é um caso de regência
- Por exigência da palavra direito e é um caso de regência
- Por exigência da palavra acesso e é um caso de regência
- Por exigência da palavra cidadãos e é um caso de regência
- Por exigência da palavra acesso e é um caso de regência nominal.
A vírgula está bem colocada na alternativa:
- Durante o espetáculo, eles, ficavam atentos a cada movimento do
- Ali, naquela situação não nos importava a
- Ele estava bastante preocupado, e poucos notavam sua preocupação.
- Erguia a taça, exibia seu conteúdo, e fazia um brinde à
- Estava lá naquela terra, isto é no país
Assinale a alternativa cujas palavras devem receber acento gráfico:
- Heroi, prejuizo,
- Tipoia, veem,
- Silencio, feiura,
- Espermatozoide, juizes,
- Polens, ideia,
CONHECIMENTOS ESPECÍFICOS
Uma empresa de desenvolvimento de software pretende fazer uma correção em um sistema de cadastro que disponibilizam na web, atualmente é permitido de forma errônea que cadastros diferentes possuam o mesmo email. Qual consulta é usada para atualizar a estrutura, no MySQL, da tabela “cadastros” de forma que os dados da coluna “email” não possam ser duplicados?
- ALTER TABLE cadastros ADD UNIQUE (email).
- UPDATE TABLE cadastros ADD UNIQUE (email).
- ALTER TABLE cadastros SET email
- UPDATE TABLE cadastros SET email
- UPDATE TABLE cadastros SET UNIQUE
Um E-Commerce normalmente fornece um carrinho de
compras para que os visitantes possam escolher vários produtos e realizar a compra de todos ao mesmo tempo posteriormente. Supondo que o administrador deseja saber quando um produto foi adicionado ao carrinho, é necessário uma tabela que armazene as seguintes informações: Nome do Visitante, Produto Adicionado e Horário da Inclusão. Qual a sintaxe correta para criar essa tabela no MySQL?
- MAKE `historico` (
`cod_historico` INT NOT NULL AUTO_INCREMENT,
`nome_visitante` VARCHAR(255) NULL,
`produto` VARCHAR(255) NULL,
`horario` TIMESTAMP NULL), PRIMARY KEY (`cod_historico`).
- CREATE TABLE `historico` (
`cod_historico` INT NOT NULL AUTO_INCREMENT,
`nome_visitante` VARCHAR 255 NULL,
`produto` VARCHAR 255 NULL,
`horario` TIMESTAMP NULL, PRIMARY KEY (`cod_historico`)).
- CREATE TABLE `historico` (
`cod_historico` INT NOT NULL AUTO_INCREMENT,
`nome_visitante` VARCHAR(255) NULL,
`produto` VARCHAR(255) NULL,
`horario` TIMESTAMP NULL, PRIMARY KEY (`cod_historico`)).
- CREATE TABLE `historico`
`cod_historico` INT NOT NULL AUTO_INCREMENT,
`nome_visitante` VARCHAR(255) NULL,
`produto` VARCHAR(255) NULL,
`horario` TIMESTAMP NULL, PRIMARY KEY (`cod_historico`)).
- MAKE TABLE `historico`
`cod_historico` INT NOT NULL AUTO_INCREMENT,
`nome_visitante` VARCHAR(255) NULL,
`produto` VARCHAR(255) NULL,
`horario` TIMESTAMP NULL, PRIMARY KEY (`cod_historico`)).
Na última atualização de um Sistema Acadêmico, a tabela “notas_auxiliares” se tornou dispensável, então a equipe de desenvolvimento decidiu fazer uma limpeza no banco de dados para otimizar os recursos disponíveis. No MySQL, como é possível remover uma tabela com todos os seus dados?
- Executando a consulta: DROP TABLE notas_auxiliares.
data –table notas_auxiliares.
- Executando a consulta: DROP TABLE notas_auxiliares WITH
- Executando o comando: mysql-drop-table
- Executando a consulta: DROP WITH DATA TABLE
No Sistema FarmaciaFacil, sempre que os usuários alteravam o CPF de um cliente, apenas os onze primeiros caracteres eram exibidos. O suporte técnico detectou que a coluna “cpf” estava definido com o tipo CHAR com tamanho 11. Sabendo que o CPF possui quatorze caracteres incluindo a pontuação, qual a consulta pode ser usada para alterar o tipo de uma coluna no MySQL?
- ALTER TABLE cliente ALTER COLUMN cpf CHAR(14).
- ALTER TABLE cliente UPDATE COLUMN cpf CHAR(14).
- UPDATE TABLE cliente CHANGE COLUMN cpf CHAR(14).
- ALTER TABLE cliente CHANGE COLUMN cpf CHAR(14).
- UPDATE TABLE cliente ALTER COLUMN cpf CHAR(14).
Em uma escola de ensino médio na Bahia, a equipe de informática ficou encarregada de modelar o banco de dados para um sistema acadêmico. Considerando que cada aluno pode estar matriculado em mais de um curso e um curso pode ter vários alunos matriculados ao mesmo tempo, e que ambas possuem as colunas “codigo”, que é chave primária, e “nome”. Qual a sintaxe para criar a tabela auxiliar desse relacionamento?
- MAKE TABLE IF NOT EXISTS `aluno_curso` (
`codigo_aluno` INT(11) NOT NULL,
`codigo_curso` INT(11) NOT NULL
)
- MAKE TABLE IF NOT EXISTS `aluno_curso` (
`codigo_aluno` INT(11) NOT NULL,
`codigo_curso` INT(11) NOT NULL, FOREIGN KEY (`codigo_aluno`) REFERENCES `alunos` (`codigo`), FOREIGN KEY (`codigo_curso`) REFERENCES `cursos` (`codigo`)
)
- CREATE TABLE `aluno_curso` (
`codigo_aluno` INT(11) NOT NULL,
`codigo_curso` INT(11) NOT NULL, FOREIGN KEY (`codigo_aluno`)
REFERENCES `alunos` (`codigo`), FOREIGN KEY (`codigo_curso`) REFERENCES `cursos` (`codigo`)
)
- CREATE TABLE IF NOT EXISTS `aluno_curso` (
`codigo_aluno` INT(11) NOT NULL,
`codigo_curso` INT(11) NOT NULL, FOREIGN KEY (`codigo_aluno`), FOREIGN KEY (`codigo_curso`)
)
- CREATE TABLE `aluno_curso` (
`codigo_aluno` INT(11) NOT NULL,
`codigo_curso` INT(11) NOT NULL, FOREIGN KEY (`codigo_aluno`), FOREIGN KEY (`codigo_curso`)
)
Segundo a documentação oficial o MySQL suporta vários Storage Engines, como por exemplo o MyISAM e o InnoDB. Qual destes não é um Storage Engine do MySQL?
A equipe de desenvolvimento deseja armazenar no banco de dados a idade dos clientes seguido da palavra “anos”. Qual a forma correta de criar um trigger no MySQL que faça a alteração da idade antes de ser incluída na tabela?
- DELIMITER $$
CREATE TRIGGER formatar_cpf BEFORE INSERT ON clientes FOR NEW ROW
BEGIN
SET NEW.idade = CONCAT(NEW.idade, ” anos”); END; $$
DELIMITER ;
- DELIMITER $$
CREATE TRIGGER formatar_cpf BEFORE INSERT ON clientes FOR EACH ROW
BEGIN
SET NEW.idade = CONCAT(NEW.idade, ” anos”); END; $$
DELIMITER ;
- DELIMITER $$
CREATE TRIGGER formatar_cpf ON clientes BEFORE INSERT FOR EACH ROW
BEGIN
SET NEW.idade = CONCAT(NEW.idade, ” anos”); END; $$
DELIMITER ;
- DELIMITER $$
CREATE TRIGGER formatar_cpf ON clientes BEFORE INSERT FOR NEW ROW ONLY
BEGIN
SET NEW.idade = CONCAT(NEW.idade, ” anos”); END; $$
DELIMITER ;
- DELIMITER $$
CREATE TRIGGER formatar_cpf BEFORE INSERT ON clientes FOR EACH ROW
SET NEW.idade = CONCAT(NEW.idade, ” anos”); END; $$
DELIMITER ;
Durante uma atualização de sistemas a equipe de desenvolvimento recebeu uma solicitação para zerar o histórico de acessos da base de dados. Levando em consideração que o nome da tabela é “historico”, qual seria a sintaxe correta para remover todos os dados?
- TRUNCATE historico
- DROP DATA FROM historico
- DELETE ALL historico
- TRUNCATE DATA FROM historico
- TRUNCATE historico DATA ONLY
Figura 1
Devido a uma auditoria de última hora a empresa XPTO deverá gerar vários relatórios a partir da base de dados do CompreFacil, seu sistema de vendas online. O Sistema Gerenciador de Banco de Dados (SGBD) utilizado foi o MySQL 5.5. A figura 1 representa parte da
estrutura do banco de dados: O primeiro relatório exigido pela equipe de auditoria foi a de clientes da empresa. Qual a sintaxe correta para a obtensão dessa informação?
- SELECT ALL FROM clientes;
- SELECT * FROM clientes;
- GET ALL FROM clientes;
- GET * FROM clientes;
- GET clientes;
Em seguida foi solicitado o relatório dos produtos fornecidos pela XPTO cujo o valor ultrapasse os R$ 200,00. A partir da clausula FROM, qual a sintaxe correta para filtrar os produtos por preço?
- FROM produtos WITH valor > 200;
- FROM produtos FILTER valor > 200;
- FROM produtos FILTER valor MIN 200;
- FROM produtos WHERE valor > 200;
- FROM produtos WHERE valor >= 200;
Após a análise dos produtos e clientes, foi solicitado o relatório das vendas do mês de abril do ano de 2015 cujo o total da venda ultrapasse os R$ 2.000,00. Como obter
o valor total de uma venda sendo que a tabela de vendas não possui uma coluna para o valor total?
- SELECT v.cod_venda, v.cod_cliente, SUM(p.valor) AS valor_total, horario
FROM vendas v
JOIN produtos_vendas pd ON (v.cod_venda = pd.cod_venda)
JOIN produtos p (p.cod_produto = pd.cod_produto)
GROUP BY v.cod_venda
- SELECT v.cod_venda, cod_cliente, COUNT(p.valor) AS valor_total, v.horario
FROM vendas v
JOIN produtos_vendas pd ON (v.cod_venda = pd.cod_venda)
JOIN produtos p ON (p.cod_produto = pd.cod_produto)
GROUP BY v.cod_venda
- SELECT v.cod_venda, v.cod_cliente, SUM(p.valor) AS valor_total, horario
FROM vendas v
JOIN produtos_vendas pd ON (v.cod_venda = pd.cod_venda)
JOIN produtos p ON (p.cod_produto = p.cod_produto)
GROUP BY v.cod_venda
- SELECT cod_venda, v.cod_cliente, SUM(p.valor) AS valor_total, v.horario
FROM vendas v
JOIN produtos_vendas pd ON (v.cod_venda = p.cod_venda)
JOIN produtos p ON (p.cod_produto = pd.cod_produto)
GROUP BY v.cod_venda
- SELECT cod_venda, v.cod_cliente, SUM(p.valor) AS valor_total, v.horario
FROM vendas v
JOIN produtos_vendas pd ON (v.cod_venda = pd.cod_venda)
JOIN produtos p ON (p.cod_produto = pd.cod_produto)
GROUP BY v.cod_venda
Devido a falhas apontadas no resultado da auditoria, a empresa XPTO decidiu fazer melhorias no CompreFacil, uma delas é adicionar um filtro que exibe todos os clientes que possuem no início, meio ou fim de seu nome completo o termo pesquisado. Como ficaria a cláusula WHERE da consulta dessa busca caso fosse pesquisado o termo “silva”?
- WHERE nome LIKE “%silva%”;
- WHERE nome = “silva%”;
- WHERE nome LIKE “*silva*”;
- WHERE nome = “*silva*”;
- WHERE nome HAS “silva”;
O CompreFacil está com problemas de performance e a equipe de manutenção está fazendo um levantamento das consultas feitas pelo sistema ao banco de dados, para o cadastro de clientes a equipe está usando o nome João que é o nome do membro mais antigo da equipe. Qual a sintaxe correta da consulta de Inserção de clientes?
- INSERT INTO cliente (cod_cliente, nome) VALUES (1, “João”);
- PUT INTO clientes (cod_cliente, nome) VALUE (1, “João”);
- INSERT INTO clientes (cod_cliente, nome) VALUES (1, “João”);
- PUT INTO clientes (cod_cliente, nome) VALUES (1, “João”);
- INSERT INTO clietes (cod_cliente, nome) VALUES (1, “João”);
Os usuários do CompreFacil entraram em contato com o
suporte técnico da XPTO solicitando a correção do erro que os impedia de realizar as vendas. Foi constatado que devido a problemas no banco de dados alguns dados eram armazenados de forma inconsistente na base de dados. Um dos técnicos sugeriu a utilização de transações para o armazenamento das vendas. Qual dessas cláusulas pode cancelar as alterações realizadas durante uma transação?
- DELETE clientes FROM clientes c
LEFT JOIN vendas v ON (c.cod_cliente = v.cod_cliente)
WHERE v.cod_venda IS NULL
Após o aumento da inflação de 10%, a empresa XPTO deve fazer o reajuste do valor de todos os produtos na mesma proporção. Qual das consultas a seguir é a correta para realizar as devidas alterações?
- UPDATE produtos UPDATE valor = valor*1.1
- UPDATE produtos SET valor += 10%
- UPDATE produtos SET valor = valor*1.1
- UPDATE produtos UPDATE valor += 10%
- UPDATE produtos SET valor = valor + 10%
Durante as festas de final de ano, a empresa XPTO
lançou uma promoção que daria desconto no produto mais caro oferecido por eles. Os usuários do CompreFacil tiveram que contatar o suporte técnico para descobrir qual produto era esse. Qual a função de agregação que pode ser usado para descobrir o produto de maior e menor preço respectivamente?
- MAX() e AVG()
- SUM() e MAX()
- MAX() e MIN()
- MIN() e SUM()
- STD e MIN()
Para reduzir os gastos com estoque, a empresa XPTO
precisa saber quais produtos não estão sendo vendidos. Para isso é necessário realizar uma junção entre as tabelas produtos e vendas e verificar para cada produto se não houve vendas. Considerando que no MySQL existem vários tipos de junção, qual das alternativas abaixo não é uma cláusula válida para junção no MySQL?
Todo início do ano o sistema CompreFacil faz uma
limpeza nos clientes que não realizaram nenhuma compra no sistema. Qual consulta deve ser enviada para o MySQL executar essa ação?
- DELETE clientes FROM clientes c
LEFT JOIN vendas v ON (c.cod_cliente = v.cod_cliente)
WHERE v.cod_venda IS NOT NULL
- DELETE clientes c
LEFT JOIN vendas v ON (c.cod_cliente = v.cod_cliente)
WHERE v.cod_venda IS NULL
- DELETE clietes FROM clientes c
LEFT JOIN vendas v ON (c.cod_cliente = v.cod_cliente)
WHERE v.cod_venda IS NULL
- DELETE clientes FROM clientes c
LEFT JOIN vendas v ON (c.cod_cliente = c.cod_cliente)
Após uma consultoria de marketing, a empresa XPTO
decidiu inserir no sistema CompreFacil uma lista com os 10 produtos mais vendidos de todos os tempos na tela principal. Considerando que o SELECT já contabiliza a quantidade de vezes que um produto foi vendido com o nome “total_vendas”, qual deve ser a consulta para obter esses produtos a partir da cláusula FROM?
- FROM produtos CROSS JOIN vendas ORDER BY total_vendas DESC LIMIT 10;
- FROM produtos INNER JOIN vendas ORDER BY total_vendas DESC LIMIT 10;
- FROM produtos CROSS JOIN vendas ORDER BY total_vendas DESC;
- FROM produtos NATURAL JOIN vendas ORDER BY total_vendas DESC LIMIT 10;
- FROM produtos NATURAL JOIN vendas ORDER BY total_vendas ASC LIMIT 10;
Devido as políticas de limpeza do sistema CompreFacil
foi levantado a necessidade de impedir que produtos sejam removidos caso eles tenham sido vendido pelo menos uma vez. Essa limitação pode ser facilmente configurada na definição de uma chave estrangeira, qual cláusula não pode ser usada para definição da ação quando a referência é atualizada ou excluída?
- SET
- NO