segunda-feira, 30 de novembro de 2009

COMANDOS E CONCEITOS DE SQL

1- O que significa a sigla SQL? Qual a finalidade dessa linguagem? Como ela se divide? Quais são os comandos principais de cada divisão? Explique-os resumidamente.
R: SQL significa Structured Query Langage, ou Linguagem Estruturada de Consulta, o objetivo dessa linguagem é facilitar a comunicação e permitir que qualquer pessoa possa realizar consulta a um banco de dados mesmo não sendo um programador, ou seja, o foco é padronizar os meios de manipular o banco, ela é dividida em várias linguagens como DDL- usa instruções para descrever o esquema das tabelas do banco de dados, DML- usa instruções para manipular os dados, DCL- utilizada para controlar dados, DTL – essa linguagem é muito usada para transação de dados, e DQL-linguagem de consulta de dados, porém as principais são DML e a DDL

2- Quais são os tipos de dados que a linguagem SQL padrão (ANSI) suporta? Explique cada um resumidamente.
R: Os tipos de dados que a linguagem SQL suporta são Char , Varchar , Longvarchar, Numeric, Decimal, Bit, Tinyint, Smallint, Interger, Bigint, Real, Float,
Double, Binary, Varbinary, longvarbinary, Date, Time, Timestamp, Blob, a linguagem SQL tem muitas variações ela pode ter varios tipos de dados como na utilização de caracteres(char), valores com ponto flutuante(float), valores entre 0 e1(bit), valores com casas decimais(decimal), valores variados(tinyint), essa linguagem pode ser migrada de plataforma para plataforma sem mudanças estruturais.

3- Explique o comando SELECT. Sua sintaxe, características básicas, Cláusula Where, operadores, conectores, subconsultas, funções de agregação, cláusula order by, group by, having e compute by.
R: O SELECT é utilizado para recuperar informações de um banco de dados,
Sintaxe: Select * from tabela where condição, as caracteristicas básicas do select é que o usuário tem a capacidade de especificar uma consulta query como uma descrição do resultado desejado, a clásula Where (elimina linhas antes de fazer agrupamentos), operadores relacionais (permite fazer comparações lógicas de ordenação de números, e ainda de letras mas não strings), operadores lógicos (Estes operadores comparam condições de precedência), funções de agregação ( a função de agregação utiliza a função soma dentro do SELECT atraves grupos de registros para que assim obtenha um valor unico para ser aplicado a um grupo de registros),order by(ela sorteia os resultados das perguntas em ordem ascendente por default), group by(divide dados em grupos), having (ela determina as condições para a clausula group by, ou seja filtra os dados agrupados), compute by (essa clausula sumariza a pesquisa).

4- O que é uma visão (view) em SQL? Explique suas propriedades, utilidades e os comandos para a sua manipulação.
R: É qualquer relação que não faz parte do modelo lógico do banco de dados, mas é visível ao usuário, a propriedade da visão é composta com linhas e colunas como se fosse uma tabela real, a utilidade esta ligada ao aumento de segurança obtendo assim uma visão limitada e controlada dos dados que podem ser obtidos e a performance que utilizada consulta otimizada, os comandos utilizados para sua manipulação são as funções e clausulas SQL, Where e Join.

5- Os que são procedimentos armazenados (stored procedure)? Para que servem, o que eles permite fazer e quais comandos podemos utilizar no seu corpo e para criá-los?
R: Store procedure são procedimentos executados no servidor, ela serve como dispensamento de banco de dados eles permitem encapsular tarefas repetitivas aceita parâmetros de entrada e retorno um valor de status o que acaba reduzindo o trafego na rede e melhorando a performance os comandos utilizados.
São: Create procedure busca
@nomedebusca varchar(50)
as
select nome1,nome2
from nome_da tabela
where nome = @nomebusca

6- Os que são gatilhos (TRIGGERS)? Para que servem, quais as vantagens na sua utilização, como funcionam e como criá-los?
R: Gatilhos ou TRIGGERS é uma das formas que a programação encontrou para executar um programa quando o evento associado ocorrer, ela mantem a consistência dos dados ou então propaga as alterações de dados de uma tabela para outras, sua vantagem é que quando ocorrer alguma alteração na tabela ele é disparado e deixa gravadas todas as informações do usuário que fez a alteração, eles são criados e funcionam da seguinte forma:
CREATE TRIGGER nome_do_gatilho ON dono.nome_da_tabela
FOR INSERT (ou UPDATE OU DELETE)
As
Código da execução

Normalização

1. Quais são as diretrizes informais para o projeto de esquema de relações? Explique resumidamente cada uma.
R: A primeira diretriz da semântica tem como objetivo projetar um esquema de relação de maneira que seja simples descrever seu significado, a segunda projetar esquemas de relações de maneira que nenhuma anomalia de alteração ocorra em relações, a terceira diretriz diz esta ligada a valores nulos, ela evita colocar atributos em um esquema de relação base cujo valor possa ser null, a quarta diretriz corresponde a tuplas espúrias o objetivo principal é projetar esquemas de relação tal que, quando aplicadas operações JOIN-NATURAIS, os atributos nas condições-joins envolvam atributos que sejam ou chaves primarias ou chaves estrangeiras de maneira a garantir que nenhuma tupla espúria seja gerada.

2. Quais são as métricas de qualidade informal para projeto de esquemas de relações? Explique resumidamente cada uma delas.
R: As métricas de qualidade informal são conhecidas como semânticas de atributos, redução de valores redundantes em tuplas, redução de valores nulos em tuplas e não permissão de tuplas espúrias.
Semântica de atributos: Mostra de forma detalhada como interpretar os valores de atributos que estão guardados em uma determinada tuplas.
Redução de valores redundantes em tuplas: Tem como objetivo reduzir valores desnecessários que possam ter nas tuplas.
Redução de valores nulos em tupãs: Se os atributos não forem aplicados as tuplas de relação podem-se ter vários valores nulos isso pode despender o espaço de armazenamento e dificultar o entendimento da operação.
Tuplas espúrias: Nesse tipo de tuplas pode ocorrer falta de informação correta e o projeto sair ruim, por esse motivo passa a ser invalida.

3. O que é e para que serve o conceito de dependência funcional? Quais são os tipos de dependência? Explique-os
R: Dependências funcionais são restrições que existem nas relações ela da oportunidade de modificar algo necessário para que o banco de dados seja modelado de forma correta, essa dependência é uma propriedade do significado semântica dos tributos em um esquema de relação R, essa semântica é o modo como os tributos se relacionam para especificar as dependências funcionais envolvidas na relação.


4. O que é e para que serve normalização de dados relacionais? Quando será utilizada a normalização na maioria das vezes?
R: Na normalização de base é com se fosse uma prevenção para que não haja redundância de informações com objetivo de reorganização de dados, será muito utilizado quando a tabela precisar de chaves estrangeiras para diferenciar dados.

5. O que são e quantas são as formas formais de relação? Explique-as resumidamente. Para manter eficiência e a simplicidade de processamento em certos casos podemos normalizar as relações até a 3ºFN por que?
R: É uma ligação com a dependência funcional para garantir os dados das diretrizes. São três tipos de forma normal cada uma com sua diferença, a primeira é a (1FN) visa eliminar atributos multivalorados, a segunda (2FN) é quando ela pertence a (1FN) e suas colunas que não são chave primaria dependerem da chave primaria, a (3FN) se já estiver na (2FN) e nenhum dos seus atributos dependerem funcionalmente de atributos não chave.

6. Dê exemplos de normalizações de uma relação.

Um exemplo é normalizar um banco de dados existente

Cliente Codigo Telefone 1 Endereço
Telefone n Rua Nº Cidade

Ciente Codigo Rua Numero Cidade

domingo, 22 de novembro de 2009

Algebra Relacional 2

Seleção
1 – Mostre o conteúdo da relação departamentos.
R- б (departamento)

Dnome Dnumero Snnger Datinicger
Pesquisa 5 333445555 22/mai/78
Administração 4 987654321 1/jan/85
Gerencial 1 888665555 19/jun/71

2 – Mostre os empregados que trabalham no departamento 4.6 ndep=4 (Empregado)

Pnome Mnome Snome Nss Datanasc Endereço Sexo Salario Nsssuper Ndep
Alicia J Zelaya 999887777 19/jul/58 Av.C,3 F 2500 987654321 4
Jennifer S Wallace 987654321 20/jun/31 Trav.D,4 F 4300 888665555 4
Ahmad V Jabbar 987987987 29/mar/59 Av G,7 M 2500 333445555 4

3 - Mostre as localizações do departamento de pesquisa 5.
6 dnumero=5 (Locais_Depto)

Dnumero Dlocalização
5 Bellaire
5 Sugariand
5 Houston

4- Mostre os projetos do departamento 4.6 pnumero=4(Projeto)

pnome pnumero plocalização pnum
Automação 10 Stafford 4
Beneficiamento 30 Stafford 4

5 – Mostre as informação de relação trabalha_em cujo o numero do projeto igual a 3.
6 pnumero=3(Trabalha_em)

Nssemp Pnro Horas
666884444 3 40.0
333445555 3 10.0

Projeção

1 - Mostre o numero e o nome dos dependentes
π nssemp,nomedep(Dependente)

Nssemp Nomedependente
333445555 Alice
333445555 Theodore
333445555 Joy
987654321 Abner
123456789 Michael
123456789 Alice
123456789 Elizabeth

2 - Mostre o nome e a localização dos projetos.
π pnome,plocalização(Projetos)

Pnome Plocalização
Produtox Bellaire
Produtoy Sugariand
Produtoz Houston
Automação Stafford
Reorganização Houston
Beneficiamento Stafford

3 – Mostre o nome e o código do gerente dos departamentos
π dnome,snnger(Departamento)

Dnome Snnger
Pesquisa 333445555
Administração 987654321
Gerencial 888665555

4 – Mostre o Nome e a data de nascimento dos Empregados.
π pnome,datanasc(Empregado)

Pnome Datanasc
John 9/jan/55
Franklin 8/dez/45
Alicia 19/jul/58
Jennifer 20/jun/31
Ramesh 15/set/52
Joyce 31/jul/62
Ahmad 29/mar/59
James 10/nov/27

5 - Mostre o nome e o salário dos empregados
π pnome,salario(Empregados)

Pnome Salario
John 3000
Franklin 4000
Alicia 2500
Jennifer 4300
Ramesh 3800
Joyce 2500
Ahmad 2500
James 5500

SELEÇÃO + PROJEÇÃO

1 - Mostre o código , nome e o salário dos empregados que ganham mais de 2500.
π pnome,nss,salario(бsalario>2500(empregado))

Pnome Nss Salario
John 123456789 3000
Franklin 333445555 4000
Jennifer 987654321 4300
Ramesh 666884444 3800
James 888665555 5500

2 - Mostre o Nome e a localização dos projetos do departamento 5
π pnome,plocalização(бdnum=5(Projeto))

Pnome Plocalização
Produtox Bellaire
Produtoy Sugarland
Produtoz Houston

3 – Mostre o numero do empregado e o numero do projeto cujas horas são maiores que
π nssemp,pnro,(бhoras>10(Trabalha_em))

Nssemp Pnro
999887777 30
987654321 20

4 - Mostre o nome e o sexo do dependente cujo numero do empregado é igual a 123456789
π nomedependente,sexo(бnssempregado=123456789(Departamento))

Nomedependente Sexo
Michael M
Alice F
Elizabeth F

5- mostre o nome relação e a data do aniversario dos dependentes cujo numero do empregado é igual a 333445555.
π nomedependete,relação,dataniv( 6Nssempregado=333445555(Dependente))

Nomedependente Relação Dataniv
Alice Filha 5/abr/70
Theodore Filho 25/out/73
Joy Esposa 3/mai/48

JUNÇÃO


1- Mostre o nome e o salário do empregado e o nome e a relação dos seus dependentes
π pnome,salario,nomedependente,relação(EmpregadoҲnss=nssemp Dependente)
PNOME SALARIO NOMEDEPENDENTE RELACAO
Jhon 3000 Michael Filho
Jhon 3000 Alice Filha
Jhon 3000 Elizabeth Esposa
Franklin 4000 Alice Filha
Franklin 4000 Theodore Filho
Franklin 4000 Joy Esposa
Jennifer 4300 Abner Marido

2 – Mostre o nome do departamento e o nome e o salário do empregado que é o seu gerente.
π d.dnome,e.pnome,e.salario(Empregado.e ҳ e.nss=Dssnger Departamento.D)
Dnome Pnome Salario
Pesquisa Franklin 4000
Administração Jennifer 4300
Gerencial James 5500

3 - Mostre o nome do departamento e a sua localização
πd.dnome,l.dlocalização(Departamento.dҲdnumero=ldnumero(locais_depto))
Dnome Dlocalização
Pesquisa Bellaire
Pesquisa Sugarland
Pesquisa Houston

4- mostre o nome do projeto, sua localização e o departamento ao qual pertence
π pnome, plocalização, dnome(Departamentoҳ dnumero=dnum(Projeto))

Pnome Plocalização Dnome
ProdutoX Bellaire Pesquisa
ProdutoY S ugariand Pesquisa
ProdutoZ Houston Pesquisa
Automação Stafford Administrativo
Reorganização Houston Gerencial
Beneficiamento Stafford Administrativo

5 – Mostre o nome do empregado e o nome do projeto nos quais eles trabalham.
π e.pnome,p.pnome(Empregado.e ҳ nss=nssemp Trabalha_em) ҳ T.Pnro=Pnumero Projeto))
E.pnome P.pnome
John ProdutoX
John ProdutoY
Ramash ProdutoZ
Ahamad Beneficiamento
Franklin ProdutoY
Franklin ProdutoZ

AGREGAÇÃO


1 - Mostre a quantidade de empregados do sexo masculino e a quantidade de empregado do sexo feminino
Sexo ƒ Caunt Nss(Empregado)

Sexo Count Nss
M 5
F 3

2 – Mostre a quantidade de dependente do sexo masculino e a quantidade de dependente do sexo feminino do empregado cujo numero é 123456789
Sexo ƒ Caunt Nssemp(σ Nssemp=123456789(Dependente))

Sexo Count Nssemp
M 1
F 2

3 - Mostre o nome e o salário do empregado e a quantidade de dependente que possui.π pnome,salario;ƒ Count qtde(EmpregadoҳNss=Nssemp Dependente)

Pnome Salario Qtde
Franklin 4000 3
John 3000 3
Jennifer 4300 1

4- mostre a despesa total de cada departamento com o salário dos empregados
Ndep ƒ Sum Salario(Empregado)

Ndep Sum_Salario
5 13300
4 9300
1 5500

5– Mostre a soma total das horas empregadas em cada projeto.
Pnroƒ Sum Horas(Trabalha_em) Pnro Sum_Horas

Pnro Sum_Horas
1 52,5
2 37,5
3 50
10 55
20 25,5
30 55

quarta-feira, 16 de setembro de 2009

Algebra Relacional

1-Quantos e Quais são os grupos nos quais a álgebra relacional está dividia? Identifique quais operações pertencem a cada um deles.
R:.A álgebra relacional esta dividida em dois grupos, são eles UNION,INTERSECTION,DIFFERENCE E CARTESIAN PRODUCT que esta relacionado ao conjunto de operações de teoria de conjuntos, depois vem o SELECT,PROJECT e JOIN que são para o desenvolvimento de operações desenvolvidas para base de dados relacionais.

2-Explique a Operação SELECT e PROJECT.Quando usar, para que usar, como usar, diferenças, etc.
R:.Utiliza-se SELECT para seleção de subconjuntos de tuplas de uma relação, deve se utilizado quando for necessário selecionar um registro ou uma tabela, essa seleção é muito utilizada para formar uma condição de seleção composta, dever empregado da seguinte forma SELECT*FROM TABELA.
Utilizaremos um PROJECT quando for necessário selecionar e descartar colunas de uma tabela que serve para projeção de atributos, entende-se que pode ser utilizado PROJECT quando ha necessidade de listar atributos, como por exemplo de um funcionário SNOME, PNOME, SALÁRIO (FUNCIONARIO).

3-Explique a Operação UNION, INTERSECTION e DIFFERENCE.Quando usar, para que usar, como usar.
R:. A operação UNION significa união de R e S que inclui todas as tuplas das mesmas, as
tuplas duplicadas são descartadas, INTERSECTION significa a intersecção de R e S essa relação
inclui todas as tuplas que são comuns a R e S, DIFFERENCE essa operação inclui as tuplas de R que não pertence ao conjunto de S. Entretanto UNION E INTERSECTION são utilizadas em operações comutativas

4 - Explique a Operação CARTESIAN PRODUCT. Quando usar, Para que usar, Como usar, etc.
A operação de Cartesian Produtct (Produto Cartesiano) tem a função de combinar todas as tuplas entre as duas relações de entrada, ou seja, combinar todos os registros de duas ou mais tabelas.
Pode ser utilizada quando houver necessidade de combinar todos esses registros, exemplo:
Tabela Cliente:
Código Nome Cidade
1 João Da Silva Jaboticabal
2 Pedro de Souza Guariba

Tabela Descontos no mês
Mês Desconto %
Agosto 10%
Setembro 9%

Cliente X Desconto no mês
Código Nome Cidade Mês Desconto %
1 João Da Silva Jaboticabal Agosto 10%
1 João Da Silva Jaboticabal Setembro 9%
2 Pedro de Souza Guariba Agosto 10%
2 Pedro de Souza Guariba Setembro 9%

Utilizando comando SQL para obter o Produto Cartesiano das tabelas Cliente e Descontos no mês, a sintaxe é definida:
Select * from Cliente, Descontos_mes


5 - Explique as Operações de junção (JOIN) e divisão (DIVISION). Quando usar, Para que usar, Como usar, etc.
Join:
O join (junção) tem como função a combinação de tuplas de duas relações, ou seja, registros de duas tabelas, partindo de atributos comuns a elas.
Pode ser utilizado quando houver a necessidade de combinar este registro, exemplo:

Tabela Cliente:
Código Nome Cod_cidade
1 João Da Silva 10
2 Pedro de Souza 11
3 Jose Santos 10

Tabela Cidade
Cod_cidade Nome_Cidade
10 Jaboticbal
11 Guariba

Cliente X Cidade
Código Nome Cod_Cidade Nome_cidade
1 João Da Silva 10 Jaboticabal
2 Pedro de Souza 11 Guariba
3 Jose Santos 10 Jaboticabal

Utilizando comando SQL para obter o join entre as tabelas Cliente e Cidade, a sintaxe é definida:
Select * from Cliente, Cidade
Where cliente.cod_cidade = cidade.cod_cidade


Division:
O Division (Divisão) tem como função a projeção de todos os elementos da primeira relação que se relaciona com todos os elementos da segunda relação.
Pode ser utilizado quando houver a necessidade de extrair esta projeção, exemplo:

Tabela R1
C1 C2
1 A
1 B
2 A

Tabela R2
C1
A
B

R1 X R2
C1
A

6 - Explique as Operações de AGREGAÇÃO. Quando usar, Para que usar, Como usar, etc.
A Agregação tem como objetivo reunir as Tuplas de uma relação, ou seja, os registro de tabela, em grupos sobre os quais podem ser aplicadas funções agregadas. A funções de Agregação mais conhecidas são Soma (SUM), Media (AVG), Maximo (MAX), Mínimo (MIN), Contar (COUNT).
Pode ser utilizado quando houver a necessidade reunir estes registros, para realizar uma soma por exemplo.

Utilizando comando SQL, temos alguns exemplos destas operações:
Para contar quantos registros existem na tabela Cliente:
Select count(*) from Cliente

Para saber qual o cliente mais velho cadastrado:
Select Max(data_nascimento) from cliente

quarta-feira, 9 de setembro de 2009

MRel - Modelo Relacional

1. Explique conceitualmente a diferença entre o MER e o Modelo de Dados Relacional, ou simplesmente Modelo Relacional (MRel).

O modelo de dados relacional representa os dados da base de dados como uma coleção de relações. Informalmente, cada relação pode ser entendida como uma tabela ou um simples arquivo de registros.
Já o MER propõe que a realidade seja visualizada, os objetos que compõem a realidade
Isto é, o MRel utiliza implementação de dados mais simples que o MER, uma vez que este ultimo utiliza dados conceituais de alto nível.

2 . Explique os conceitos de Instância, Esquema e Domínio no MRel. Explique as notações no MRel.

• Instância da Relação: São Tuplas com os valores da relação num determinado
momento, ou seja, os valores do banco no momento da consulta.

• Esquema: São os atributos da relação (Tupla do Cabeçalho).

• Domínio: É Conjunto de dados possíveis na Tupla.

• Notação:
– Um esquema de relação R de grau n é indicado por R(A1,
A2, A3, ..., An)
– Uma n-tupla t em uma relação r(R) é indicada por t= v2, ..., vn), em que vi é o valor correspondente ao atributo
Ai
• t[Ai] e t.Ai referem-se ao valor vi em t do atributo Ai.
– As letra Q, R, S significam nomes de relação.
– As letra q, r, s significam estados da relação
– As letra t, u, v significam tuplas


3. Explique os conceitos de super-chave, chave candidata e chave estrangeira.

• Super-chave: qualquer subconjunto de atributos de uma relação não repetidos que
identificam cada tupla da relação. Toda chave é uma super-chave. Nem toda super-
chave é uma chave (só a mínima). Toda a super-chave precisa conter, entre seus
atributos, uma chave.

• Chave Candidata: é a chave que tem chance de ser usada como chave-primária. É uma super-chave mínima.

• Chave Estrangeira: Representa o relacionamento entre as relações e define
formalmente a restrição de integridade referencial. O atributo definido como CE
deve ter valor igual ao valor da chave primária da tabela relacionada (de origem) ou
ser nula na relação (de destino).

4.Explique o conceito de integridade no MRel.

Restrições de Integridade: buscam restringir o domínio dos dados de modo a melhorar a consistência do banco de dados. Podem ser – restrição de integridade de chave, restrição de integridade de entidade e restrição de integridade referencial.


5.Explique o conceito de integridade referencial no MRel.

Integridade referencial é uma restrição que é especificada entre duas relações e é usada para manter a consistência entre tuplas de duas relações. Informalmente, a restrição de integridade referencial estabelece que um tupla de uma relação que se refere à outra relação deve se referir a uma tupla existente naquela relação. Existem 3 que são consideradas necessárias a uma base de dados relacional:
Restrição de Integridade da Chave: Uma chave candidata qualquer não pode ter o mesmo valor em duas tuplas distintas da mesma relação.
Restrição de Integridade da Entidade:A chave primária de qualquer relação não pode ser nula em nenhuma tupla dessa relação.
Restrição de Integridade Referencial: O conceito de Integridade Referencial depende do conceito de Chave Estrangeira.integridade referencial - exige que um valor referido por uma entidade de facto exista na BD (chave externa)


6. Explique os conceitos de Intenção e Extensão no MRel. Quais são as operações de atualização sobre relações?

• Intenção da Relação: Esquema da relação. Conjunto dos nomes dos Atributos.

• Extensão da Relação: Conjunto dos Valores dos Atributos. Uma relação r (ou instância de relação) da relação esquema R(A1, A2, ..., An), também denotado por r(R), é um conjunto de tuplas r={ t1, t2, ..., tm}. Cada tupla t é uma lista ordenada de n valores t=, onde cada valor vi, 1 £ i £ n, é um elemento do dom(Ai) ou um valor especial null. São utilizados, com freqüência, os termos intenção da relação para o esquema R e extensão da relação para a instância r(R).

Existem três tipos básicos de operação de atualização sobre relações - inserção, remoção e modificação. A inserção é usada para inserir novas tuplas em uma relação, a remoção elimina tuplas e a modificação modifica os valores de alguns atributos. Quando são aplicadas operações de atualização, o projetista deve verificar que as restrições de integridade especificadas no esquema da base de dados relacional não sejam violadas.

quinta-feira, 3 de setembro de 2009

3) CONTROLE DE ESTOQUE. Uma empresa do comércio varejista, deseja fazer o controle de estoque de seu estabelecimento. Para facilitar a administração do seu estoque, a organização criou uma estrutura de almoxarifados, onde um produto pode ser estocado em vários almoxarifados e um almoxarifado pode conter vários produtos. A reposição de estoque acontece quando os produtos adquiridos de um fornecedor chegam com sua respectiva nota fiscal de compra. Já a baixa do estoque se dá quando ocorre a emissão de uma nota fiscal de venda para um determinado cliente. Além disso, deseja-se classificar os produtos em linhas a serem determinadas pelo usuário de acordo com a sua necessidade.










4) EMPRESA DE FLORES. A X.P.T.O LTDA. criou a FLOWERNET, uma rede que tem como objetivo atender todo o mercado nacional no que diz respeito à venda e entrega de flores. Através desta rede, um cliente pode fazer uma compra de flores em Belo Horizonte e pedir para a entrega ser feita em Fortaleza. Para isso a X.P.T.O firmou convênio com várias floriculturas em várias cidades do Brasil. Uma floricultura pode atender várias cidades da região. O pedido do cliente, que pode possuir vários tipos de flores, é cadastrado e repassado para uma das floriculturas conveniadas que atendem a cidade, na qual será entregue o pedido.












5) APURAÇÃO ELEITORAL. Para facilitar o processamento da apuração eleitoral da eleição municipal a ser realizado nesse ano, o TRE (Tribunal Regional Eleitoral) resolveu informatizar esse processo. Sabe-se que cada localidade é dividida em várias zonas eleitorais que, por sua vez, são divididas em várias seções nas quais os eleitores estão vinculados. O candidato a um cargo público deve estar vinculado a um único partido político. Vale ressaltar que, segundo a legislação vigente, o voto é secreto.










6) CONCURSO PÚBLICO. Uma organização deseja implementar o procedimento de concurso público para tornar transparente o seu processo de seleção de pessoal. Esta organização possui vários departamentos, que por sua vez, possui vários cargos. O mesmo cargo pode estar vinculado à vários departamentos. Um concurso público é realizado para vários cargos, e um cargo pode ser oferecido em vários concursos. O candidato faz inscrição em somente um cargo oferecido em um concurso público. O concurso tem várias etapas, que tem a participação de vários candidatos. O candidato obtém a nota em cada etapa que participa. A etapa pode ser classificatória ou eliminatória.








quarta-feira, 26 de agosto de 2009

MER Modelo de Entidade Relacionamento

1) Explique o conceito do MER e a sua importância no relacionamento entre os profissionais da informática e os demais profissionais.
R- É o modelo de dados conceitual de alto nível, é baseado na percepção do mundo real, que consiste em um conjunto de objetos básicos chamados de entidades, e nos relacionamento entre esses objetos, ele esta relacionada entre os profissionais de informática e outros profissionais devido à facilidade do entendimento, visto que o conceito é o mesmo.

2) Explique e comente o conceito de entidades e atributos.
R - Entidade é o objeto de identificação distinguível de cada pessoa, existe a entidade concreta exemplo uma pessoa e a entidade abstrata exemplo: um livro.
Atributo é a propriedade ou função que mapeia um conjunto de entidades em um domínio. Tipos de atributos: chave, composto, simples, multivalorado, derivados.

3) Explique e comente o conceito de relacionamento.
R - É uma ligação entre diversas entidades, por exemplo: podemos definir um relacionamento que associe um cliente (Paulo), a conta 502, isto especifica que Paulo é um cliente com conta bancaria de numero 502.

4) Explique e comente o conceito de atributo-chave.
R- São atributos usados para identificar unicamente cada entidade, isto são atributos cujos valores são distintos garantindo e restringindo a unicidade de cada entidade

5) Explique o conceito do DER e a sua importância no relacionamento entre os profissionais da informática e os demais profissionais.
R - Diagrama de entidade relacionamento é usado para representar um projeto de banco de dados no nível lógico conceitual de abstração,

6) Dê ou faça um exemplo de um DER e explique o mesmo.
R - Um sistema comercial, com cliente, produto, venda, item de venda, imposto e imposto por item de venda, todas as entidades se relacionando, cada um com seus atributos chave.segue o link abaixo da imagem do DER
http://189.10.40.20/TJDN/blogs/dev/William/FKSQLServer/DER.jpg

Introdução à Banco de Dados

1) O que é e como funciona o armazenamento de dados em arquivo? (criação, utilização, vantagens e problemas).
R- Banco de dados é um conjunto de dados logicamente relacionados com varios significado .Sua criação é especifica para atender os usuários ou analistas dos projetosAs vantagens: os dados são armazenados de forma segura e de fácil acesso para os usuáriosAs desvantagens : As informações que ele pode estar gerando , pode ser utilizadas , por falta de conhecimento dos usuários.

2) O que é e como funcionam os SBGD? Explique a evolução dos arquivos, passando pelo BD até SGBD.
R - Um Sistema Gerenciador de Banco de Dados (SGBD) é o conjunto de softwares responsáveis pelo gerenciamento de uma base de dados, ele consiste em uma coleção de dados inter-relacionados e uma coleção de programas para prover o acesso a esses dados. O objetivo principal de um SGBD é prover um ambiente que seja adequado e eficiente para uso na recuperação e armazenamento de informações.Ele passou pelas seguintes evoluções:Sistemas de arquivosBD em redeBD hierárquicoBD relacionalLinguagem de orientada a ObjetoHipermídiaInteligência Artificial.

3) Quais são os tipos de conexão existentes com BD? Explique-as.
R - Time sharing: esta conexão é realizada em tempo real
Servidor de arquivos: conexão somente para armazenamento de dados
Cliente-servidor: servidor de dados e de manutenção de arquivos por usuários
Servidor de aplicações: servidor de aplicações em geralServidor
Web: exclusivo para web

4) Quais são os modelos de dados existentes? Explique-os.
R-Modelo Hierárquico: Os dados estão estruturados em hierarquias ou árvores.Os nós das hierarquias contêm ocorrências de registros, onde cada registro é uma coleção de campos (atributos) cada um contendo apenas uma informação. O registro que em uma hierarquia precede outros se designa registro-pai dos outros registros que são chamados de registros-filhos. Uma ligação é uma associação entre dois registros.
Modelo em Rede:No modelo em rede os registros estão organizados em grafos. Nele aparece um único tipo de associação (set), que define uma relação de 1: N entre 2 tipos de registros: proprietário e membro.
Modelo Relacional: O modelo relacional apareceu devido a seguintes necessidades: aumentar a independência de dados nos sistemas gerenciadores de banco de dados; prover um conjunto de funções apoiadas em álgebra relacional para armazenamento e recuperação de dados; O Modelo relacional revelou-se ser o mais flexível e adequado ao solucionar os vários problemas que se colocam ao nível da concepção e implementação da base de dados. A estrutura fundamental do modelo relacional é a relação. Uma relação é constituída por um ou mais atributos (campos), que traduzem o tipo de dados a armazenar.
Modelo Orientado a Objetos: A habilidade para criar os tipos de dados necessários é uma característica das linguagens de programação orientada a objetos. Estes sistemas, porém, necessitam guardar representações das estruturas de dados que eles usam no armazenamento permanente. A estrutura padrão para o banco de dados objeto foi feita pelo Grupo de gerenciamento dados objetos (ODMG).
Sistemas Objetos-Relacionais: A área de atuação dos sistemas Objeto-Relacional tenta suprir a dificuldade dos sistemas relacionais convencionais, que é o de representar e manipular dados complexos. A solução proposta é a adição de facilidades para manusear tais dados utilizando-se das facilidades SQL existentes. Para isso foi necessário adicionar: extensões dos tipos básicos no contexto SQL; representações para objetos complexos no contexto SQL; herança no contexto SQL; sistema para produção de regras.

5) Quais são os aspectos relevantes que devem ser considerados para atingir a eficiência e eficácia do sistema informatizado? (na visão do BD).
R- Nos sistemas sem banco de dados, cada aplicação possui seus pró­prios arquivos, este fato costuma provocar uma redundância considerá­vel nos dados armazenados, com o desperdício de espaço de armazena­mento resultante. Por este motivo devemos trabalhar , com um nível de segurança , e pelo controle central do banco de dados O problema da integridade é assegurar que os dados do banco de dados sejam corretos. A inconsistência entre duas entradas que preten­dem representar o mesmo "fato" é um exemplo de falta de integridade (vide discussão no item acima); este problema, certamente, só pode ocor­rer se houver redundância nos dados armazenados.

6) Quais são as arquiteturas de SGBD’s? Explique-as.
R- Plataforma Centralizada - Onde tem um computador potente que hospeda o SGBD e emuladores para os aplicativos, a vantagem que ela tem é a segurança em manipular grandes volumes de dados com vários usuários, a principal desvantagem é o alto custo, pois a diferença em ambientes como mainframes, e soluções centralizadas.
Sistemas de Computador Pessoal - Os computadores pessoais trabalham com sistema stand-alone, ou seja, fazem seus processamentos sozinhos. No começo esse processamento era bastante limitado, mas com a evolução do hardware, hoje os computadores, processam muito mais informação. Eles utilizam o padrão Xbase em se tratando de SGBDs funcionam como hospedeiros, e possuem um único aplicativo a ser usado na maquina.
Banco de Dados Cliente-Servidor - Nesta arquitetura, o cliente (front_end) executa as tarefas do aplicativo, ele fornece a interface com o usuário (tela e processamento de entrada e saída). O servidor (back_end) executa as consultas do DBMS e retorna os resultados ao cliente. Para poder implementá-la é necessário soluções sofisticadas, que possibilitem: tratamento de transações, a principal vantagem é dividir o processamento em dois sistemas e reduzir o trafego de dados na rede.
Banco de Dados Distribuídos (N camadas) - Esta arquitetura consiste em dividir a informação em diversos servidores. E cada servidor atua como cliente-servidor, porem as consultas dos aplicativos são feitas para qualquer servidor. Caso a informação solicitada seja mantida por outro servidor ou servidores, o sistema se encarrega de obter a informação necessária. Exemplos típicos são bases de dados corporativos, em que o volume de informação é muito grande e deve ser distribuido por diversos servidores.

INTEGRANTES

Caio Cesar
Flavia Carolina
Flavio Ferraressi
Pedro Paulo
Weslen Gomes