Baixe o app para aproveitar ainda mais
Prévia do material em texto
Gestão de Banco de Dados Compilado atual – 08-06-2018 1. Um projeto de Banco de Dados possui determinadas etapas para ser implementado. Assinale a alternativa que corresponda a tais etapas. A) Modelo físico, Modelo Conceitual, Modelo Lógico e Levantamento. B) Levantamento, Modelo Conceitual, Modelo físico e Modelo Lógico. C) Levantamento, Modelo Conceitual, Modelo Lógico e Modelo Físico D) Levantamento, Modelo Lógico, Modelo Físico e Modelo Conceitual. E) Modelo Lógico, Modelo Físico, Modelo Conceitual e Levantamento. 2. Ferramentas CASE existem para facilitar a vida dos DBAs e dos analistas de banco de dados. Dentre suas funcionalidades, assinale a alternativa INCORRETA. A) Provêm documentação do projeto de banco de dados. B) Algumas ferramentas disponibilizam um dicionário de dados (metadados) sem necessidade de o modelo ser gerado no banco de dados. C) Constroem modelos de dados sem interferência do usuário/operador. D) Constroem bases de dados sem a necessidade de digitar nenhum código SQL. E) Agilizam o trabalho de construção do modelo de dados pelo analista de sistema 3. Considere o esquema a seguir: TELEFONE PK PK DDD TELEFONE char(2) char(9) OPERADORA varchar(10) Para obter uma consulta que retorne a quantidade de telefones por operadora (independente do DDD), qual o comando que deve ser utilizado? A) SELECT OPERADORA COUNT(TELEFONE) AS QTD FROM TELEFONE GROUP BY OPERADORA B) SELECT OPERADORA COUNT(TELEFONE) AS QTD FROM TELEFONE C) SELECT COUNT(TELEFONE) AS QTD FROM TELEFONE D) SELECT OPERADORA SUM(TELEFONE) AS QTD FROM TELEFONE GROUP BY OPERADORA E) SELECT OPERADORA MAX(TELEFONE) AS QTD FROM TELEFONE GROUP BY OPERADORA 4. Dada uma tabela chamada PESSOA, qual comando devemos utilizar para excluí-la? A) DELETE FROM PESSOA B) DROP TABLE PESSOA C) TRUCANTE TABLE PESSOA D) CREATE TABLE PESSOA E) ALTER TABLE PESSOA 5. O comando correto para se criar a tabela a seguir é: TABELA_x CAMPO_1 CAMPO_2 A) CREATE DATABASE TABELA_X. B) USE TABELA_X. C) DROP TABLE TABELA_X. D) CREATE TABLE TABELA_x( CAMPO_1 CHAR(1), CAMPO_2 CHAR(2) ). E) TRUNCATE TABLE TABELA_X.tabela de cliente, a data de nascimento (DT_NASCIMENTO). 6. Pensando em promoções para seus clientes, o Sr. Manoel resolveu adicionar um novo campo na tabela de cliente, a data de nascimento (DT_NASCIMENTO). Para efetuar esse campo, qual comando deve ser acionado? A) ALTER TABLE CLIENTE ADD DT_NASCIMENTO DATE B) ALTER TABLE CLIENTE ADD CONSTRAINT DT_NASCIMENTO C) ALTER TABLE CLIENTE ADD DT_NASCIMENTO DATETIME D) ALTER TABLE CLIENTE E) DROP TABLE CLIENTE 7. Consideremos que estamos trabalhando com duas tabelas: A e B. Para que a minha consulta retorne todos os dados da tabela A, mesmo que não exista correspondência na tabela B, devemos usar: A) JOIN B) INNER JOIN C) LEFT JOIN DE A PARA B D) LEFT JOIN de B para A E) RIGHT JOIN de A para B 8. Avalie as tabelas a seguir: Com base no esquema exposto, assinale a alternativa correta. A) São derivados de um relacionamento de cardinalidade N - N no MER. B) São derivados de um relacionamento de cardinalidade 1 - N no MER. C) São derivados de um relacionamento de cardinalidade 1 - 1 no MER. D) São derivados de um relacionamento de cardinalidade 0 - 1 no MER. E) São derivados de um relacionamento de cardinalidade 0 - N no MER 9. A cláusula WHERE pode ser usada junto a alguns comandos SQL. Quais são eles? A) INSERT, DELETE E UPDATE B) CREATE, ALTER E DROP C) SELECT, INSERT E DELETE D) SELECT, DELETE e UPDATE E) TRUNCATE, DELETE E UPDATE 10. Sobre as chaves de um banco de dados, assinale a alternativa incorreta. A) Uma chave candidata pode vir a se tornar uma chave primária. B) Uma chave estrangeira (FK) é uma chave primária (PK) que vem de outra tabela. C) Uma chave composta é uma chave que possui mais de um atributo. D) Uma chave estrangeira (FK) pode compor uma chave primária (PK). E) A chave estrangeira nasce dentro da própria tabela. 11. Para excluir uma coluna de uma tabela, utilizamos o comando: A) DROP TABLE B) CREATE TABLE C) DROP COLUMN D) ALTER TABLE DROP COLUMN E) ALTER TABLE 12. Considerando que em uma determinada empresa há funcionários que ganham de R$ 1.000,00 a R$ 20.000,00, o comando a seguir retornará? SELECT* FROM FUNCIONARIO WHERE SALARIO >= 10.000,00 A) Todos os funcionários com salário maior que 10.000,00. B) Todos os funcionários com salário menor que 10.000,00. C) Todos os funcionários com salário igual a 10.000,00. D) Todos os funcionários com salário maior ou igual a R$ 10.000,00. E) Nenhum funcionário 13. O que acontece se o comando a seguir for executado? UPDATE TABELA X SET COLUNA_1 = 100 A) Um registro será atualizado. B) Dois registros serão atualizados. C) Nenhum registro será atualizado D) Todos os registros da tabela serão atualizados. E) Todos os registros da tabela serão excluídos. 14. Uma relação está na terceira forma normal quando: A) Os dados estão desnormalizados. B) Que não existem atributos que dependam de outros atributos que não sejam a chave. C) Que todos os dados estão no mesmo nível atômico. D) Que todos os dados dependem unicamente da chave completa. E) Que nenhum atributo dependa da chave, seja ela completa, seja ela parcial 15. Considere a tabela e o comando a seguir: TELEFONE PK PK DDD TELEFONE char(2) char(9) OPERADORA varchar(10) INSERT INTO TELEFONE (TELEFONE, DDD, OPERADORA) VALUES (‘11’, ‘987654321’, ‘XX’) Qual seria o problema com o comando em questão? A) Não dará erro. B) Porque estou gravando um número no lugar de um texto. C) Porque a ordem dos valores está diferente da ordem dos campos. D) Porque 987654321 não é um número válido. E) Porque a XX não é uma operadora válida. 16. Podemos dizer que um banco de dados está devidamente normalizado quando: A) Foi aplicada a 1ª Forma Normal. B) Foi aplicada a 1ª, 2ª Forma Normal. C) Foi aplicada a 1ª, 2ª e 3ª Forma Normal. D) Foi aplicada a 2ª e 3ª Forma Normal. E) Não foi aplicada qualquer Forma Normal. 17. Avalie a tabela a seguir: TELEFONE PK PK DDD TELEFONE char(2) char(9) OPERADORA varchar(10) Qual o tipo de chave nós temos? A) Não temos chaves. B) Temos uma chave primária. C) Temos uma chave estrangeira. D) Temos uma chave primária composta. E) Temos uma chave surrogada. 18. Análise o comando a seguir: SELECT * FROM TABELA WHRER CAMPO_1 = 10 OR CAMPO_2 = 20 De acordo com o esquema exposto, assinale a alternativa correta. A) A consulta só retornara dados se as duas condições forem verdadeiras. B) A consulta só retornara dados se nenhuma das duas condições forem verdadeiras. C) A consulta só retornara dados se a primeira das duas condições for verdadeira. D) A consulta só retornara dados se a segunda das duas condições for verdadeira. E) A consulta retornara dados se qualquer uma das condições for verdadeira. 19. Consideremos uma tabela de produto e que um produto duplicado foi inserido nela. Após levantamento, constatou-se que o produto errado é o de código X. Para remover esse dado devemos: A) Fazer um SELECT em PRODUTO usando WHERE COD_PRODUTO = X. B) Fazer um DELETE em PRODUTO usando WHERE COD_PRODUTO = X. C) Fazer um DELETE em PRODUTO sem WHERE. D) Fazer um UPDATE em PRODUTO usando WHERE COD_PRODUTO = X. E) Fazer um INSERT em PRODUTO usando WHERE COD_PROTUDO = X. 20. Em um modelo Entidade Relacionamento (MER), as entidades, os atributos e as relação são identificadas, respectivamente por: A) Retângulo, elipse e losango B) Elipse, losango e retângulo. C) Losango, retângulo e elipse D)Retângulo, losango e elipse E) Losango, elipse e retângulo. 21. Todos os bancos de dados possuem um banco de dados interno que armazena as suas informações. A esses dados armazenados damos o nome de: A) Hyperdados. B) Megadados. C) Superdados. D) Metadados. E) Ultradados. 22. Dado o comando a seguir,qual será o resultado? DELETE FROM TABELA WHERE CAMPO = ‘X’ A) Todos os registros da tabela serão eliminados. B) Todos os registros da tabela serão atualizados. C) Apenas será eliminado o registro em que o CAMPO for igual a X. D) Apenas será atualizado o registro em que CAMPO for igual a X. E) Apenas será selecionado o registro em que o CAMPO for igual a X. 23. São exemplos de ferramentas Case: A) Erwin, Visio e Designer. B) Cognos, Business Objects e Hyperion. C) Siebel e Dynamics. D) ER3, Applications e Compiere. E) Autocad. 24- Dado o comando a seguir, assinale a alternativa que destaca o que ele faz. ALTER TABLE PRODUTO ADD CONSTRAINT FK_TIPO FOREIGN KEY (COD_TIPO) a) Adiciona uma chave estrangeira na tabela PRODUTO b) Excluir uma chave estrangeira na tabela PRODUTO c) Adiciona uma chave primaria na tabela PRODUTO d) Exclui uma chave primaria na tabela PRODUTO e) Adiciona uma coluna na tabela PRODUTO 25- Para sempre obtermos o resultado da consulta na mesma ordem, o SELECT deve ser montado como: a) SELECT COD_PRODUTO, COD_FORCENECOR, COD_TIPO, NOME_PRODUTO FROM PRODUTO. b) SELECT COD_FORNECEDOR, COD_TIPO, NOME_PRODUTO, COD_PRODUTO FROM PRODUTO. c) SELECT NOME_PRODUTO, COD_PRODUTO, COD_FORNECEDOR, COD_TIPO FROM PRODUTO d) SELECT COD_TIPO, NOME_PRODUTO, COD_PRODUTO, COD_FORNECEDOR FROM PRODUTO E) SELECT * FROM PRODUTO. DISSERTATIVAS 1. Considere um banco de dados que contenha a tabela ALUNO, que contenha 5 campos da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e não pode ser nulo; o campo NOME com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA, que devem ser números reais. Com base nesse banco e nessa tabela, escreva um comando que calcule a media e insira o seu valor no banco de dados, para cada um dos alunos cadastrados na tabela. Depois escreva um comando que selecione todos os registros das colunas NOME e MEDIA da tabela ALUNO, mostrando que os valores foram calculados corretamente. R.:UPDATE ALUNO SET MEDIA = (NOTAP1+NOTAP2)/2; SELECT NOME, MEDIA FROM ALUNO; 2. Em um cadastro de produto, compõe-se uma tabela de para “produto” e outra para “tipo de produto” , conforme o diagrama a seguir: Existem produtos cadastrados sem nenhum tipo associado. Sabendo que existe um relacionamento de 1-N entre tipo de produto e produto, como poderíamos identificar esses tipos? R.: select nome_produto, nome_tipo from produto left join tipo_de_produto on produto.cod_tipo = tipo_de_produto.cod_tipo 3. Sobre as funções básicas de um banco de dados, sabemos que os métodos de acesso são um aspecto essencial. Com relação aos métodos de acesso, sabemos que ao menos duas categorias de linguagem devem estar presentes em um sistema de gerenciamento de banco de dados (SGBD). Diga quais são essas duas categorias e explique brevemente o seu uso. R.: DDL: permite a especificação do esquema da organização, ou seja, entidades com seus atributos e tipos de dados associados, os relacionamentos entre essas entidades e os índices de acesso associados aos atributos. DML: permite as operações de manipulação de dados, executadas pelas aplicações inclusão, alteração, exclusão e consulta. 4. Dadas as tabelas abaixo, escreva o comando para retornar o nome dos alunos e seus respectivos professores. R.: SELECT A.NOME, P.NOME FROM ALUNO A LEFT JOIN ALUNO_PROFESSOR AL ON AL.RA = A.RA LEFT JOIN PROFESSOR P ON P.FUNCIONAL = AL.FUNCIONAL; 5. O que pode ser considerado como “entregável” em um projeto de banco de dados? P). Dado o diagrama abaixo, qual seria o seu tipo de cardinalidade no MER? Justifique sua resposta. R.: Cardinalidade muitos-para-muitos (N:N). Podemos observar pela tabela intermediaria ALUNO_PROFESSOR que foi gerada para efetuar a relação entre as tabelas ALUNO e ROFESSOR. 6- Dado o modelo de dados a seguir. Responda: Como deve ser escrito o comando “SELECT” para que retorne os dados no formato a seguir? R.: select cod_produto, cod_fornecedor, cod_tipo, nome_produto from produto join tipo_produto on produto.cod_cod_tipo = tipo_produto.cod_tipo join fornecedor on produto.cod_fornecedor = fornecedor. cod_fornecedor join nota on produto.cod_produto = nota.cod_produto order by cod_produto asc, cod_fornecedor asc, cod_tipo asc; 7- Supondo que estamos diante de uma tabela X com 4 colunas, qual a diferença entre os comandos abaixo: Comando 1: SELECT * FROM tabela_x Comando2: SELECT coluna_1, coluna_2, coluna_3, coluna_4 FROM tabela_x R.: Apesar da escrita diferente, ambos retornam o mesmo resultado, apenas que o comando 2 seleciona a ordem das colunas 8- Considere um banco de dados que contenha uma tabela chamada ALUNO, que contenha 5 campos, da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e não pode ser nulo; o campo NOME, com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA que devem ser números reais. Qual é o comando para se inserir o seguinte registro: RA igual a 123, o nome deve ser Maria, a nota da prova P1 deve ser 8 e a nota da prova P2 deve ser 9? INSERT INTO ALUNO (RA, NOME, NOTAP1, NOTAP2) VALUES (123, Maria’, 8, 9); 8- Dada a tabela abaixo, escreva o comando para excluir todos os alunos que tenham o nome começado com a letra L. R.: DELETE FROM ALUNO WHERE NOME LIKE ‘L%’; 9- Dado o comando abaixo, indique o que esta errado. INSERT INTO TABELA (CAMPO1, CAMPO2) VALUES (VALOR1, VALOR2) WHERE CAMPO1 = 100 R.: Não se utiliza WHERE em comandos INSERT. 10- Dada a tabela abaixo, escreva o comando que retorna todos os dados ordenados em ordem alfabética. R.: SELECT * FROM ALUNO ORDER BY NOME ASC; 11- Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela chamada ALUNO. O que ocorre quando fazemos o comando: SELECT * FROM ALUNO? R.: É exibido todos os campos da tabela aluno. 12- Em um cadastro de produto, compõe-se uma tabela de para “produto” e outra para “tipo de produto”, conforme o diagrama a seguir: Existem produtos cadastrados sem nenhum tipo associado. Sabendo que existe um relacionamento de 1-N entre tipo de produto e produto, como poderíamos identificar esses tipos? R.: select nome_produto, nome_tipo from produto left join tipo_de_produto on produto.cod_tipo = tipo_de_produto.cod_tipo 13- Sobre as funções básicas de um banco de dados, sabemos que os métodos de acesso são um aspecto essencial. Com relação aos métodos de acesso, sabemos que ao menos duas categorias de linguagem devem estar presentes em um sistema de gerenciamento de banco de dados (SGBD). Dia quais são essas duas categorias e explique brevemente o seu uso. R - DDL: permite a especificação do esquema da organização, ou seja, entidades com seus atributos e tipos de dados associados, os relacionamentos entre essas entidades e os índices de acesso associados aos atributos. DML: permite as operações de manipulação de dados, executadas pelas aplicações inclusão, alteração, exclusão e consulta 3). Dadas as tabelas abaixo, escreva o comando para retornar o nome dos alunos e seus respectivos professores. RESPOSTA - SELECT A.NOME, P.NOME FROM ALUNO A LEFT JOIN ALUNO_PROFESSOR AL ON AL.RA = A.RA LEFT JOIN PROFESSOR P ON P.FUNCIONAL = AL.FUNCIONAL; 4). Dado o diagrama abaixo, qual seria o seu tipo de cardinalidade no MER? Justifique sua resposta. RESPOSTA - Cardinalidademuitos-para-muitos (N:N). Podemos observar pela tabela intermediaria ALUNO_PROFESSOR que foi gerada para efetuar a relação entre as tabelas ALUNO e PROFESSOR. 5). Dado o modelo de dados a seguir. Responda: Como deve ser escrito o comando “SELECT” para que retorne os dados no formato a seguir? RESPOSTA - select cod_produto, cod_fornecedor, cod_tipo, nome_produto from produto join tipo_produto on produto.cod_cod_tipo = tipo_produto.cod_tipo join fornecedor on produto.cod_fornecedor = fornecedor.cod_fornecedor join nota on produto.cod_produto = nota.cod_produto order by cod_produto asc, cod_fornecedor asc, cod_tipo asc; 6). Supondo que estamos diante de uma tabela X com 4 colunas, qual a diferença entre os comandos abaixo: RESPOSTA - Comando 1: SELECT * FROM tabela_x Comando2: SELECT coluna_1, coluna_2, coluna_3, coluna_4 FROM tabela_x Apesar da escrita diferente, ambos retornam o mesmo resultado, apenas que o comando 2 seleciona a ordem das colunas. 7). Considere um banco de dados que contenha uma tabela chamada ALUNO,que contenha 5 campos, da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e não pode ser nulo; o campo NOME, com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA que devem ser números reais. Qual é o comando para se inserir o seguinte registro: RA igual a 123, o nome deve ser Maria, a nota da prova P1 deve ser 8 e a nota da prova P2 deve ser 9? RESPOSTA - INSERT INTO ALUNO (RA, NOME, NOTAP1, NOTAP2) VALUES (‘123’, ‘Maria’, 8, 9); 8). Dada a tabela abaixo, escreva o comendo para excluir todos os alunos que tenham o nome começado com a letra L. R.: DELETE FROM ALUNO WHERE NOME LIKE ‘L%’; 9). Dado o comando abaixo, indique o que esta errado. INSERT INTO TABELA (CAMPO1, CAMPO2) VALUES (VALOR1, VALOR2) WHERE CAMPO1 = 100 R.: Não se utiliza WHERE em comandos INSERT. 10). Dada a tabela abaixo, escreva o comando que retorna todos os dados ordenados em ordem alfabética. RESPOSTA - SELECT * FROM ALUNO ORDER BY NOME ASC; 11). Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela chamada ALUNO. O que ocorre quando fazemos o comando: SELECT *FROM ALUNO? RESPOSTA - É exibido todos os campos da tabela aluno. 12). Considere um banco de dados que contenha ta tabela ALUNO, que contenha 5 campos da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e nãop ode ser nulo; op campo NOME com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA, que devem ser números reais. Com base nesse banco e nessa tabela, escreva um comando que calcule a media e insira o seu valor no banco de dados, para cada um dos alunos cadastrados na tabela. Depois escreva um comando que selecione todos os registros das colunas NOME e MEDIA da tabela ALUNO, mostrando que os valores foram calculados corretamente, RESPOSTA - UPDATE ALUNO SET MEDIA = (NOTAP1+NOTAP2)/2; SELECT NOME, MEDIA FROM ALUNO; 13). O que pode ser considerado como “entregável” em um projeto de banco de dados? RESPOSTA - Visibilidade do estado do sistema, correspondência entre o sistema e o mundo real, controle e liberdade do usuário, consistência e padronização, prevenção de erros, reconhecimento em vez de lembrança e flexibilidade. 8. Avalie as tabelas a seguir: P). Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela chamada ALUNO. O que ocorre quando fazemos o comando: SELECT * FROM ALUNO? É exibido todos os campos da tabela aluno. 8. Avalie as tabelas a seguir: 15. Considere a tabela e o comando a seguir: TELEFONE PK PK DDD TELEFONE char(2) char(9) OPERADORA varchar(10) INSERT INTO TELEFONE (TELEFONE, DDD, OPERADORA) VALUES (‘11’, ‘987654321’, ‘XX’) E) Porque foi feito para bases UNIX/LINUX, e não pode ser instalado em servidores Windows. P). Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela chamada ALUNO. O que ocorre quando fazemos o comando: SELECT * FROM ALUNO? É exibido todos os campos da tabela aluno. 2). Sobre as funções básicas de um banco de dados, sabemos que os métodos de acesso são um aspecto essencial. Com relação aos métodos de acesso, sabemos que ao menos duas categorias de linguagem devem estar presentes em um sistema de gerenciamento de banco de dados (SGBD). Dia quais são essas duas categorias e explique brevemente o seu uso. R - DDL: permite a especificação do esquema da organização, ou seja, entidades com seus atributos e tipos de dados associados, os relacionamentos entre essas entidades e os índices de acesso associados aos atributos. DML: permite as operações de manipulação de dados, executadas pelas aplicações inclusão, alteração, exclusão e consulta 3). Dadas as tabelas abaixo, escreva o comando para retornar o nome dos alunos e seus respectivos professores. RESPOSTA - SELECT A.NOME, P.NOME FROM ALUNO A LEFT JOIN ALUNO_PROFESSOR AL ON AL.RA = A.RA LEFT JOIN PROFESSOR P ON P.FUNCIONAL = AL.FUNCIONAL; 4). Dado o diagrama abaixo, qual seria o seu tipo de cardinalidade no MER? Justifique sua resposta. RESPOSTA - Cardinalidade muitos-para-muitos (N:N). Podemos observar pela tabela intermediaria ALUNO_PROFESSOR que foi gerada para efetuar a relação entre as tabelas ALUNO e PROFESSOR. 5). Dado o modelo de dados a seguir. Responda: Como deve ser escrito o comando “SELECT” para que retorne os dados no formato a seguir? RESPOSTA - select cod_produto, cod_fornecedor, cod_tipo, nome_produto from produto join tipo_produto on produto.cod_cod_tipo = tipo_produto.cod_tipo join fornecedor on produto.cod_fornecedor = fornecedor.cod_fornecedor join nota on produto.cod_produto = nota.cod_produto order by cod_produto asc, cod_fornecedor asc, cod_tipo asc; 6). Supondo que estamos diante de uma tabela X com 4 colunas, qual a diferença entre os comandos abaixo: RESPOSTA - Comando 1: SELECT * FROM tabela_x Comando2: SELECT coluna_1, coluna_2, coluna_3, coluna_4 FROM tabela_x Apesar da escrita diferente, ambos retornam o mesmo resultado, apenas que o comando 2 seleciona a ordem das colunas. 7). Considere um banco de dados que contenha uma tabela chamada ALUNO,que contenha 5 campos, da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e não pode ser nulo; o campo NOME, com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA que devem ser números reais. Qual é o comando para se inserir o seguinte registro: RA igual a 123, o nome deve ser Maria, a nota da prova P1 deve ser 8 e a nota da prova P2 deve ser 9? RESPOSTA - INSERT INTO ALUNO (RA, NOME, NOTAP1, NOTAP2) VALUES (‘123’, ‘Maria’, 8, 9); 10). Dada a tabela abaixo, escreva o comando que retorna todos os dados ordenados em ordem alfabética. RESPOSTA - SELECT * FROM ALUNO ORDER BY NOME ASC; 11). Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela chamada ALUNO. O que ocorre quando fazemos o comando: SELECT *FROM ALUNO? RESPOSTA - É exibido todos os campos da tabela aluno. 12). Considere um banco de dados que contenha ta tabela ALUNO, que contenha 5 campos da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e nãop ode ser nulo; op campo NOME com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA, que devem ser números reais. Com base nesse banco e nessa tabela, escreva um comando que calcule a media e insira o seu valor no banco de dados, para cada um dos alunos cadastrados na tabela. Depois escreva um comando que selecione todos os registros das colunas NOME e MEDIA da tabela ALUNO, mostrando que os valores foram calculados corretamente, RESPOSTA - UPDATE ALUNO SET MEDIA = (NOTAP1+NOTAP2)/2; SELECT NOME, MEDIA FROM ALUNO; 13). O que pode ser considerado como “entregável” em um projeto de banco de dados? RESPOSTA - Visibilidade do estado do sistema, correspondência entre o sistema e o mundo real, controle e liberdade do usuário, consistência e padronização, prevenção de erros, reconhecimento em vez delembrança e flexibilidade. BANCO DE DADOS 6/6/18 20;23 1)Sobre a chave de um banco de dados, assinale a INCORRETA. E) A chave estrangeira nasce dentro da própria tabela. 11)É o valor efetivamente pago ao funcionário pelo seu trabalho desenvolvido dentro da organização. esta afirmação se refere a: R- SALÁRIO 12)É um sentimento agradável e não somente está relacionado à renda, mas também...capacidade de pensar, sentir e relacionar, ampliando e aperfeiçoando sua inteligência e suas relações sociais. estas afirmações são inerentes a: 13)É um conjunto de valores, atitudes e padrões de comportamento, formais e informais, existentes em uma organização.Esta afirmação está relacionada a: 14)É relacionada com alcançar os objetivos empresariais e considera os tópicos. R- Gestão estratégica de Recursos Humanos 15)Nesse modelo os funcionários são designados para os projetos e nestes são instruídos em “o que e quando fazer as atividades”, embora pertençam a uma área funcional que lhes define “como fazer” as atividades mencionadas. O modelo de organização acima descreve? R- Organização Matricial. MUTIPLA ESCOLHA e) Fazer um INSERT em PRODUTO usando WHERE COD_PROTUDO = X P) Analise a tabela a seguir P) O processo de concluir em grupo de pessoas, transformando e em uma equipe que gera resultados. A habilidade de motivar e influenciar os … D) Liderança P) é o seguimento da administração de recursos humanos de maior importância pois ela, quando bem aplicada, possibilita… B) Administração de cargos P) A autogestão e a gestão de resultados e a gestão de pessoas, compõem: P) possuem um papel importante que é o de servir determinada sociedade e a forma… E) o papel das organizações P) segundo maximi.. (1992) uma combinação de esforços ...que tem por finalidade de realizar propósitos coletivos refere-se a: A) a definição de organização. 2). Sobre as funções básicas de um banco de dados, sabemos que os métodos de acesso são um aspecto essencial. Com relação aos métodos de acesso, sabemos que ao menos duas categorias de linguagem devem estar presentes em um sistema de gerenciamento de banco de dados (SGBD). Dia quais são essas duas categorias e explique brevemente o seu uso. R - DDL: permite a especificação do esquema da organização, ou seja, entidades com seus atributos e tipos de dados associados, os relacionamentos entre essas entidades e os índices de acesso associados aos atributos. DML: permite as operações de manipulação de dados, executadas pelas aplicações inclusão, alteração, exclusão e consulta. 3). Dadas as tabelas abaixo, escreva o comando para retornar o nome dos alunos e seus respectivos professores. RESPOSTA - SELECT A.NOME, P.NOME FROM ALUNO A LEFT JOIN ALUNO_PROFESSOR AL ON AL.RA = A.RA LEFT JOIN PROFESSOR P ON P.FUNCIONAL = AL.FUNCIONAL; 4). Dado o diagrama abaixo, qual seria o seu tipo de cardinalidade no MER? Justifique sua resposta. RESPOSTA - Cardinalidade muitos-para-muitos (N:N). Podemos observar pela tabela intermediaria ALUNO_PROFESSOR que foi gerada para efetuar a relação entre as tabelas ALUNO e PROFESSOR. 5). Dado o modelo de dados a seguir. Responda: Como deve ser escrito o comando “SELECT” para que retorne os dados no formato a seguir? RESPOSTA - select cod_produto, cod_fornecedor, cod_tipo, nome_produto from produto join tipo_produto on produto.cod_cod_tipo = tipo_produto.cod_tipo join fornecedor on produto.cod_fornecedor = fornecedor.cod_fornecedor join nota on produto.cod_produto = nota.cod_produto order by cod_produto asc, cod_fornecedor asc, cod_tipo asc; 6). Supondo que estamos diante de uma tabela X com 4 colunas, qual a diferença entre os comandos abaixo: RESPOSTA - Comando 1: SELECT * FROM tabela_x Comando2: SELECT coluna_1, coluna_2, coluna_3, coluna_4 FROM tabela_x Apesar da escrita diferente, ambos retornam o mesmo resultado, apenas que o comando 2 seleciona a ordem das colunas. 7). Considere um banco de dados que contenha uma tabela chamada ALUNO,que contenha 5 campos, da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e não pode ser nulo; o campo NOME, com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA que devem ser números reais. Qual é o comando para se inserir o seguinte registro: RA igual a 123, o nome deve ser Maria, a nota da prova P1 deve ser 8 e a nota da prova P2 deve ser 9? RESPOSTA - INSERT INTO ALUNO (RA, NOME, NOTAP1, NOTAP2) VALUES (‘123’, ‘Maria’, 8, 9); 10). Dada a tabela abaixo, escreva o comando que retorna todos os dados ordenados em ordem alfabética. RESPOSTA - SELECT * FROM ALUNO ORDER BY NOME ASC; 11). Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela chamada ALUNO. O que ocorre quando fazemos o comando: SELECT *FROM ALUNO? RESPOSTA - É exibido todos os campos da tabela aluno. 12). Considere um banco de dados que contenha ta tabela ALUNO, que contenha 5 campos da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e nãop ode ser nulo; op campo NOME com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA, que devem ser números reais. Com base nesse banco e nessa tabela, escreva um comando que calcule a media e insira o seu valor no banco de dados, para cada um dos alunos cadastrados na tabela. Depois escreva um comando que selecione todos os registros das colunas NOME e MEDIA da tabela ALUNO, mostrando que os valores foram calculados corretamente, RESPOSTA - UPDATE ALUNO SET MEDIA = (NOTAP1+NOTAP2)/2; SELECT NOME, MEDIA FROM ALUNO; 13). O que pode ser considerado como “entregável” em um projeto de banco de dados? RESPOSTA - Visibilidade do estado do sistema, correspondência entre o sistema e o mundo real, controle e liberdade do usuário, consistência e padronização, prevenção de erros, reconhecimento em vez de lembrança e flexibilidade. GABARITO DE ADMINISTRAÇÃO DE BANCO DE DADOS QUESTIONÁRIO 1° MÓDULO 1. Além de fornecer uma solução robusta em banco de dados, também fornece diversos aplicativos para automatizar toda a cadeia produtiva e ferramentas de tomadas de decisão. Estamos falando de qual(is) empresa(s)? Resp: As alternativas a e b são verdadeiras. (Oracle e Microsoft) 2. A que se deve a grande expansão dos bancos de dados na década de 80? Resp: Ao surgimento do computador pessoal. 3. Assinale a alternativa verdadeira. Resp: Um especialista em TI é um especialista em soluções, não em ferramentas. 4. Assinale a alternativa verdadeira. Resp: Todas as afirmações são verdadeiras. (Há boas soluções de banco de dados em software livre; Alguns bancos proprietários disponibilizam versões gratuitas de seus bancos para testes e / ou treinamentos; O MySQL é largamente utilizado para aplicações web) 5. O SQL Server nasceu inicialmente de uma parceria entre a Microsoft e outra empresa. Que outra empresa era essa? Resp: Sybase. 6. Os bancos de dados open source, devido à sua forma de distribuição, não possuem informações 100% confiáveis sobre penetração de mercado. Baseando-se nisso, responda qual das afirmações é uma forma de se medir a penetração de mercado de um banco open source. Resp: Os bancos como o MySQL que oferecem certificação têm uma visão maior da penetração de mercado do seu banco. 7. Peter Chen, um pesquisador da IBM, ficou famoso por sua contribuição para os bancos de dados relacionais. Essa contribuição foi: Resp: o Modelo Entidade Relacionamento. 9. São bancos de dados open source: Resp: PostgreSQL e o MySQL. 10. São problemas resolvidos com a adoção de uma solução de banco de dados: Resp: Todas as anteriores. (Difícil acesso à informação; Problemas de segurança; Informações duplicadas) VÍDEO AULAS 1° MÓDULO 1. Certificações são o meio pelo qual uma empresa atesta a competência de um profissional em sua tecnologia. Assim, assinale a alternativa correta: Resp: O profissional certificado tem atestado pela empresa sua capacidade, o que lhe garante certa vantagem no mercado de trabalho. 2. Em relação aos modelos de dados apresentados, podemos dizer que o modelo relacional leva vantagemsobre o hierárquico e o em rede por: I. Não ser obrigado a gravar dados sequenciais. II. Permitir expressar melhor a realidade. III. Permitir gravar e recuperar dados de forma mais rápida e fácil. Resp: As três frases são verdadeiras. 3. Qual o banco de dados mais indicado para as empresas? Resp: Não existe banco de dados certo – cada caso é um caso. 4. Uma grande empresa varejista possui armazenado em seus servidores quase 10 anos de dados de vendas. Com base nisso, podemos afirmar: Resp: A empresa possui uma “pedra bruta” em suas mãos que, quando lapidada, pode vir a se tornar uma joia preciosa na forma de informação para tomada de decisões estratégicas. QUESTIONÁRIO 2° MÓDULO 1. Chamamos de entidade fraca a entidade/tabela que: Resp: Possui chave primária composta apenas por chaves estrangeiras. 2. Dentro dos relacionamentos entre tabelas, temos o conceito de relacionamentos fortes e relacionamentos fracos. Sobre isso, é correto afirmar que: I. relacionamentos fortes e fracos têm relação com a importância das entidades. II. um relacionamento é forte quando uma chave estrangeira compõe uma chave primária. III. um relacionamento é fraco quando a chave estrangeira é apenas um atributo em outra tabela, não fazendo parte da chave. Resp: As afirmativas II e III estão corretas. 3. Dizemos que as diferenças entre os bancos transacionais (OLTP) e multidimensionais (OLAP) são uma questão de normalização? Por quê? I. A base OLTP é normalizada e a base OLAP não é normalizada. II. A base OLTP favorece o armazenamento, enquanto a OLAP favorece as consultas. III. Não existem diferenças entre as bases OLTP e OLAP. Resp: As afirmativas I e II estão corretas. 7. Quando um banco de dados está na 3ª Forma Normal, dizemos que: Resp: Não existem atributos que dependam de outros atributos que não sejam a chave. VÍDEO AULAS 2° MÓDULO 1.Assinale a alternativa correta. Resp: A normalização tem como objetivo evitar redundâncias desnecessárias dentro de um banco de dados. 2. Assinale a alternativa correta. Resp: Campos calculados não devem ser gravados na tabela, e sim criados em consultas. 3. Como nascem os bancos de dados? Resp: Nascem a partir de uma necessidade. 4. Quando dizemos que um determinado alimento está dentro de um grupo e um grupo pode conter vários alimentos, estamos falando de qual tipo de cardinalidade? Resp: 1-N. QUESTIONÁRIO 3° MÓDULO 1. Comandos como SELECT, FROM, WHERE e INNER JOIN fazem parte de que grupo de linguagem SQL? Resp: DQL. Comentário: o DQL é responsável pela linguagem de consulta ao banco de dados e todos os comandos que fazem parte dela. 2. Dado o comando DELETE FROM TABELA, é correto afirmar que: R.: todos os registros da tabela serão excluídos. Comentário: pela ausência da cláusula WHERE, é correto afirmar que todos os registros da tabela serão excluídos 3. Dado o comando abaixo, assinale a alternativa correta: DECLARE @I INT; BEGIN SET @I = 10; BEGIN TRANSACTION INSERT INTO TABELA (CAMPO_1) VALUES (@I) END R.: O comando dará erro porque falta um COMMIT ou ROLLBACK fechando o BEGIN TRANSACTION. Comentário: o comando BEGIN TRANSACTION precisa ser fechado com um comando COMMIT ou ROLLBACK. 4. Dado o comando abaixo, assinale a alternativa que represente o resultado: DELETE FROM TABELA WHERE CODIGO = ‘X’ R.: Irá excluir os dados onde o campo código for igual a X. Comentário: o comando DELETE exclui os dados de uma tabela; a cláusula WHERE restringe o raio de ação do comando, nesse caso, para onde o campo CODIGO for igual a X. 5. Foi pedido a um desenvolvedor, que desenvolvesse uma procedure para resolver um determinado problema no banco de dados. Para tanto, o desenvolvedor usou o tipo de linguagem chamado: Resp: DTL. Comentário: para o desenvolvimento de procedures, ou seja, programas dentro do banco de dados, utilizamos a linguagem DTL. 6. Foi solicitado ao DBA que desse permissão a uma tabela a um usuário X. Para dar a permissão, é correto afirmar que o DBA usou que tipo de linguagem? Resp: DCL. Comentário: DCL, ou Data Control Language (Linguagem de Controle de Dados) é o tipo de linguagem SQL que controla a parte de permissões. 7. Para removermos uma tabela do banco de dados, utilizamos qual comando SQL? Resp: DROP TABLE. Comentário: para remover uma tabela do banco de dados, utilizamos o comando DROP TABLE. 8. Quando acessamos informações de mais de uma tabela, temos de usar JOINS ou junções entre as tabelas por meio de um atributo em comum. São tipos de JOIN, exceto: Resp: ULTRA JOIN. Comentário: todos são tipos permitidos de JOIN entre as tabelas, exceto o ULTRA JOIN, que não existe. 9. Quando falamos de INSERT, DELETE e UPDATE, estamos nos referindo a que tipo de linguagem SQL? Resp: DML. Comentário: DML ou Data Manipulation Language é a linguagem que manipula os dados por meio dos comandos INSERT, DELETE e UPDATE. DCL é a linguagem de controle; DQL é a de consulta; DTL é a de transação; e DDL é de definição. 10. São tipos de linguagem SQL: Resp: DDL e DML Comentário: os tipos de linguagem SQL são DDL, DML, DCL, DTL e DQL. VÍDEO AULAS 3° MÓDULO 1. Ao realizar uma consulta em duas tabelas utilizando um LEFT JOIN, o resultado será: Resp: Todos os registros da primeira tabela mais os registros da segunda tabela que tiverem referência na primeira. 2. Assinale a alternativa correta. Resp: Usamos a cláusula WHERE nos comandos DELETE e UPDATE para restringir a ação destes comandos. 3. Assinale a alternativa correta. Resp: ROLLBACK é um comando DTL que desfaz uma ação dentro de uma Stored Procedure. 4. Por que ao armazenar dados como o CPF ou o número do telefone, usamos dados do tipo CHAR? Resp: Porque não serão usados em cálculos e possuem tamanho fixo. QUESTIONÁRIO 4° MÓDULO 1. Dado o diagrama abaixo, assinale a alternativa que retorne o nome de uma pessoa e seu respectivo telefone: Resp: SELECT NOME, NUM_TEL FROM PESSOA INNER JOIN CELULAR. ON PESSOA.CPF = CELULAR.CPF. Comentário: a sintaxe correta deve conter INNER JOIN amarrando as chaves primária e estrangeira de forma correta. 2. Dado o diagrama abaixo, assinale a alternativa que retorne a quantidade de telefones por operadora: Resp: SELECT OPERADORA, COUNT(NUM_TEL) QUANTIDADE FROM CELULAR GROUP BY OPERADORA. Comentário: para contar algo dentro de uma consulta usamos o comando COUNT. 3. Dado o comando abaixo, assinale a alternativa correta sobre a parte em destaque: CREATE TABLE ALUNO ( RA CHAR(7) NOT NULL, NOME VARCHAR(100) CONSTRAINT PK_ALUNO PRIMARY KEY(RA) ) R.: Refere-se ao nome que estamos dando para a Chave Primária da tabela. Comentário: a linha com o comando em destaque, refere-se à definição da chave primária da tabela ALUNO. O comando em destaque refere-se ao nome da Chave Primária 4. Dado o comando abaixo, assinale a alternativa que indica o comando usado para dar um “apelido” para uma coluna ou tabela: SELECT NUM_CPF XXXXX CPF FROM TB_PESSOA XXXXX PESSOA Resp: AS. Comentário: apesar de não ser obrigatório, usamos o comando AS para dar um “apelido” (ALIAS) para colunas ou tabelas. 5. Dado o comando abaixo, indique por que ele dará erro. CREATE TABLE ALUNO ( RA CHAR(7), NOME VARCHAR(100) CONSTRAINT PK_ALUNO PRIMARY KEY(RA) ) Resp: Para um atributo ser chave, ele deve estar definido como NOT NULL. Comentário: para podermos definir um atributo como chave primária, ele deve estar definido como NOT NULL. 6. Diga o que acontecerá ao executar o comando abaixo: UPDATE TABELA SET CAMPO_1 = VALOR_1 WHERE CAMPO_2 = VALOR_2 Resp: Um registro da tabela será atualizado. Comentário: quando executamos um UPDATE com a cláusula WHERE, apenas um registro ou um conjunto de registros será atualizado. 7. O comando SQL para inserir todos os registros da tabela T1 para a tabela T2 é? Resp: INSERT INTO T2 SELECT * FROM T1. Comentário: quando existe um SELECT após um INSERT, queremos dizer que estamos inserindona tabela o resultado de uma consulta. A alternativa correta é a A, porque é a única que possui o comando SELECT escrito corretamente. 8. O que há de errado no comando abaixo? INSERT INTO TABELA (CAMPO_1, CAMPO_2, CAMPO_3) VALUES (VALOR_3, VALOR_2, VALOR_1) Resp: Os VALORES e os CAMPOS devem estar na mesma ordem. Comentário: para que o comando INSERT funcione, as colunas e os valores devem ser declarados na mesma ordem. 9. Os comandos que fazem parte de uma sintaxe padrão de consulta são: Resp: SELECT, FROM, WHERE. Comentário: os comandos básicos de uma consulta SQL são SELECT, FROM, WHERE. 10. Para retornar a data do sistema (em SQL Server) , utilizamos o comando: Resp: SELECT GEDATE(). Comentário: em SQL Server usamos a função GETDATE() para retornar a data do sistema. VÍDEO AULAS 4° MÓDULO 1. Assinale a alternativa correta. Uma ferramenta de ETL é útil quando temos de fazer: I. Uma migração entre dois (ou mais) bancos de dados iguais. II. Uma migração entre dois (ou mais) bancos de dados diferentes. III. Uma integração entre duas (ou mais) fontes de dados. Resp: As alternativas I, II e III são corretas. 2. Com base no que fizemos até o momento, é possível trabalhar com apenas um tipo de linguagem SQL dentro do banco de dados? Se sim, por quê? Resp: Não é possível, porque dentro do banco de dados é normal encontrarmos situações em que mais de um tipo de SQL se faz necessário. 3. Assinale a alternativa correta. Resp: Procedures são mais dinâmicas, pois não possuem obrigatoriedade de ter parâmetros de entrada e saída. 4. Um processo de ETL básico possui três etapas. São elas: Resp: Uma entrada, uma transformação e uma saída. BANCO DE DADOS 6/6/18 20;23 1)Sobre a chave de um banco de dados, assinale a INCORRETA. E) A chave estrangeira nasce dentro da própria tabela. 4)O que acontece se o comando a seguir for executado? SELECT * FROM FUNCIONARIO WHERE SALARIO >= 10.000.00 11)É o valor efetivamente pago ao funcionário pelo seu trabalho desenvolvido dentro da organização. esta afirmação se refere a: R- SALÁRIO 12)É um sentimento agradável e não somente está relacionado à renda, mas também...capacidade de pensar, sentir e relacionar, ampliando e aperfeiçoando sua inteligência e suas relações sociais. estas afirmações são inerentes a: 13)É um conjunto de valores, atitudes e padrões de comportamento, formais e informais, existentes em uma organização.Esta afirmação está relacionada a: 14)É relacionada com alcançar os objetivos empresariais e considera os tópicos. R- Gestão estratégica de Recursos Humanos 15)Nesse modelo os funcionários são designados para os projetos e nestes são instruídos em “o que e quando fazer as atividades”, embora pertençam a uma área funcional que lhes define “como fazer” as atividades mencionadas. O modelo de organização acima descreve? R- Organização Matricial. MUTIPLA ESCOLHA P) Considere a tabela e o comando a seguir: INSERT INTO TELEFONE (TELEFONE, DDD, OPERADORA) VALUES (“11”, “987654321”, “XX”) Qual será o problema com o comando em questão a) Não dará erro b) Porque estou gravando um número no lugar de um texto. c) Porque a ordem dos valores está diferente da ordem dos campos. d) Porque 987654321 não é um número valido. e) Porque a XX não é uma operadora válida. 10- O SQLite, apesar de ser um banco de dados relacional, não pode ser implementado em arquitetura cliente-servidor como o SQL Server ou o Oracle. Por que? a) Não é robusto o suficiente b) Possui limitações de capacidade c) Porque é uma biblioteca desenvolvida em C para ser embarcado em um software durante sua fase de desenvolvimento d) Porque pertence a Microsoft, e não pode ser instalado em bases UNIX/LINUX e) Porque foi feito para bases UNIX/LINUX, e não pode ser instalado em servidores Windows. P) Considere o esquema a seguir: b) Cognos, Bussiness Objectys e Hyperion c) Siebel e Dynamics d) ER3, Applications e Compiere e) Autocad P). Avalie a tabela a seguir: P) Considere o esquema a seguir: 8. Avalie as tabelas a seguir: 15. Considere a tabela e o comando a seguir: P) O processo de concluir em grupo de pessoas, transformando e em uma equipe que gera resultados. A habilidade de motivar e influenciar os … D) Liderança P) é o seguimento da administração de recursos humanos de maior importância pois ela, quando bem aplicada, possibilita… B) Administração de cargos P) A autogestão e a gestão de resultados e a gestão de pessoas, compõem: P) possuem um papel importante que é o de servir determinada sociedade e a forma… E) o papel das organizações P) segundo maximi.. (1992) uma combinação de esforços ...que tem por finalidade de realizar propósitos coletivos refere-se a: A) a definição de organização. 2). Sobre as funções básicas de um banco de dados, sabemos que os métodos de acesso são um aspecto essencial. Com relação aos métodos de acesso, sabemos que ao menos duas categorias de linguagem devem estar presentes em um sistema de gerenciamento de banco de dados (SGBD). Dia quais são essas duas categorias e explique brevemente o seu uso. R - DDL: permite a especificação do esquema da organização, ou seja, entidades com seus atributos e tipos de dados associados, os relacionamentos entre essas entidades e os índices de acesso associados aos atributos. DML: permite as operações de manipulação de dados, executadas pelas aplicações inclusão, alteração, exclusão e consulta. 3). Dadas as tabelas abaixo, escreva o comando para retornar o nome dos alunos e seus respectivos professores. RESPOSTA - SELECT A.NOME, P.NOME FROM ALUNO A LEFT JOIN ALUNO_PROFESSOR AL ON AL.RA = A.RA LEFT JOIN PROFESSOR P ON P.FUNCIONAL = AL.FUNCIONAL; 4). Dado o diagrama abaixo, qual seria o seu tipo de cardinalidade no MER? Justifique sua resposta. RESPOSTA - Cardinalidade muitos-para-muitos (N:N). Podemos observar pela tabela intermediaria ALUNO_PROFESSOR que foi gerada para efetuar a relação entre as tabelas ALUNO e PROFESSOR. 5). Dado o modelo de dados a seguir. Responda: Como deve ser escrito o comando “SELECT” para que retorne os dados no formato a seguir? RESPOSTA - select cod_produto, cod_fornecedor, cod_tipo, nome_produto from produto join tipo_produto on produto.cod_cod_tipo = tipo_produto.cod_tipo join fornecedor on produto.cod_fornecedor = fornecedor.cod_fornecedor join nota on produto.cod_produto = nota.cod_produto order by cod_produto asc, cod_fornecedor asc, cod_tipo asc; 6). Supondo que estamos diante de uma tabela X com 4 colunas, qual a diferença entre os comandos abaixo: RESPOSTA - Comando 1: SELECT * FROM tabela_x Comando2: SELECT coluna_1, coluna_2, coluna_3, coluna_4 FROM tabela_x Apesar da escrita diferente, ambos retornam o mesmo resultado, apenas que o comando 2 seleciona a ordem das colunas. 7). Considere um banco de dados que contenha uma tabela chamada ALUNO,que contenha 5 campos, da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e não pode ser nulo; o campo NOME, com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA que devem ser números reais. Qual é o comando para se inserir o seguinte registro: RA igual a 123, o nome deve ser Maria, a nota da prova P1 deve ser 8 e a nota da prova P2 deve ser 9? RESPOSTA - INSERT INTO ALUNO (RA, NOME, NOTAP1, NOTAP2) VALUES (‘123’, ‘Maria’, 8, 9); 9). Dado o comando abaixo, indique o que esta errado. INSERT INTO TABELA (CAMPO1, CAMPO2) VALUES (VALOR1, VALOR2) WHERE CAMPO1 = 100 RESPOSTA - Não se utiliza WHERE em comandos INSERT. 10). Dada a tabela abaixo, escreva o comando que retorna todos os dados ordenados em ordem alfabética. RESPOSTA - SELECT * FROM ALUNO ORDER BY NOME ASC; 11). Considere o comando “SELECT” da linguagem SQL. Suponha ainda uma tabela chamada ALUNO. O que ocorre quando fazemos o comando: SELECT *FROM ALUNO? RESPOSTA - É exibido todos os campos da tabela aluno. 12). Considere um banco de dados que contenha ta tabela ALUNO, que contenha 5 campos da seguinte forma: um campo chamado RA, que é uma cadeia de 7 caracteres e nãop ode ser nulo; op campoNOME com 100 caracteres e também não pode ser nulo; e os campos NOTAP1, NOTAP2 e MEDIA, que devem ser números reais. Com base nesse banco e nessa tabela, escreva um comando que calcule a media e insira o seu valor no banco de dados, para cada um dos alunos cadastrados na tabela. Depois escreva um comando que selecione todos os registros das colunas NOME e MEDIA da tabela ALUNO, mostrando que os valores foram calculados corretamente, RESPOSTA - UPDATE ALUNO SET MEDIA = (NOTAP1+NOTAP2)/2; SELECT NOME, MEDIA FROM ALUNO; 13). O que pode ser considerado como “entregável” em um projeto de banco de dados? SEM RESPOSTA
Compartilhar