Baixe o app para aproveitar ainda mais
Prévia do material em texto
· Pergunta 1 1 em 1 pontos Após a etapa de modelagem, é necessária a criação dos elementos que vão acomodar os dados e suas restrições; é a etapa em que as tabelas são criadas junto com chave primária, chave estrangeira e outros elementos que estruturam um banco de dados. A DDL (Data Definition Language) é uma parte da SQL responsável por comandos com esta finalidade. A respeito de alguns comandos e termos empregados na execução de comandos de DDL, analise as sentenças a seguir e assinale (V) para verdadeiro e (F) para falso. I. ( ) A palavra CONSTRAINT pode ser empregada na definição de chaves estrangeiras e primárias. II ( ) DROP TABLE é o comando usado para excluir uma tabela no banco de dados. III. ( ) ADD COLUMN é parte de um comando e é usado em geral com comandos de ALTER TABLE. IV. ( ) NUMERIC é uma palavra usada na definição de campos que aceitam números, em geral, com decimais. Conforme as associações realizadas assinale a alternativa correta: Resposta Selecionada: V, V, V, V Resposta Correta: V, V, V, V Comentário da resposta: Resposta correta. A alternativa está correta, pois o item I é verdadeiro; apesar de não ser obrigatório, o termo CONSTRAINT diz respeito a restrições, e as mais comuns, em que é usado na definição de chaves primárias e estrangeiras. O item II é verdadeiro, a exclusão de componentes do banco de dados é feita por DROP, por exemplo, DROP TABLE, DROP VIEW e outros. O item III é verdadeiro, pois, quando é necessário adicionar colunas em uma tabela já criada, o ADD COLUMN é usado como parte do ALTER TABLE. Por fim, o item IV é verdadeiro, pois campos que guardam valores com decimais são definidos com NUMERIC. · Pergunta 2 1 em 1 pontos Na construção de um banco de dados, em seu início, um projetista de dados compreende os requisitos de um sistema e faz a modelagem de dados criando um modelo de entidade e relacionamento ou um modelo relacional. A partir do modelo, os comandos de DDL (Data Definition Language) são usados para criar as tabelas e outras definições no banco de dados. Para um certo sistema, uma parte do modelo de dados está mostrado a seguir. [1] Fonte: Elaborada pelo autor. Existe a necessidade de criar um comando para gerar a tabela de BAIRRO com todos os campos e restrições, que, considerando que todos os campos são obrigatórios, precisam ser preenchidos na manipulação dos registros. O comando para esta criação da tabela é: Resposta Selecionada: CREATE TABLE BAIRRO ( COD_BAIRRO INTEGER NOT NULL, DCR_BAIRRO VARCHAR(50) NOT NULL, COD_CIDADE INTEGER NOT NULL, PRIMARY KEY (COD_BAIRRO) , FOREING KEY (COD_CIDADE) REFERENCES CIDADE (COD_CIDADE) ); Resposta Correta: CREATE TABLE BAIRRO ( COD_BAIRRO INTEGER NOT NULL, DCR_BAIRRO VARCHAR(50) NOT NULL, COD_CIDADE INTEGER NOT NULL, PRIMARY KEY (COD_BAIRRO) , FOREING KEY (COD_CIDADE) REFERENCES CIDADE (COD_CIDADE) ); Comentário da resposta: Resposta correta. A alternativa está correta pois apresenta todas as definições necessárias, os campos COD_BAIRRO, DCR_BAIRRO, COD_CIDADE e a chave primária (PRIMARY KEY) e a chave estrangeira (FOREIGN KEY), tudo definido corretamente. · Pergunta 3 1 em 1 pontos As atividades rotineiras de um desenvolvedor, ao manipular um banco de dados, envolve escrever consultas ou comandos em SQL e analisar os resultados que o servidor apresenta, por exemplo, ao inserir uma linha com um INSERT, ele depois checa se a linha foi inserida ou, quando realiza uma consulta, ele avalia os dados da consulta. Em uma destas tarefas, um programador obteve a seguinte consulta: Código Fabricante Placa Modelo Ano 1 Ford MQF4236 Fiesta 2016 2 Fiat QFG5534 Uno 2018 3 Renault FES3321 Clio 2014 4 Fiat QQF5298 Idea 2018 5 Renault AAX8943 Sandero 2013 Fonte: Elaborado pelo autor. Qual consulta o programador deve ter digitado na ferramenta do SGBD? Resposta Selecionada: SELECT * FROM CARRO WHERE (ANO <=2015) OR (PLACA LIKE ‘%QF%’) Resposta Correta: SELECT * FROM CARRO WHERE (ANO <=2015) OR (PLACA LIKE ‘%QF%’) Comentário da resposta: Resposta correta. A alternativa está correta, pois a consulta combina os carros com ano inferior a 2015 (ANO <=2015), que são as linhas 3 e 5, e os que possuem ‘QF’ na placa 1, 2 e 4. · Pergunta 4 1 em 1 pontos A álgebra relacional prevê um conjunto de operações para manipular as tuplas de uma relação, por exemplo para selecionar linhas ou colunas, ou ainda combinando relações de diversas formas, e sua escrita segue um formalismo matemático semelhante às fórmulas comumente encontradas nesta área. Considerando um determinado cenário de locações de imóveis, a relação “IMOVEL” apresenta os seguintes atributos. IMOVEL( CODIGO, PROPRIETARIO, NUM_QUARTOS, NUM_BANHEIROS, GARAGEM) A operação em Álgebra Relacional para selecionar as linhas com imóveis com até três quartos é: Resposta Selecionada: σ num_quartos<=3 (IMOVEL) Resposta Correta: σ num_quartos<=3 (IMOVEL) Comentário da resposta: Resposta correta. A alternativa está correta, a operação de seleção na álgebra relacional é expressa por σ e a cláusula lógica está correta com número de quartos menor ou igual a 3. · Pergunta 5 1 em 1 pontos Ao utilizar comandos de DDL (data definition language), o usuário do banco de dados pode criar, modificar ou excluir objetos em um banco de dados. O comando de CREATE TABLE, por exemplo, cria tabelas que basicamente são um conjunto de campos com seus tipos de dados e de restrições como chave primária e chave estrangeira. Em um sistema bancário, existe uma tabela TRANSACAO que foi criada com o seguinte comando: CREATE TABLE TRANSACAO (COD_TRANSACAO INTEGER NOT NULL, COD_CONTA INTEGER NOT NULL, DATA DATETIME NOT NULL, VALOR NUMERIC(9,2) NOT NULL, TIPO CHAR(1) NOT NULL, RESGATE CHAR(1) NOT NULL, FOREIGN KEY (COD_CONTA) REFERENCES CONTA(COD_CONTA) ) Alguns campos possuem o nome intuitivo, já para TIPO vale esclarecer que este campo indica o tipo de transação, Crédito ou Débito. O campo RESGATE indica se a transação foi resultado de um resgate de aplicação. Considerando apenas o comando de CREATE TABLE apresentado, analise as sentenças a seguir e assinale (V) para a(s) opções verdadeiras ou (F) para as falsas. I. ( ) O campo COD_TRANSACAO não pode ter valores repetidos, pois é chave primária. II. ( ) O campo COD_CONTA não aceita valores com números decimais. III. ( ) O campo RESGATE pode não ter valores atribuídos a este campo. IV. ( ) O campo COD_CONTA só pode ter valores que existam no campo código de CONTA. A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta: Resposta Selecionada: F, V, F, V. Resposta Correta: F, V, F, V. Comentário da resposta: Resposta correta. A alternativa está correta, pois o item I é falso, uma vez que não há no comando a cláusula de primary key, portanto esta restrição não foi estabelecida e pode haver valores repetidos de código na tabela. O item II é verdadeiro, comoo campo COD_CONTA é INTEGER, apenas valores inteiros (sem decimais) devem ser aceitos. O item III é falso, pois o campo RESGATE é not null, portanto é obrigatório ter um valor atribuído a este campo. Por fim, o item IV é verdadeiro; o campo COD_CONTA é uma chave estrangeira que aponta para o campo CÓDIGO na tabela de conta, portanto apenas valores de código presentes na tabela conta são válidos para este campo COD_CONTA na tabela de TRANSACAO. · Pergunta 6 1 em 1 pontos Uma das manipulações que existem em banco de dados é a exclusão de registros em tabelas e em SQL. O comando para esta finalidade é o DELETE. A sintaxe deste comando envolve especificar qual a tabela que está sendo afetada e um filtro para indicar quais registros devem ser excluídos pelo comando. Em um sistema de registro de áreas agrícolas, na tabela PLANTIO existem os seguintes registros: Código Município Área Produto Data Colheita 1 Alegre 32,50 Tomate 20/02/2019 2 Linhares 54,70 Mamão 05/03/2019 3 Sooretama 47,30 Tomate 10/03/2019 4 Linhares 52,10 Café 25/02/2019 5 Colatina 35,80 Café 18/02/2019 6 Linhares 43,70 Mamão 03/03/2019 Fonte: Elaborado pelo autor. O seguinte comando foi executado no banco de dados: DELETE FROM PLANTIO WHERE (AREA < 40) OR (MUNICIPIO = ‘Linhares’ AND AREA > 50) Quantas linhas foram afetadas por este comando? Resposta Selecionada: 4 Resposta Correta: 4 Comentário da resposta: Resposta correta. A alternativa está correta, pois, pela condição (AREA < 40), as linhas 1 e 5 serão afetadas e, pela condição (MUNICIPIO = ‘Linhares’ AND AREA > 50), as linhas 2 e 4 atendem à condição. Portanto, 4 linhas serão afetadas. · Pergunta 7 1 em 1 pontos Um SGBD relacional foi concebido com base em algumas teorias sobre como representar os dados e como realizar manipulações sobre eles. Conforme Puga, França e Goya (2013), uma destas fundamentações teóricas é uma linguagem formal de alto nível para expressar as operações sobre tabelas, suas linhas e colunas. Ela contém operações como seleção, projeção, produto cartesiano e outras. PUGA, S; FRANÇA, E.; GOYA, M. Banco de Dados: implementação em SQL, PL/SQL e Oracle 11g. São Paulo: Pearson Education do Brasil, 2013. A linguagem a que se refere Puga, França e Goya (2013) é a : Resposta Selecionada: Álgebra Relacional. Resposta Correta: Álgebra Relacional. Comentário da resposta: Resposta correta. A alternativa está correta, pois é a Álgebra Relacional, criada na IBM Research em 1970, que estabelece os fundamentos teóricos para a tecnologia de bancos de dados relacionais e com as características e operações presentes no enunciado. · Pergunta 8 1 em 1 pontos Um dos comandos mais versáteis para o uso com banco de dados é o SELECT. Ele permite recuperar os registros de tabelas; sua sintaxe envolve a especificação das tabelas, quais colunas recuperar e os filtros que podem envolver operadores de comparação (>, <, =,...), outros como AND, OR, NOT e ainda existe o like e between. Para cada um dos operadores a seguir associe com sua funcionalidade em um comando SELECT: I. like II. between III. and IV. <> Associe os operadores com as funções dele em um comando de SQL: ( ) Permite combinar duas condições via uma operação lógica. ( ) Permite avaliar se um valor está entre dois limites. ( ) Permite avaliar se um campo de caracteres tem um padrão, contém alguma palavra. ( ) Permite avaliar se dois valores são diferentes entre si. Assinale a alternativa que apresenta a sequência correta: Resposta Selecionada: III, II, I, IV Resposta Correta: III, II, I, IV Comentário da resposta: Resposta correta. A alternativa está correta, pois o and (Item III) é um operador lógico para combinar duas condições e o between (Item II) permite checar faixa de valores, “idade between 20 and 35” verifica se uma idade é maior que 20 e menor que 35. O like (item I) permite avaliar padrões de campos de caracteres, por exemplo, nome like ‘%Maria%” verifica se o nome contém a palavra Maria e o operador ‘<>’ (item IV) é um operador diferente, para checar se dois valores são diferentes. · Pergunta 9 1 em 1 pontos Em um modelo relacional, os conceitos de chaves são relevantes. As chaves primárias servem para identificar as linhas em uma tabela e, para o caso da chave estrangeira, ela permite estabelecer a restrição de que um valor depende de outro valor em outra tabela. Por exemplo, em um sistema de uma universidade, uma disciplina pertence a um curso e um curso pode conter várias disciplinas. A especificação destas tabelas pode ser compreendida a seguir; os campos em sublinhado são chaves primárias. DISCIPLINA (COD_DISCIPLINA, DCR_DISCIPLINA, COD_CURSO (FK)) CURSO(COD_CURSO, DCR_CURSO) A respeito dos comandos para criação das chaves primárias e estrangeiras deste modelo, analise as sentenças a seguir e assinale (V) para a(s) verdadeira(s) e (F) para as falsa(s): I. ( ) Para criar a chave primária de disciplina, pode-se adicionar a cláusula a seguir junto com a sequência de campos no comando CREATE TABLE “ PRIMARY KEY (COD_DISCIPLINA) ” II. ( ) Para criar a chave estrangeira na tabela disciplina, pode-se adicionar a cláusula a seguir junto com a sequência de campos no comando CREATE TABLE “ FOREIGN KEY (COD_CURSO) REFERENCES CURSO(COD_CURSO) ” III. ( ) Uma outra forma de criar uma chave estrangeira é via o comando ALTER TABLE, e, para a chave estrangeira na tabela disciplina, pode ser usado desta forma “ ALTER TABLE DISCIPLINA ADD FOREIGN KEY (COD_CURSO) REFERENCES CURSO(COD_CURSO) ” IV. ( ) Para criar uma chave primária, é possível também usar o comando a seguir “ ALTER TABLE DISCIPLINA ADD CONSTRAINT ‘PK_DISC’ PRIMARY KEY (COD_DISCIPLINA) “ Conforme as associações realizadas, assinale a alternativa correta: Resposta Selecionada: V, V, V, V Resposta Correta: V, V, V, V Comentário da resposta: Resposta correta. A alternativa está correta, pois todas as formas estão corretas. A adição de chaves pode ocorrer na lista de definição de campos e restrições do CREATE TABLE (item I e II) e pode ser adicionada posteriormente com o comando de ALTER TABLE sem nenhum nome para a restrição (Item III), ou identificando a restrição com a cláusula “CONSTRAINT ‘PK_DISC “. · Pergunta 10 1 em 1 pontos A linguagem SQL é bastante ampla e possui comandos e subconjuntos deles com propósitos, tais como definir a estruturação dos dados, manipular os registros de tabelas e ainda para gerenciamento de outros elementos em um SGBD, por exemplo, usuários, permissões, backup, restauração e outros. Em relação a alguns comandos de SQL, analise as afirmativas a seguir e assinale (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s). I. ( ) O INSERT é um comando de DDL e é responsável por criar tabelas e realizar as inserções de seus registros. II. ( ) O ALTER TABLE é um comando de DDL e pode ser usado, por exemplo, para adicionar ou excluir uma coluna da tabela. III. ( ) O UPDATE é um comando de DML responsável pela alteração dos registros em tabelas, por exemplo, mudar o nome de um certo cliente. IV. ( ) O DROP é um comando de DML responsável por excluir as linhas de uma tabela, por exemplo, excluir um certo produto. A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta: Resposta Selecionada: F, V, V, F. Resposta Correta: F, V, V, F. Comentário da resposta: Resposta correta. A alternativa é a correta. Na sequência dos itens, o item I é falso, o comando INSERT não é de DDL (definição de dados), ele é de DML (manipulação de dados) e, além disso, não é responsável por criar tabelas, apenas inserçõesde registros. O comando para criar tabela é o CREATE TABLE, este sim de definição de dados (DDL). O item II é verdadeiro, pois adicionar ou excluir colunas são alterações em tabelas feitas por ALTER TABLE (definição de dados - DDL). O item III é verdadeiro, pois o UPDATE muda valores em registros (manipulação de dados - DML) como no caso de mudança de nomes. O item IV é falso; o DROP é usado para excluir elementos da estrutura dos dados, por exemplo, excluir tabelas, views, índices, e é um comando de DDL. O certo seria usar o comando DELETE para excluir linhas.
Compartilhar