Prévia do material em texto
Uma definição dada por Elmasri e Navathe (Elmasri, R.; Navathe, S. 2011, p. 20) sobre atributos é: “Representa alguma propriedade de interesse que descreve melhor uma entidade, como o nome ou o salário de um funcionário” e, Heuser (Heuser 2009, p. 48) conceitua atributos como: “dado que é associado a cada ocorrência de uma entidade ou de um relacionamento”. Analise as seguintes afirmativas: ( ) Os atributos descrevem as características de uma entidade e são identificados por símbolos. ( ) Um atributo pode representar uma identificação única de uma ocorrência em uma entidade. Uma entidade pode possuir mais de um atributo identificador, ( ) Os atributos são conectados à entidades, podendo ser conectado a mais de uma entidade simultaneamente. A respeito dessas assertivas, Considere (V) para sentença(s) Verdadeira(s) e (F) para sentença(s) falsa(s). V, V, F. Uma definição dada por Elmasri e Navathe (Elmasri, R.; Navathe, S. 2011, p. 20) sobre atributos é: “Representa alguma propriedade de interesse que descreve melhor uma entidade, como o nome ou o salário de um funcionário” e, Heuser (Heuser 2009, p. 48) conceitua atributos como: “dado que é associado a cada ocorrência de uma entidade ou de um relacionamento”. Analise as seguintes afirmativas. I. Os atributos e relacionamentos são opcionais no modelo conceitual. II. Atributos são informações e não dados. III. Atributos representam características de uma entidade. IV. As entidades devem ter atributos para representar as características da entidade. Considerando o contexto de atributos assinale a alternativa correta. Estão corretas as afirmativas III e IV. A modelagem dos dados é o planejamento da execução das ideias do negócio para os termos computacionais. Observe a figura abaixo e informe a que tipo de modelo de representação se refere: Diagrama de entidade e relacionamento. Uma definição dada por Elmasri e Navathe (Elmasri, R.; Navathe, S. 2011, p. 20) sobre atributos é: “Representa alguma propriedade de interesse que descreve melhor uma entidade, como o nome ou o salário de um funcionário” e, Heuser (Heuser 2009, p. 48) conceitua atributos como: “dado que é associado a cada ocorrência de uma entidade ou de um relacionamento”. Com base nestas definições, analise as seguintes sentenças e assinale V para as verdadeiras e F para as falsas. ( ) Uma entidade é um objeto que possui propriedades que a torna igual a outras entidades. ( ) Um atributo expressa características ou propriedades de uma entidade ou relacionamento. ( ) A cardinalidade é a quantificação que um relacionamento entre entidades expressa por número de ocorrências Considerando o contexto de entidades e atributos assinale a afirmativa correta. F, V, V. A estrutura dos primeiros bancos de dados computacionais utilizavam arquivos para seu armazenamento: A respeito deste banco de dados assinale a alternativa correta: Os arquivos são somente depósito de dados. Leia a seguinte afirmação: Segundo Puga, França e Goya (2013, p. 77), a modelagem de dados é uma técnica utilizada para: · Conhecer melhor o contexto do negócio; · Retratar os dados que suportam esse contexto de negócio; · Projetar o banco de dados; Com base nestas afirmações, analise as seguintes sentenças e assinale V para as verdadeiras e F para as falsas. ( ) No modelo lógico, algumas regras e restrições começam a ser implementadas de modo que possam ser interpretadas por um Sistema Gerenciador de Banco de Dados (SGBD), ( ) No modelo lógico cada atributo é devidamente especificado, conforme os tipos de dados do SGBD escolhido. ( ) No modelo lógico, a nomeação dos elementos deve seguir o padrão do SGBD utilizado. Considerando o contexto de modelagem assinale a afirmativa correta. V, F, F. O Modelo Entidade e Relacionamento (ER) ou MER foi proposto por Peter Chen, nos anos de 1970, e tem como principal objetivo capturar os requisitos de informação e regras de negócio sob o ponto de vista do negócio. Selecione a alternativa que apresenta os componentes usados na elaboração de um MER: entidades atributos e relacionamentos. Os bancos de dados podem ser classificados quanto ao modelo de dados em que se baseiam. Em nossa primeira aula vimos diferentes tipos de banco de dados. Selecione a alternativa que apresenta o modelo que utilizava a organização do endereço físico na sua estrutura de dados. Modelo Hierárquico. Na figura abaixo podemos visualizar a arquitetura de sistemas de uma empresa, composta por 3 servidores de aplicação conectados a um único Sistema Gerenciador de Banco de dados (SGBD). Utilizando os conhecimentos aprendidos a respeito de um SGBD podemos afirmar que: Vários aplicativos podem acessar o mesmo banco de dados. Os atributos descrevem as características de uma entidade, podendo ser definidos (PUGA, p.86) como: · Informações associadas a uma entidade; · Características ou propriedades de uma entidade ou relacionamento; · Descrição, identificação, qualificação ou quantificação de uma entidade. Marque a opção onde TODOS os tipos de atributos estão corretos segundo a notação de Peter Chen: Atributo - derivado – multivalorado – identificador Considere que você realizou a pesquisa abaixo no banco de dados: Analise as seguintes sentenças e assinale V para as verdadeiras e F para as falsas considerando os dados armazenados na tabela usuário. ( ) A tabela usuário tem uma chave primária e uma chave estrangeira na coluna id. ( ) Na linha em que consta o id de valor 1 e o nome com valor Pedro formam uma tupla, também conhecida como registro. ( ) Os id 1, 2 e 3 formam um registro. ( ) id e Nome também são referências para coluna. Considerando a solicitação do usuário assinale a alternativa que contém a sequência das afirmativas corretas. F, V, F, V. Uma stored procedure é composta de duas partes: a criação da procedure e a sua chamada. Escolha entre as alternativas abaixo a sintaxe correta para a chamada de uma stored procedure. CALL nome_procedure (parâmetro(s)); O comando INSERT é utilizado para inserir um ou mais registros em uma tabela do banco de dados. Considere que a tabela professor possui duas colunas, codigo e nome. Selecione a alternativa que apresenta o comando correto para inserir os dados do professor Pedro Maia com o código 162. INSERT INTO professor (codigo, nome) VALUES (162, “Pedro Maia”); Observe a seguinte parte de um DER. Analise as seguintes sentenças e assinale V para as verdadeiras e F para as falsas, referentes ao diagrama apresentado. ( ) O relacionamento “Envia” deve ser convertido em um campo da tabela Mensagens, na modelagem lógica. ( ) As entidades Usuários e Mensagens devem ser convertidas para tabelas na modelagem lógica. ( ) O relacionamento “Grupo” deve ser convertido em tabela na modelagem conceitual. ( ) O relacionamento “Envia” deve ser convertido em tabela na modelagem lógica. Considerando a solicitação do usuário assinale a alternativa que contém a sequência das afirmativas corretas. D V, V, F, F. A figura abaixo apresenta um comando SELECT utilizando o comando AVG na coluna salario da tabela funcionarios. Selecione a alternativa que descreve a operação realizada pelo comando AVG? realizar o cálculo da média dos valores da coluna salario. Uma transação é um comando da categoria TCL. A transação primeiramente é executada em memória e só são transmitidas fisicamente para o banco de dados após a confirmação de que todas as instruções foram efetuadas com sucesso. Considerando as afirmações acima, selecione a alternativa que descreve para que serve o comando BEGIN em uma transação? C: indica o início de uma transação e todos os comandos da transação devem vir abaixo do comando BEGIN; Considere a seguinte afirmação: “Os índices são compostos por uma única coluna da tabela". Selecione a alternativa que descreve corretamente esta afirmação, citanto se é verdadeira ou falsa: FALSA - Os índices podem ser compostos por uma única coluna ou por várias, chegando a composição máxima de 16 colunas no MySQL. Uma transação (TCL) primeiramente é realizada em memória e apenasé efetivada fisicamente para o banco de dados após a confirmação de que todas as instruções foram executadas com sucesso. Selecione a alternativa que apresenta os três principais comandos TCL: BEGIN, COMMIT e ROLLBACK. O comando GRANT é um comando da categoria DCL. Analise o código abaixo: Selecione a alternativa que descreve corretamente a ação realizada após a execução deste comando. O comando GRANT atribui as permissões para o usuário chefe de executar os comandos select, insert, delete e update na tabela alunos. O comando REVOKE é um comando da categoria DCL. Analise o código abaixo: Selecione a alternativa que descreve corretamente a ação realizada após a execução deste comando. O comando REVOKE está removendo do usuário chefe todos os privilégios de todas as tabelas da base de dados sistema. Analise os comandos apresentados nas alternativas abaixo e selecione uma opção em que o código permite criar uma tabela chamada “aluno” com duas colunas: uma coluna nomeada por “cod_aluno” e outra coluna nomeada por “nome” do tipo VARCHAR, sendo esta última com tamanho 30. CREATE TABLE aluno (cod_aluno VARCHAR(5), nome VARCHAR(30)); Os principais comandos da categoria DATA CONTROL LANGUAGE (DCL) são GRANT e REVOKE. Selecione a alternativa que descreve a funcionalidade do comando GRANT? fornece a um usuário permissões de acesso a uma base de dados ou para todas, autorizando acesso total ou podendo configurar operações específicas. Considere a seguinte solicitação de um usuário para o sistema de Agendamento de Consultas, que está sendo desenvolvido. Os clientes ligam e agendam consultas com o médico que desejam ou o agendamento é realizado com o médico que está disponivel, conforme a especialidade que o cliente precisa. Analise as seguintes afirmativas quanto a modelagem conceitual do banco de dados. I. É relevante registrar os dados da ligação. II. Agendamento é uma indicação de relacionamento entre cliente e médico. III. Existe um relacionamento entre médico e especialidade. IV. Existe um relacionamento entre cliente e especialidade. Considerando a solicitação do usuário assinale a alternativa que contém a sequência das afirmativas corretas. Somente está correta a alternativa II. O Sistema Gerenciador de Banco de Dados nos permite executar diversos comandos para realizar pesquisas acerca de um banco. Dentre os diversos comandos, temos um que permite visualizar a estrutura da tabela, com o nome das colunas (Field), os tipos de dados (Types) e tamanhos. Analise as alternativas abaixo e selecione o comando utilizado para visualizar a estrutura de uma tabela. DESCRIBE O comando INSERT é utilizado para inserir um ou mais registros em uma tabela do banco de dados. Considere que a tabela professor possui duas colunas, codigo e nome. Selecione a alternativa que apresenta o comando correto para inserir os dados do professor Pedro Maia com o código 162. INSERT INTO professor (codigo, nome) VALUES (162, “Pedro Maia”); Observe na figura abaixo a tabela alunos. Selecione a alternativa que apresenta o comando para selecionar todos os alunos em que o nome inicia com a letra "A". SELECT * FROM alunos WHERE nome LIKE ‘a%’; Considere a seguinte solicitação de um usuário para o sistema de Agendamento de Consultas, que está sendo desenvolvido. Os clientes ligam e agendam suas consultas com o médico que desejam ou o agendamento é realizado com o médico que está disponivel, conforme a especialidade que o cliente precisa. Analise as seguintes afirmativas quanto a modelagem conceitual do banco de dados. I. São necessárias as entidades clientes, agendamento e médico. II. São necessárias as entidades clientes e médico. III. São necessárias as entidades agendamento e disponibilidade. IV. Especialidade do médico pode ser representada por um atributo. Considerando a solicitação do usuário assinale a ALTERNATIVA com a sequência das afirmativas corretas. As afirmativas II e IV estão certas. Observe a tabela Employees abaixo: Escreva uma query SQL, que consulte o primeiro nome (FIRST_NAME), e o salário (SALARY) de todos os funcionários cujo salário seja maior que R$5000,00 e menor que R$10000,00. Consulte apenas os funcionários que possuem essa faixa salarial e que trabalham no departamento (DEPARTMENT_ID) 60. select FIRST_NAME, SALARY from Employees where SALARY > 8000 and SALARY < 10000 and DEPARTMENT_ID = 60; Considerando a tabela a seguir, denominada de Employees: Escreva um query SQL que pesquise o nome completo do funcionário e a data em que foi contratado. Para esta pesquisa utilize a função CONCAT. Você deve gerar todos estes dados em apenas uma única coluna, como este exemplo: "O Funcionário Steven King foi contratado em: 1987-06-17" select concat( 'O Funcionário', Employees.first_name, ' ', Employees.last_name, ' foi contratado em: ', Employees.hire_date) as resultado from Employees; Os relacionamentos e as cardinalidades máximas são utilizadas para definir como os registros vão se relacionar através das chaves estrangeiras, processo extremamente necessário para formarmos nosso modelo lógico relacional. Relacione a(s) cardinalidade(s) máxima(s) que indicam a criação de uma nova tabela. Explique o mecanismo da relação. A cardinalidade máxima que indica a criação de uma nova tabela é a n:n, que permite múltiplos relacionamentos em ambas as direções. A nova tabela deve conter chaves estrangeiras de todas as tabelas que compõe o relacionamento. vendedor_id nome cidade comissao 5001 Paulo de Tarso New York 0.15 5002 Abdas de susa Paris 0.13 5005 Tomás de Aquino Londres 0.11 5006 Brígida da Suécia Paris 0.14 5003 Cássio de Narni Dantos 0.12 5007 Inês de Assis Roma 0.13 slect nome, cidade from Vendedores where cidade = Paris; Considere o seguinte script para criar as tabelas Fabricante e Produtos no banco de dados. Observe que o script cria as tabelas e insere dados em ambas. Reproduza os comando em um banco de dados. Considere estas tabelas e os dados para elaborar a consulta no banco de dados que busque os seguintes dados: a) Produtos cujo preço esteja entre R$60,00 e R$120,00; b) Preço médio de todos os produtos em que o código do fabricante é igual a 2; c) Fabricante e o preço médio de seus produtos. A resposta do exercício será considerada apenas quando enviado os comandos que respondem os itens a), b) e c). A) SELECT * FROM Produtos WHERE Preco>=60 AND Preco<=120; B) SELECT SVG(Preco) FROM Produtos WHERE Fabricante=2 C) SELECT AVG(Preco), Fabricamte FROM Produtos GROUP BY Frabricante; Considerando que a tabela a seguir, parte integrante de um banco de dados MySqL e chamada de Vendedores, escreva uma query, em SQL, que devolva toda a informação referente a todos os vendedores. vendedor_id nome cidade comissao 5001 Paulo de Tarso New York 0.15 5002 Abdas de susa Paris 0.13 5005 Tomás de Aquino Londres 0.11 5006 Brígida da Suécia Paris 0.14 5003 Cássio de Narni Dantos 0.12 5007 Inês de Assis Roma 0.13 select * from Vendedores; No quadro a seguir você pode ver a estrutura de uma tabela denominada País. Você deve escrever uma query SQL para criar esta tabela. CREATE TABLE paises (PAIS_ID varchar(2) NULL,NOME_PAIS varchar(40) NULL, ); Considerando a tabela a seguir, Employees, como sendo a representação de uma tabela em um banco de dados mantido em um servidor MySql, escreva um query SQL, que devolva o primeiro nome, FIRST_NAME, e o salário, SALARY, de todos os funcionários cujo salário seja maior que R$800,00. Considerando a tabela a seguir, denominada de employees: Emplouee_ID FIRST_NAME LAST_NAME EMAIL PHONE_NUMBER HIRE_DATE JOB_ID SALARY COMMISSION_PCT MANAGER_ID DEPARTMENT_ID 100 Steven teste teste@teste.com 99999-9999 25/11/2014 teste 24000 teste teste 90 101 Neena teste teste@teste.com 99999-9999 26/11/2014 teste 3500 teste teste 90 102 Lex teste teste@teste.com 99999-9999 27/11/2014 teste 1600 teste teste 90 103 Alexander teste teste@teste.com 99999-9999 28/11/2014teste 1000 teste teste 90 104 Bruce teste teste@teste.com 99999-9999 29/11/2014 teste 1000 teste teste 60 105 David teste teste@teste.com 99999-9999 30/11/2014 teste 5700 teste teste 60 106 Valli teste teste@teste.com 99999-9999 01/12/2014 teste 2000 teste teste 60 107 Diana teste teste@teste.com 99999-9999 02/12/2014 teste 4400 teste teste 60 select FIRST_NAME, SALARY from employees where SALARY>8000; Construa no banco de dados MySQL uma tabela denominada de países. Esta tabela deve ter duas colunas: a primeira coluna é denominada por Pais_ID, uma coluna varchar com tamanho 2 e a segunda coluna é denominada Pais_Nome, uma coluna varchar com tamanho 40, A partir destas informações, escreva um query SQL que crie esta tabela. CREATE TABLE paises (PAIS_ID varchar(2) NULL,NOME_PAIS varchar(40) NULL, );