ID 43597 Banca CESGRANRIO Órgão Petrobras Ano 2008 Provas CESGRANRIO - 2008 - BR Distribuidora - Analista de Sistemas Júnior - Engenharia de Software CESGRANRIO - 2008 - BR Distribuidora - Analista de Sistemas Júnior - Processos de Negócios Disciplina Banco de Dados Assuntos Modelo relacional É correto afirmar que qualquer relação válida de um modelo relacional Alternativas pode apresentar tuplas duplicadas, desde que não haja chaves candidatas definidas. tem seus atributos ordenados da esquerda para a direita, de acordo com a definição. tem suas tuplas naturalmente ordenadas, para fins de localização. tem um índice físico para cada chave candidata, incluindo a chave primária. está, pelo menos, na primeira forma normal. Responder Comentários Pessoal..alguém poderia explicar melhor esta questão, o porque das alternativas A a D estarem erradas? Obrigado! A) pode apresentar tuplas duplicadas, desde que não haja chaves candidatas definidas. O item A é definiçao de características de uma relação diz: Uma relação não possuir tuplas duplicadas. Logo item A está erradoD)tem um índice físico para cada chave candidata, incluindo a chave primária. O uso de índices facilita a localização de registros. Porém o gerenciamento de índices é complicado, logo é recomendado criar índices somente quando necessário.Na maioria das vezes, uma relação só precisa ter um índice para a chave primária, já que esta chave será utilizada na mairia das operações. Resposta E está correta, porque a 1FN garante que uma relação não possui atritutos multivalorados e nem compostos, além disso, garante a existência de uma PK. Condições sufcientes para uma relação ser válida. Características das RelaçõesNão há tuplas duplicadas em uma relação.A ordem das tuplas não é relevante para diferenciar uma relação de outra.Existe ordem dos valores nas tuplas, uma vez que o cabeçalho da relação (ou esquema) é definido como um conjunto de atributos.Os valores dos atributos devem ser atômicos, não sendo divisíveis em componentes. Atributos multivalorados são representados por meio de uma outra relação e atributos compostos pelos seus componentes. a) pode apresentar tuplas duplicadas, desde que não haja chaves candidatas definidas. R: ERRADA: Seguindo a definição: Não há tuplas duplicadas => uma relação é um conjunto e conjuntos não incluem elementos duplicados.b) tem seus atributos ordenados da esquerda para a direita, de acordo com a definição. R: ERRADA , Seguindo a definição de relação -> Os atributos não seguem um ordenamento.c) tem suas tuplas naturalmente ordenadas, para fins de localização. R: ERRADA , Seguindo a definição de relação -> As tuplas não seguem um ordenamento. d) tem um índice físico para cada chave candidata, incluindo a chave primária. R: ERRADA: Um ou mais atributos que permitem identificar unicamente cada linha da tabela. Uma tabela pode ter muitas chaves candidatas. Podendo ter i indices pela suas chaves primárias e UNIQUEUNIQUE – Definida sobre uma ou mais colunas. Não permite que duas linhascontenham o mesmo valor para a(s) coluna(s).PRIMARY KEY – Definida sobre uma ou mais colunas. Possui as mesmaspropriedades de unicidade, implicitamente implementa a regra NOT NULL e sópode ser definida uma única vez para cada tabela.e) está, pelo menos, na primeira forma normal. R: CERTA: Todos os valores dos atributos são atômicos (simples) => uma relação não contém grupos repetidores nem estruturas como colunas.] a) NÃO pode apresentar tuplas duplicadas, desde que não haja chaves candidatas definidas.b) Não tem seus atributos ordenados da esquerda para a direita, de acordo com a definição.c) Não tem suas tuplas naturalmente ordenadas, para fins de localização.d) Não tem um índice físico para cada chave candidata, incluindo a chave primária. A confusão dos items a) e d) é quando aceitamos o conceito acadêmico de relação como sinônimo de tabela, que normalmente é utilizada para a implementação de uma relação. Numa relação, as tuplas devem ser únicas para garantir integridade existencial. Portanto, as tuplas devem ter um elemento identificador. As tabelas são simplesmente linhas e colunas. As linhas podem se repetir numa tabela, mas neste caso ela não estará reprensentando uma relação. Relações são implementadas em tabelas, mas nem toda tabela representa uma relação. A criação de índices está relacionado à implementação, não ao conceito acadêmico de relação. Mas é correto afirmar que qualquer relação válida está na 1FN? Complementando o colega acima:Segundo a teoria, uma relação para ser válida deve estar pelo menos na 1FN. Particularmente, acho que a alternativa 'E' também esta errada. Um relação válida NÃO garante que ela esta na 1FN. Basta considerarmos uma relação (seleção, por exemplo) entre um cadastro de cliente (cod, nome, endereço) e os pedidos deste cliente (cod_cliente, cod_pedido...) . Esta É uma relação válida, porém NÃO esta na 1FN visto que o campo endereço é um atributo COMPOSTO. Também não concordo. Por exemplo: Já vi colocarem em um único campo varchar [50] "telefones", acho que o engenheiro programador ainda não conhecia normalização, ainda assim traduz uma relação válida, embora desnormalizada com campo multivalorado.Acho que tentaram misturar dois assuntos e ficou muito confuso. Também não concordo com a letra E. Eu chutei letra B.Um modelo relacional não precisa estar na 1 FN, mas um modelo relacional normalizado ai sim precisa estar na 1 FN. A primeira forma normal (1FN) é considerada parte da definição de uma relação no modelo relacional básico. Entretanto, essa condição não é considerada no modelo relacional aninhado e em sistemas objeto-relacionais (SGDBORs), pois ambos permitem relações não normalizadas. Fonte: Sistemas de Banco de Dados - Elmasri e Navathe - 4ª edição - página 224 - 10.3.4 e rodapé.