You are on page 1of 13

QUESTÕES DE BANCO DE DADOS 1.

Quanto às restrições de chave estrangeira em um banco de dados, considere: a operação de atualização sobre a chave primária na tabela referenciada propagase a todas as chaves estrangeiras correspondentes. Tratase de (A) on update set default. (B) on update set null. (C) on update cascade. (D) on delete set null. (E) on delete cascade. COMENTÁRIO As restrições permitem o nível de controle sobre os dados. TIPOS - Restrição de Verificação:Permite especificar que os valores de uma determinada coluna devem estar de acordo com uma expressão booleana. A restrição de verificação é formada pela palavra chave CHECK seguida por uma expressão entre parênteses. Para especificar o nome da restrição deve ser utilizada a palavra chave CONSTRAINT, seguida por um identificador, seguido por sua vez pela definição da restrição. - Restrição não nulo: especifica que uma coluna não pode assumir o valor nulo. - A restrição de unicidade: Garante que os dados contidos na coluna, ou no grupo de colunas, é único em relação a todas as outras linhas da tabela. É obtido através do comando UNIQUE. - Chave Primária:É simplesmente a combinação da restrição de unicidade com a restrição de não-nulo. - Chave Estrangeira:Mantém a integridade referencial entre duas tabelas relacionadas. Não é permitido excluir um item que está sendo referenciado em outra tabela. Se isso acontecer as duas opções para resolver o problema é RESTRINGIR ou EXCLUIR EM CASCATA. -RESTRICT:Ñ permite excluir uma linha referenciada. NO ACTION:Permite postergar a verificação para mais tarde na transação, enquanto RESTRICT não permite. CASCADE: Especifica que, quando a linha referenciada é excluída, as linhas que fazem referência também devem ser excluídas automaticamente. SET NULL e SET DEFAULT. Estas opções fazem com que as colunas que fazem referência sejam definidas como nulo ou com o valor padrão,

respectivamente, quando a linha referenciada é excluída. Semelhante a ON DELETE existe também ON UPDATE, chamada quando uma coluna referenciada é alterada (atualizada). As ações possíveis são as mesmas. ______________________________________ 2. Considere o diagrama entidaderelacionamento: Quanto à participação no relacionamento é correto afirmar que (A) Departamento é obrigatório. (B) Funcionário é entidade fraca. (C) Departamento é entidade fraca. (D) Funcionário é opcional. (E) Departamento é opcional. COMENTÁRIO - Toda a estrutura lógica do banco de dados é expressa graficamente pelo diagrama de E-R. As principais diferenças entre as notações: – Os relacionamentos são representados apenas por uma linha que une as duas entidades; – Somente relacionamentos binários; – A notação de cardinalidade máxima e mínima é gráfica, sendo assim: o símbolo mais próximo ao retângulo é a representação da cardinalidade máxima e o mais distante a cardinalidade mínima. ______________________________________ 3. Em um SGBD relacional, são pertinentes à linguagem de definição de dados e à linguagem de manipulação de dados, respectivamente: (A) Drop Index e Alter Table. (B) Create Index e Insert Into. (C) Delete e Select. (D) Update e Drop Table. (E) Insert Into e Create Table. COMENTÁRIO LINGUAGEM DE DEFINIÇÃO DE DADOS DDL:Definem a estrutura de um banco de dados. Instruções SQL: Create Table; Drop - remove um banco de dados, tabela, índice ou visão existente; Alter - Modifica um objeto existente do banco de dados. LINGUAGEM DE MANIPULAÇÃO DE DADOS –DML: Têm sua capacidade funcional organizada pela palavra inicial em uma declaração, a qual é quase sempre um verbo. No caso da SQL, estes

então a classificação de B deve ser maior que a de A. mas não pode ver B. e cada usuário recebe um certo nível de liberação. . Essas abordagens são conhecidas como controle discricionário e controle mandatário. ______________________________________ 4. Os esquemas mandatários tendem assim a ser hierárquicos por natureza e. No Controle Discriminatório. Já no caso do controle mandatário cada objeto é assimilado com um certo nível de classificação. mas não A. comparativamente rígidos. Os Controles Mandatários definem quatro classes de segurança (A. II. (E) I e III. desse modo. o acesso a determinado objeto de dados somente pode ser feito por usuários com a liberação apropriada (estes esquemas tendem a ser hierárquicos e relativamente rígidos). o usuário UI pode ser capaz de ver A. Por exemplo. No controle discricionário o usuário terá em geral direito de acesso (ou privilégios) diferentes sobre os objetos diferentes. No Controle Mandatário. (C) III. ou seja. Está correto o que consta APENAS em (A) I. E além disso com poucas limitações. C e D) onde. enquanto o usuário U2 pode ser capaz de ver B. pela ordem.verbos são:SGBDS admitem uma ou duas abordagen Os SELECT. INSERT. e então nenhum usuário U2 poderá ver B sem poder ver A. (D) I e II. privilégios (direitos de acesso) diferentes sobre objetos diferentes (estes esquemas são flexíveis). em geral. Por exemplo. UPDATE E DELETE. D éa mais segura e A a menos segura. COMENTÁRIO Os SGBDS admitem uma ou duas abordagens para segurança de dados. III. um usuário pode ter. considere: I. O acesso a um determinado objeto de dados só pode ser feito por usuários com a liberação apropriada. B. limitações inerentes sobre os quais usuários podem ter direitos sobre quais objetos.A respeito de segurança em bancos de dados. se o usuário UI pode ver A mas não B. (B) II.

_____________________________________ 6. Pode-se criar. (D) a relação “um para um” indica que as tabelas têm relação unívoca entre si. No projeto de um banco de dados para uma biblioteca. (B) compostos. não pode haver dados repetidos. No “MER” − Modelo de Entidade Relacionamento. A maioria dos atributos serão simples. . etc.indica que as tabelas têm relação unívoca entre si. Uma pessoa poderá ter mais de um número de telefone. Exemplo: Endereço. Exemplo: CNPJ. (D) determinantes. Complemento. COMENTÁRIO Atributos São propriedades (características) que identificam as entidades. Relação 1.5.o seu conteúdo é formado por mais de um valor. Os atributos determinantes serão as chaves primárias no banco de dados e seu uso tem implicações na normalização de dados. Código do fornecedor. O atributo multivalorado serão tratados com mais detalhes na normalização de dados. Atributo Composto . busca-se aplicar o DED – Diagrama de Estrutura de Dados (uma transformação do DER). entretanto. Atributo Determinante . Quando um atributo não é composto. . composto.. Número da matrícula. (C) o DER é aplicado na modelagem física dos dados para expressar exatamente como eles serão implementados em um sistema de banco de dados.Para a modelagem física. é necessário criar uma nova tabela com as chaves primárias das tabelas envolvidas. Uma entidade é representada por um conjunto de atributos. Bairro. por exemplo e não é um atributo chave. ficando assim uma chave composta. na fase de projeto físico. multivalorado ou determinante. Atributo Multivalorado .1 (lê-se relação um para um) . CPF.. É indicado sublinhando-se o nome do atributo. Cep e Cidade. Atributo Simples .a chave primária da tabela que tem o lado 1 vai para a tabela do lado N. como: Rua. é necessário criar uma nova tabela com as chaves primárias das tabelas envolvidas para que a relação se estenda a “muitos para muitos”. um mapeamento de como se planeja armazenar os dados que os processos irão utilizar. (A) O DER – Diagrama de Entidade Relacionamento pode ser aplicado no modelo da análise estruturada. . A relação então se reduz para uma relação 1.identifica de forma única uma entidade. Este tipo de atributo é chamado de atributo composto.n.n (lê-se um para muitos) .. evolutivamente. ou seja. então ele será atributo simples. COMENTÁRIO O DER pode ser aplicado no modelo da análise estruturada na fase de projeto lógico. expressando exatamente como eles serão implementados em um banco de dados.não possui qualquer característica especial. Os atributos podem ser simples. Seu conteúdo poderá ser dividido em vários outros atributos. (B) processos e dados podem ser modelados em separado. haverá a criação da modelagem física dos dados. Os tipos de relações que são utilizadas neste diagrama: Relação 1. Veremos mais de sua aplicação no post sobre normalização de dados. No lado N ela é chamada de chave estrangeira. (C) vazios. . formada por diversos campos-chave de outras tabelas. É indicado colocando-se um asterisco precedendo o nome do atributo. Exemplo: Telefone.o seu conteúdo é formado por vários itens menores. Você escolhe qual tabela vai receber a chave estrangeira. o que caracteriza a independência dos dispositivos ou meios de armazenamentos físicos em relação ao software. recebe um valor único como nome. autor e assunto são exemplos de itens que devem ser definidos como atributos: (A) elementares.n (lê-se muitos para muitos) quando tabelas têm entre si relação n..Processos e Dados podem ser modelados em separado.n. (E) quando tabelas têm entre si relação “um para muitos”. Relação n.Quando um DER estiver concluído. sendo que o lado n ficará com a nova tabela criada. ou seja. não havendo a ocorrênciade chave estrangeira. (E) multivalorados.. Número.

) Pode ter colunas físicas (replicação) ______________________________________ 9. COMENTÁRIO Normalização de dados é o processo formal passo a passo que examina os atributos de uma entidade. Facilidade de manutenção do sistema de Informação. (C) terceira forma normal. Suas características são :       Deriva do modelo conceitual e via a representação do negócio Possui entidades associativas em lugar de relacionamentos n:m Define as chaves primárias das entidades Normalização até a 3a.Modelo Lógico . para verificar se estas estão corretamente projetadas. 1 . caso exista um ou mais atributos que dependam de um atributo não-chave. Um modelo lógico de dados é (A) uma representação sucinta da base de dados a ser implementada. forma normal Adequação ao padrão de nomenclatura Entidades e atributos documentados regras sobre as tabelas de um banco de dados. Estas são representadas no modelo físico.Modelo conceitual .Leva em conta limites impostos por algum tipo de tecnologia de banco de dados.Representa as regras de negócio sem limitações tecnológicas ou de implementação por isto é a etapa mais adequada para o envolvimento do usuário que não precisa ter conhecimentos técnicos. estes atributos deverão ser extraídos para outra tabela. Gerenciador de Banco de dados) e pelos requisitos não funcionais dos programas que acessam os dados. As formas normais O Processo de normalização aplica uma série de 2.etc. com o objetivo de evitar anomalias observadas na inclusão. Vejamos as três primeiras formas normais do processo de normalização de dados. lider .____________________________________ 8. mas podem influenciar a performance da aplicações (por exemplo. (D) quarta forma normal. (B) uma representação lógica das informações da área de negócios. Trata-se da condição para que a tabela esteja na (A) primeira forma normal. Detalhes de armazenamento interno de informações. Embora existam cinco formas normais (ou regras de normalização). (C) um modelo que guarda acentuada relação de dependência com o modelo físico. (B) segunda forma normal. COMENTÁRIO O modelo lógico descreve a estrutura do banco de dados. na prática usamos um conjunto de três Formas Normais.Leva em consideração limites impostos pelo SGBD (Sistema . exclusão e alteração de registros. 3. Objetivos   Minimização de redundâncias e inconsistências. Na normalização de dados. banco de dados relacional .). as estruturas de arquivos usadas no acesso as informações) não fazem parte do modelo lógico. (E) um modelo que admite a replicação de atributos. (D) dependente da tecnologia implementada em função das constantes mudanças dos produtos tecnológicos. (E) forma normal Boyce/Codd. Neste modelo temos :     Visão Geral do negócio Facilitação do entendimento entre usuários e desenvolvedores Possui somente as entidades e atributos principais Pode conter relacionamentos n para m. (banco de dados hierárquico . Características:     Elaborado a partir do modelo lógico Pode variar segundo o SGBD Pode ter tabelas físicas (log . Facilidade de manipulações do banco de dados. que não tem influencia sobre a programação de aplicações no SGBD. conforme vista pelo usuário do SGBD. etc.Modelo Físico .

Na terceira forma normal temos de eliminar aqueles campos que podem ser obtidos pela equação de outros campos da mesma tabela.Primeira Forma Normal (1FN): Uma relação estará na Primeira forma normal 1FN. Existem certas limatações na utilização de um Trigger :  Não é possivel criar um Trigger para uma visão 10. No Processo Unificado. que devem estar presentes em um DER. sem a definição de operações. Idéia-chave – dicionário visual de abstrações • Observação importante: modelos de domínio não são modelos de componentes de software – Por este fato alguns elementos não cabem em um modelo de domínio: • Artefatos de software – Janela (interface com o usuário) – Banco de Dados – Responsabilidade ou métodos ______________________________________ 11. (D) Triggers. (B) Queries. então não é necessário que ele exista na tabela de produtos. tal qual. Segunda Forma Normal (2FN): Uma tabela está na Segunda Forma Normal 2FN se ela estiver na 1FN e todos os atributos não chave forem totalmente dependentes da chave primária (dependente de toda a chave e não apenas de parte dela). Na linguagem SQL. que devem estar presentes em um modelo de análise. o Modelo de Domínio é um (A) diagrama de classes em nível de análise. (D) modelo que carrega todo o detalhamento do comportamento e estrutura. captura o vocabulário do sistema ou negócio sob modelagem. (C) Views. . (C) produto da modelagem de negócios e. Composto de: – Objetos do domínio ou classes conceituais – Associações entre classes conceituais – Atributos de classes conceituais. Artefato mais importante na análise orientada a objetos • O PU define o “modelo de domínio” como um artefato da disciplina de Modelagem de Negócios • É ilustrado com um conjunto de diagramas de classes. (E) modelo de domínio que carrega informações de armazenamento de informações ou normalizações. como tal. Em outras palavras podemos definir que a primeira forma normal não admite repetições ou campos que tenha mais que um valor. especificar e relacionar os conceitos envolvidos no domínio do problema • É a base para o projeto dos objetos de software – Primeiro passo realmente orientado a objetos • Este modelo ilustra as classes conceituais Significativas. se e somente se todos os domínios básicos contiverem somente valores atômicos (não contiver grupos repetitivos). (B) diagrama de classes em nível de desenho. COMENTÁRIO Modelo de Domínio • O modelo de domínio visa identificar. são procedimentos executados implicitamente quando ocorre determinada ação do usuário. (E) Selects. uma modificação de uma tabela (A) Inserts. DELETE ou UPDATE for executado em uma tabela do banco de dados. A segunda forma normal trata destas anomalias e evita que valores fiquem em redundância no banco de dados Terceira Forma Normal (3FN) : Uma tabela está na Terceira Forma Normal 3FN se ela estiver na 2FN e se nenhuma coluna não-chave depender de outra coluna não-chave. COMENTÁRIO Um Trigger é bloco de comandos Transact-SQL que é automaticamente executado quando um comando INSERT . Se o nome do produto já existe na tabela produtos.

Nesse sentido. DROP TABLE . Exemplos:  Utilizando uma subquery em conjunto com a cláusula IN(). (B) não precisa estar incluído entre parênteses. CREATE DATABASE . CREATE PROCEDURE. REVOKE. UPDATE. ______________________________________ 14. A finalidade da subquery é retornar um conjunto de linhas para a query principal Utilização ______________________________________ 13. é INCORRETO afirmar que (A) se pode conceder permissões sobre o comando CREATE TABLE. ALTER TRIGGER . Trata-se de um termo que NÃO pode ser considerado como um objeto do SQL Server: (A) Constraints. O comando WRITETEXT não ativa um Trigger O comando TRUNCATE TABLE não pode ser reconhecido por um Trigger Não podemos usar em um Trigger os seguintes comandos SQL :  ALTER DATABASE .    O resultado da execução de um Trigger é retornado para a aplicação que o chamou. (C) se o usuário tem permissão para fazer CREATE TABLE ele também possuirá permissão para fazer SELECT. (C) Index. Tipicamente utilizamos subqueries na filtragem de pesquisas (=cláusula WHERE) nas cláusulas IN() e EXISTS(). GRANT . DROP DATABASE. é correto afirmar que o operador “=” (A) não pode ser utilizado em uma consulta que contenha uma subquery que retorne múltiplas linhas. TRUNCATE TABLE. UPDATE e DELETE nas tabelas que ele criar. LOAD DATABASE. select * from [order details] where orderid IN (select orderid from orders where CustomerID='VINET') Regras de Uso – O uso adequado das Subqueries requer a nossa observação e cumprimento das seguintes regras:   Parênteses – As Subqueries devem ser usadas entre parênteses. DROP TRIGGER.  Sinal de = – Um único valor será retornado ao usarmos o sinal = no início da Subquery. DROP INDEX. Uma coluna como resultado – Ao usarmos Subqueries. INSERT. CREATE INDEX . (B) Views. A função da subquery é retornar um conjunto de linhas para a query ou comando principal. CREATE SCHEMA. CREATE TABLE . (B) não é possível trocar um proprietário de um objeto. . ALTER VIEW . Em relação às permissões no SQL Server. (D) só pode ser utilizado em conjunto com a cláusula GROUP BY. DELETE ou dentro de outra subquery. (E) só pode ser utilizado em conjunto com a cláusula WHERE. (C) deve ser inserido sempre do lado esquerdo da subquery. (E) User-defined Functions. RESTORE DATABASE. ALTER TABLE . mas subqueries também podem aparecer também na cláusula FROM ou como substituto de expressões. ______________________________________ 12. ALTER PROCEDURE . COMENTÁRIO O que é uma subquery ? Subquery é um comando SELECT que foi "embutido" noutro comando SELECT. podemos obter apenas uma coluna por Subquery. (D) Login. DROP PROCEDURE.

. (E) Problemas COMENTÁRIO O processo de Gerenciamento de Mudança interage com o Gerenciamento de Configuração. exceto na primeira posição.Todas que tenham a letra A em qualquer posição. Repeatable Read. Utilizando a combinação desses caracteres especiais com o que se quer localizar. podemos comparar cadeias de caracteres utilizando padrões de comparação (wildcard) para um ou mais caracteres. Read Uncommitted. LIKE '%A_' . Read Uncommitted.String de três caracteres cuja segunda letra seja A. independentemente do primeiro ou do último caractere. (E) contendo “a” em qualquer posição do nome. (C) Incidentes. O componente do SQL Server que garante independência às transações chama-se Lock Manager e seu trabalho consiste basicamente em evitar conflitos ou impedir que duas transações com intenções conflitantes entre si não recebam exclusividade de acesso sobre o mesmo recurso ao mesmo tempo. . ______________________________________ 16. Read Committed. (E) eliminar um usuário proprietário de um objeto só é possível se antes se eliminarem os objetos de sua propriedade. Serializable D) Serializable. COMENTÁRIO A propriedade de maior relevância neste caso é a de isolamento.Todas as palavras que iniciem com a letra A. COMENTÁRIO Com este operador. Read Committed. Repeatable Read. (D) Mudanças. SELECT name FROM employee WHERE name LIKE ‘_a%’. LIKE '_A_' . ______________________________________ 15. (D) contendo “a”. pode-se conseguir uma variedade muito grande de expressões. Normalmente. LIKE 'A%' . um ou mais caracteres e sublinha (_) substitui um caracter. Read Committed. O processo que concede tal permissão é o Gerenciamento de (A) Nível de Serviço. o caracter percentual (%) substitui zero. (B) Configuração.(D) Declarative Referential Integrity está relacionada com a permissão para criação de uma chave estrangeira. O trabalho desempenhado pelo Lock Manager está intimamente ligado ao nível de isolamento vigente para a sessão onde as transações acontecem. O Lock Manager nunca permitirá que uma determinada linha de tabela seja lida por uma transação e gravada por outra ao mesmo tempo. .Todas que terminem com a letra A. (C) contendo “a” como segunda letra. Considere a consulta abaixo.String de dois caracteres cujo primeiro caractere seja qualquer um e a última letra seja A. para que atualize os itens de configuração que sofreram alteração" 17. LIKE '%A%' . LIKE '%A' .String de dois caracteres que tenham a primeira letra A e o segundo caractere seja qualquer outro. Repeatable Read. É correto afirmar que os nomes serão mostrados (A) começando com “a”. Os níveis de isolamento de uma transação SQL podem ser Serializable. o responsável pelo BDGC deverá ser avisado. . . Repeatable Read. Caso queira realizar uma busca onde o caracter pesquisado seja por exemplo o (_) usa-se o caracter de escape \. Por exemplo: select * from dvd where nome_dvd like '%\_%' escape '\'. . Quando a mudança for implementada. LIKE '_A' . Read Committed.Todos que tanham a letra A na segunda posição e o primeiro caractere seja qualquer um. . Os dados da Base de Dados do Gerenciamento da Configuração (BDGC) somente podem ser modificados quando for concedida a permissão para modificar a infraestrutura. Serializable C) Read Uncommitted. Read Uncommitted. Veja na tabela a seguir algumas possíveis combinações: . Assinale a alternativa que corresponde à ordem crescente de isolamento de transação (do menor isolamento para o maior). LIKE 'A_' . (B) começando com “a” ou “A”. . LIKE '_A%' . Repeatable Read B) Read Uncommitted. Read Committed. A) Serializable.Todos que tenham a letra A na panúltima posição e a última seja qualquer outro caractere.

O SQL Server 2000 trabalha com quatro níveis de isolamento: Read Uncommitted: permite leituras sujas (Dirty Reads). Trata-se do modo mais brando de controle de concorrência. Repeatable Read: além de evitar leituras sujas. Com relação a índices em bancos de dados. • Existem técnicas estáticas e dinâmicas de hashing. Esta função mapeia um valor da chave de pesquisa (atributo duma tabela) num registo ou balde (bucket) de registos. compromissos similares aos de ISAM vs. C) Apenas a II e a III são verdadeiras. . Um índice baseado em árvore B+ é mais vantajoso que um índice baseado em árvore B porque o primeiro tem menor número de ponteiros. D) Todas são verdadeiras. Sobre os modelos relacional e de entidade e relacionamento. são feitas as seguintes afirmações: I. onde Employee tem os papéis de Supervisor e Supervisee 19. Neste caso. • Não suportam pesquisas por gama. locks de leitura transformam-se em locks de atualização. As entidades só desempenham um papel nos relacionamentos recursivos. cresce o risco de inconsistência. Nó não folha agem como se fossem uma estrutura de índice para nós que contém os dados. Um índice baseado em árvore B é útil em pesquisas em que o operador usado na condição pode ser diferente da igualdade. impede leituras sujas. assinale o correto. atribuído a cada tipo de entidade  Nomes só são necessários em tipos de relacionamento que envolvam mais de uma vez o mesmo tipo de entidade  relacionamentos recursivos  Exemplo: Supervision. permitindo consultas em dados que ainda não foram confirmados por um commit ou canceladas por um rollback. evitando inserções no conjunto das linhas lidas. Consequentemente a altura da árvore B+ é menor do que a da árvore B. A) Apenas a I é verdadeira. C) Apenas a III é verdadeira. D) Todas são falsas. A cada valor de uma chave estrangeira numa tabela corresponde igual valor de chave primária em outra tabela. Sobre as três afirmações anteriores. II. III. rid do registo de dados respectivo> • <k. para os verbetes de dados k*: • registo de dados real (chave com valor k) • <k. COMENTÁRIO A ideia base é usar uma função de hashing. ______________________________________ 18. lista de rids dos registos de dados respectivo > • Índices baseados em hashing são melhores para pesquisas por igualdade. II. Árvore B+ Variante da árvore B. Read Committed: modo padrão. árvores B. COMENTÁRIO  Papéis e relacionamentos recursivos  Entidades atuam com um determinado papel  Significado do papel é dado por um nome. uma vez lida uma linha. A) Apenas a I é verdadeira. Na prática. Os registros são armazenados em nós folha. Os nós não folha armazenam as chaves dos registros e não os registros inteiros. As linhas recusadas recebem a denominação genérica de fantasmas e somente poderão ser inseridas uma vez concluída a transação restrita. ela não poderá ser alterada por outra transação. Uma entidade fraca tem participação total num relacionamento identificador. B) Apenas a II é verdadeira. assinale o correto. Sobre as três afirmações anteriores. garante a repetição de uma leitura. B) Apenas a I e a II são verdadeiras. consequentemente os valores de uma chave estrangeira não podem ser duplicados. são feitas as seguintes afirmações: I. III. Serializable: aumenta ainda mais o isolamento da transação. Em nó interno de uma árvore B+ cabe mais registro do que o de uma árvore B. mas este não pode ser unário com cardinalidade 1:n. Pode-se efetuar leituras em transações que estejam em andamento. Um índice baseado em hashing é útil em pesquisa em que o operador usado na condição é a igualdade.

Não é necessário subir e descer na árvore para acessar sequencialmente os registros. Vantagens: Na maioria das vezes a árvore B+ tem altura menor do que a árvore B para os mesmos registros. já que todos ficam no mesmo nível. Assim. nome. Diferentemente dos modelos hierárquico e de rede. bases de dados relacionais podem ser utilizadas por várias aplicações em formas que os projetistas originais não previram. com a evolução dos bancos existente. de acordo com o Princípio de Informação: toda informação tem de ser representada como dados. matriculaDoLiderProj) Departamento(codDepart. simultaneamente. As restrições de integridade podem ser de quatro tipos: domínio (também conhecidas como type). as tabelas são ligadas por referências. bidimensionais. definindo o conjunto consistente de estados de base de dados e de alterações de estados. A) Oracle B) Rede C) Hierárquico em grafos D) Relacional hierarquizado COMENTÁRIO Modelos de base de dados O modelo plano (ou tabular) consiste de matrizes simples. Bases de dados relacionais consistem. 20. Embora esta teoria seja a base para o software de bases de dados relacionais. um departamento tem um chefe(n. codProjAtual. a álgebra e o cálculo relacionais. o que é especialmente importante em bases de dados que podem ser utilizadas durante décadas. os registros dos nós folha estão automaticamente ordenados na lista encadeada.Diferentemente da árvore B.1) e é subordinado a um só chefe. matriculaChefe) Projeto(codProj. Tanto o acesso direto como o acesso sequencial são melhores que na árvore B. Melhoria no acesso sequencial é obtida interligando os nós de dados. atributo. o que significa que menos operações de E/S são necessárias durante a busca. dataIni. limita as relações a uma estrutura semelhante a uma árvore (hierarquia . formando um índice para os nós de dados. uma coleção dos operadores. A discussão se esses bancos de dados merecem ser chamados de relacional ficou esgotada com tempo. Como resultado não é necessário mover através da árvore mas apenas processar uma lista encadeada formada pelos nós não folha. desta forma variando a complexidade e o poder. muito poucos sistemas de gestão de bases de dados seguem o modelo de forma restrita e todos têm funcionalidades que violam a teoria. a seguir. Definição: Uma árvore B+ é uma árvore B na qual os registros dados são armazenados em nós folha e os nós não folha armazenam apenas os valores das chaves. o modelo hierárquico. codDepartAtual. compostas por elementos de dados: inteiros. Algumas colunas contêm apontadores para outras tabelas ao invés de dados. O modelo relacional é uma teoria matemática desenvolvida por Ted Codd para descrever como as bases de dados devem funcionar. etc. nomeProj. O modelo em rede permite que várias tabelas sejam usadas simultaneamente através do uso de apontadores (ou referências). Este modelo plano é a base das planilhas eletrônicas. o que pode ser visto como uma rede.tronco. O esquema relacional. Como resultado. não existem quaisquer apontadores. ao invés do modelo mais geral direcionado por grafos. não podendo trabalhar em mais de um projeto nem em mais de um departamento. relvar e restrições de base de dados.º Leonardo Guerreiro Azevedo 1 ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ 24.n) e um projeto tem um líder(n. Assinale a alternativa que corresponde a um modelo de banco de dados. codProj. Isto tem tornado as bases de dados relacionais muito populares no meio empresarial. nomeDepart. Uma variação particular deste modelo em rede. As bases de dados relacionais permitem aos utilizadores (incluindo programadores) escreverem consultas (queries) que não foram antecipadas por quem projetou a base de dados.1) e um funcionário chefia um departamento(1. matriculaChefeDepart) FuncionarioProjeto (matricula. a árvore B+ tem a estrutura de índices separada da estrutura de dados. galhos).1). dataFim) . qualquer tipo de atributo representa relações entre conjuntos de dados. nomeadamente relações. é tal que um funcionário lidera um projeto(1. ESQUEMA RELACIONAL Funcionario(matricula. Organização de Dados II (UFRJ) – Prof. principalmente de três componentes: uma coleção de estruturas de dados. e uma coleção de restrições da integridade. Para acessar qualquer registro é necessário o mesmo número de acessos. ou informalmente tabelas. Pela própria definição da árvore B. números reais.

III. III. A) Apenas I. II. 24. C) Apenas a II e a III são verdadeiras. Assinale a alternativa que contém a(s) afirmação(ões) CORRETA(S). 200. Um mesmo atributo não pode fazer parte de mais de um índice. a seguir: Assinale a alternativa que contém os valores exibidos. 1 relacionamento 1:n e 2 relacionamentos 1:1. 3 relacionamentos 1:n e 2 relacionamentos 1:1. após a execução da consulta. são feitas as seguintes afirmações: I. julgue as seguintes afirmações. Sobre a linguagem SQL. apenas. C) Apenas a II e a III estão corretas.FuncionarioDepartamento (matricula. ______________________________________ 21 Acerca da criação de índices em uma grande tabela de um banco de dados relacional anteriormente povoada. I. pois estas precisam esperar pelas leituras. II e III. B) Apenas II. D) 2 relacionamentos m:n. A) 500. 25. Sobre modelo relacional. Tendo que criar um dos índices como clusterizado. C) Apenas III. COMENTÁRIO Técnicas de Controle de Concorrência de Multiversão _ Armazenam valores antigos dos itens atualizados. E) I. B) 2 relacionamentos m:n. assinale o correto. Não compensa criar um índice com base em um atributo que tem apenas dois valores possíveis. por questão de desempenho. Considere a tabela Funcionário e a consulta. já o projeto geral do mesmo é chamado instância. D) Apenas I e II. I. se possível a serialização. D) Apenas II e III. Este protocolo favorece as consultas. O operador de seleção da álgebra relacional constrói uma nova relação a partir de uma relação inicial. _ Uma desvantagem é o espaço necessário para armazenar as múltiplas versões. II. Acerca do protocolo de controle de concorrência multiversão adotado por alguns gerenciadores de bancos de dados. I. Sobre as três afirmações anteriores. Sobre sistemas de banco de dados. ______________________________________ 22. B) Apenas a I e a III são verdadeiras. D) Todas estão corretas. A) Apenas a I e a II estão corretas. julgue as seguintes afirmações. 2 relacionamentos 1:n e 2 relacionamento 1:1. Os modelos de dados em rede e relacional são precursores dos bancos de dados hierárquicos cuja utilização é voltada para mainframes. possam ser aceitas acessando uma versão mais antiga do item. contendo. .700 ______________________________________ 23. assinale o correto. II. III. E) Apenas I e III. em seguida. 3 relacionamentos 1:n e 1 relacionamento 1:1. 600 C) 100. indicando as decomposições futuras. 26. dataIni. _ A idéia é que algumas operações de leitura que foram rejeitadas por outras técnicas. Uma transação acessa uma versão apropriada do item com o objetivo de manter. A coleção de informações armazenadas em um banco de dados em um dado momento é chamada esquema do banco de dados. 300. em que cada linha corresponde a um registro. B) Apenas a I e a III estão corretas. A) Apenas I. A) Apenas a I e a II são verdadeiras. 600 D) 100. evitando que leituras aguardem gravação. C) 2 relacionamentos m:n. Cada tabela no modelo relacional é composta por uma coleção não-ordenada de linhas. julgue as seguintes afirmações. estas relações são analisadas individualmente. III. com uma lista de valores dos atributos do registro. Dicionário de dados e componente runtime são exemplos de módulos componentes de um sistema de banco de dados. 600 B) 300. II. garantindo a serialização. SQL embutido (embedded) pode ser utilizado dentro de programas em várias linguagens de programação. Compilador DDL. D) Todas são verdadeiras. este deve ser o primeiro a ser criado. 500. C) Apenas I e III. codDepart. Este protocolo permite isolamento de transações. Assinale a alternativa que contém a(s) afirmação(ões) CORRETA(S). B) Apenas I e II. Este protocolo prejudica as gravações. Sobre as três afirmações anteriores. os atributos indicados pela operação. são feitas as seguintes afirmações: I. dataFim) Assinale a alternativa que corresponde à quantidade de relacionamentos (losangos) existentes no modelo conceitual correspondente. Projeto top-down de banco de dados iniciase com agrupamentos de atributos em relações agrupadas naturalmente. Entretanto isto é já feito para a recuperação e em BDs temporais. A) 2 relacionamentos m:n. 400. 500.

C) Apenas III. O principal artefato resultante da atividade de modelagem conceitual de um banco de dados é o Modelo Entidade-Relacionamento. (B) B se relaciona com nenhuma ou muitas ocorrências . REVOKE e CREATE DOMAIN. Sobre a linguagem SQL. julgue as seguintes afirmações. I. I. D) Apenas II e III. enquanto DROP TABLE permite eliminar uma tabela. D) Apenas I e II. III. 27. II. O comando ALTER TABLE permite a modificação dos valores dos atributos de uma tabela. VARCHAR(n) e FLOAT. O conceito de especialização em um Modelo Entidade-Relacionamento é correspondente ao conceito de herança em orientação a objetos. II. Controle de concorrência em tabelas de bancos de dados deve ser realizado. Assinale a alternativa que contém a(s) afirmação(ões) CORRETA(S). Assinale a alternativa que contém a(s) afirmação(ões) CORRETA(S). (E) Sub-conjunto. B) Apenas II. C) Apenas I e III. D) Apenas II e III. um retângulo duplo (ou seja. conjuntos de entidades fracas são representados no Modelo EntidadeRelacionamento por retângulos com bordas. O catálogo de um sistema de banco de dados armazena tabelas especiais chamadas metadados. B) Apenas I e II. B) Apenas II. não podendo ser utilizado em consultas aninhadas. quando estamos construindo um novo modelo ER ou modificando um modelo ER existente. pela aplicação que acessa o sistema de banco de dados. Sobre sistemas de bancos de dados. (B) Entidade Associativa. Analise o diagrama (DER): As cardinalidades apresentadas significam que (A) B se relaciona com uma e apenas uma ocorrência de A. Um conjunto de entidades fracas define entidades que estão totalmente vinculadas à existência de outro conjunto de entidades. o símbolo representado por um retângulo inscrito em outro) é a representação gráfica de (A) Relacionamento. (D) Auto-relacionamento. O operador LIKE é usado na cláusula WHERE para casamento de padrões de cadeias de caracteres. boa parte dos sistemas de banco de dados oferecem tipos específicos do fabricante. III.B 15-A 16-D 17. 29. (D) relacionamento com grau (cardinalidade) n para n. Isso ocorre com frequência quando se detecta (A) a necessidade de utilizar a 1FN. (C) Entidade Fraca. II. No MER de Peter Chen. surgem situações em que é desejável permitir a associação de uma entidade a um relacionamento.fazendo com que estes programas possam acessar e modificar diretamente dados em um banco de dados.E 29-B 1 Na modelagem ER não foi prevista a possibilidade de associar uma entidade com um relacionamento ou então de associar dois relacionamentos entre si. O operador ALL define um julgamento sobre a quantificação de elementos de uma consulta. Consultas SELECT podem utilizar funções que produzem valores agregados a partir dos registros resultantes. como as funções SUM e AVG.C 21-B 22-C 23-D 24-C 25-C 26-B 27-C 28. II e III. E) I. Tipos de dados da linguagem padrão SQL incluem CHAR(n). 2. E) I. E) I. Na prática. II e III. Assinale a alternativa que contém a(s) afirmação(ões) CORRETA(S).D 18-A 19-B 20. III. A) Apenas I. Sobre modelagem e projeto de banco de dados. I. E) Apenas I e III. São exemplos de comandos SQL relacionados à segurança de dados: GRANT ON. III. C) Apenas I e III. II. exclusivamente. B) Apenas II. (B) generalização e especialização. D) Apenas I e II. julgue as seguintes afirmações. A) Apenas I. 28. em consultas. julgue as seguintes afirmações. 3. (C) relacionamento com grau (cardinalidade) 1 para 1. C) Apenas III. II e III. Assinale a alternativa que contém a(s) afirmação(ões) CORRETA(S). A) Apenas I. GABARITO 1-C 2-E 3-B 4-E 5 – E 6-B 7-E 8-B 9-C 10-C 11-D 12-A 13-D 14. Mesmo assim. (E) relacionamento com grau (cardinalidade) 1 para n. A) Apenas I.

(E) N:N:N. (D) ela substitui a cláusula Count quando do somatório horizontal. A passagem do modelo de dados conceitual para o modelo lógico relacional normalizado derivará em (A) duas tabelas representando: GerenteGerencia e AnalistaProjeto. Operador usado em uma cláusula WHERE para pesquisar um padrão específico em uma coluna. (D) top-down e top-up. (C) generalização. A cláusula Having existe na SQL porque (A) sem ela não é possível totalizar uma coluna. Gerencia. UNIQUE e LIKE. UNION e LIKE ______________________________________ _________ 6. ou seja. (C) componentes do Diagrama EntidadeRelacionamento. (B) associação não composta. I. Analista e Projeto é representada no MER como (A) 1:1:1. a . GerenteGerencia e Analista-Projeto. (C) B se relaciona com nenhuma ou apenas uma ocorrência de A. Ramificação sequencial. (2) indutivas − da falha proposta em direção aos possíveis perigos que levariam-na a ocorrer. ______________________________________ _____ 10. No âmbito dos bancos de dados. (E) Avg não pode ser usada como função de agregação ______________________________________ ___________ 11. (B) INNER JOIN.de A. (C) top-up e top-down. (D) A se relaciona com uma ou muitas ocorrências de B. (D) dependência estereotipado como inclusão. (E) INNER JOIN. Quando da movimentação de materiais surge uma exceção que é a emissão de ordem de compra quando o estoque ficar abaixo do mínimo recomendado. (D) SELECT. (E) top-down e bottom-up. (C) LEFT JOIN. Operador usado para combinar o resultado do conjunto de duas ou mais instruções SELECT. (D) três tabelas representando: Gerente-Projeto. (B) bottom-up e top-down. JOIN e BETWEEN. II e III correspondem em SQL. UNIQUE e BETWEEN. (B) duas tabelas representando: GerenteAnalista e AnalistaProjeto. ______________________________________ _________ 5. representação dessa situação no Diagrama de Caso de Uso é um relacionamento de (A) associação composta. (E) dependência estereotipado como extensão. Retorna linhas quando houver pelo menos uma correspondência entre duas tabelas. bifurcação concorrente e união concorrente são (A) meios de associação entre classes na UML ou entidades no MER. as técnicas de decomposição de riscos podem ser (1) dedutivas . Analista e Projeto. a (A) SELECT. (B) Where não pode ser usada com funções de agregação. quando cada transação 7. (E)A se relaciona com uma e apenas uma ocorrência de B. 8. (D) 1:N:N. (D) componentes do Diagrama de Sequência da UML. (C) Sum não pode ser usada como função de agregação. técnicas (A) bottom-down e bottom-up. ao contrário. respectivamente. III. (B) componentes do Diagrama de Atividades da UML. (C) 1:N:1. (E) quatro tabelas representando: Gerente. respectivamente. (B) N:1:N.do risco em direção à falha possível ou. Assim. (E) possibilidades de associação entre atores e casos de uso da UML. JOIN e DISTINCT. II. Associadas à especificação de sistemas críticos. ______________________________________ ____________ 9. Considere: I. A respectiva cardinalidade nos lados das entidades Gerente. ______________________________________ _________ 4. (C) três tabelas representando: GerenteAnalista. AnalistaProjeto e Gerente-Analista.

este modelo de dados completo será derivado para (A) três tabelas. (C) cinco tabelas. (E) sete tabelas. se relaciona com Medicamento em n:m. (C) Sum não pode ser usada como função de agregação. (D) seis tabelas. (E) Avg não pode ser usada como função de agregação. 13. (B) Where não pode ser usada com funções de agregação.D 7-E 8. GABARITO 1-D 2. o que ocorre é (A) commit.em um conjunto de duas ou mais transações espera por algum item que esteja bloqueado por alguma outra transação no conjunto. No projeto lógico de banco de dados relacional normalizado. por sua vez. (D) rollback. (B) quatro tabelas. (B) timestamp.E 9-E 10-B 11-C 12-C 13-B . ______________________________________ ____________ 12. (D) ela substitui a cláusula Count quando do somatório horizontal.C 3-A 4-B 5-E. 6. (E) starvation. A cláusula Having existe na SQL porque (A) sem ela não é possível totalizar uma coluna. (C) deadlock. Considere uma entidade associativa entre Médico e Paciente (n:m) intitulada Consulta que.

 &   5488-/.7..7:25.4254303908/4.70..907..3/4070390  0703.89.0 4: .8705708039./48/.4   0...../09.7...42303:2.884./47:8..   0.503.89.89.403970..89.7.4254303908/4.0././.424                   ":./..42:2. 5./4/4 .9.477H3.4241:34/0 .9.4 .8 4.47708543/0202$"  70850.. 705708039.   6:..43.47707 4:80.# 5.089070495.88../47:8..  !74094   97H89.20394   .884.74708:9.48/0/..3/44:.3..89.3454/0807:8.947080 ./0   8070./.03.3/4070390 3./.E:8:./08/0..2.43.1.3/4/4 842.20390 9F.434..83897:08$%    507..7J9.  !74094   /:..434.20390 ./0 #0.$"5476:0  8020.:84   /0503/H3.48 ..7/3..J1. /0  ************************************** *********  #.4397E74   3/:9.403970.8705708039.84:2. 70850. !74094   97H89.   .4:3.-0.42-3.7:2.8705708039.3/44 08946:01.E:8:.02/424/04/0/..7.3.089070495.8705708039.4241:34/0 .43:394/0/:..43.21.8705708039./402:2.  $% &"&0%   #   0$%%   %  &"&0   $%  0%   #  & 0 ************************************** *********  70850.477H3.421:308/0 .89.0!74094F705708039..88083.402/7041.-.-0. -1:7.& 4: 039/.. 4.884.08507486:00.89..4   $:23454/0807:8.4:396:.-0../0 .8  -49942 /430-49942 :5   -49942 :50945 /43   945 :50945 /43   945 /430945 :5   945 /430-49942 :5  ************************************** *****  ..89.70./.43.89.3/4070390 !74094  3.&  ************************************** *********  438/070  #09473.39/./0348.4/42J32470./4  882 .-0.84/0 &84F:270./740850..425484/078.7.   0307.3.09:.0!74094  ************************************** ************  884..2.34F5488J.7E02  /:....5086:8..4   /0503/H3.-0.  !740940070390 3.424090384    5..425489.308903.03970/:.2.47703900:34 ./4/07.0. ..20394/0  .89.8:-899:..86:..7..38.4:.477H3.2039.4.43.3../0$06:H3.8/0/0.3/4070390 0703.4243./.4203/./48 6:./4./0   8070.43.4.402:2. 5488J.2..8 ..4/02..47708543/H3.4/088902.88:70 :2.7.9749.7.485488J.8 /.8 /478.42:2.70..8:2..6:.4/088.4806:03.8/0   8070.4257./4..02884/047/02/0../.2 3.8 9F.4:3. 070390  0703.43.   .9.89.E:8:./0834#   .43. 4./08/. 5745489.....477039084  2048/0.-0.425489.89.03./48./08070390  3.04 6:0F.3/4 .43.503. &   .24.4254303908/4.424/04 O...3/4/.03./45. 4.1.848 /0:84/.7.0949.4854/02807  /0/:9.4:2:9.8:2..8    507.   0703454/0807:8.4 ************************************** ***********  42-94/48-.  3.34#.89:../.9O74 47439.80850.884.8 039/.0750420348 :2.02 /704.97.3472.3/4070390 3.4 .470..

$"5476:0  8020.4/0/.-0...43.8   6:..9O74 47439.039/.8   8089.4241:34/0 .420/.40 !..70./4  089024/04/0/.4   0.-46:0.884.   89.25   /0.-0..   .43.43:394/0/:./4870.4:396:...9.4   $:23454/0807:8./.203940232 4 574094 O.3./.308903.547.6:0 5478:..43:394 46:04.7:2.9749.38.   0703454/0807:8.-0.:2.897..421:308/0 .E:8:.70.E:8:.434.38..0  8070.34F5488J. 3472.8    .8   80909../.0949.02:2./4547 .4   #%                     .438:9...3/4/4 842.4/0-.7./0.3.-0.70.4:3.7./4.8:-899:...4229   92089.943  ************************************** ************  438/070:2.-0./4 5.:29026:00890. ..49.4770F  .03970 F/.425094807E/07.   74-.8   .  97H89...0390 32 399:.4241:34/0 ./48.84:2./. 4:97.97.08 08507..3454/0807:8.