32
Curso: Análise e Desenvolvimento de Sistemas Mini-Curso: Banco de Dados Comercial Prof. Hilson Silva Banco de Dados Comercial Agregando Tecnologia ao Negocio.

Mini curso banco de dados comercial publicar

Embed Size (px)

DESCRIPTION

Mini curso de Banco de dados Comercial, utilizando o Sistema de Gerenciamento de Banco de Dados - Mysql 5.0 e a ferramenta de modelagem de dados Workbench!Ministrado pelo Profº Esp. Hilson Silva.

Citation preview

Page 1: Mini curso   banco de dados comercial publicar

Curso: Análise e Desenvolvimento de Sistemas Mini-Curso: Banco de Dados Comercial Prof. Hilson Silva

Banco de Dados ComercialAgregando Tecnologia ao Negocio.

Page 2: Mini curso   banco de dados comercial publicar

Prof. Esp. Hilson Silva

Históricos: Acadêmico/Profissional Especialista em Engenharia de Software. Professor Pesquisador do EAD- UAPI/UFPI Consultor de Negocio (Gestão de Pessoas). Analista e Desenvolvedor Grupo Carvalho. Áreas de Interesse Inteligência de Negocio (Gestão de Pessoas) Desenvolvimento de Aplicações Desktop/Web Delphi e Java. Gerenciamento de Dados.

Sobre o Professor!Banco de Dados Prof. Hilson Silva

Page 3: Mini curso   banco de dados comercial publicar

Agenda Introdução - Histórico de Banco de Dados Comercial. Atuação dos Profissionais de Banco de Dados Visão Geral Arquitetura utilizadas no Banco de Dados Comercial(Mono usuário, Cliente Servidor e Centralizado) Modelos: - Conceitual e Lógicos Conceitos Básicos - Entidade (Relação) - Atributo - Domínio - Tupla - Exemplo de Entidades Restrições de Integridade Utilização de Linguagem - DDL, DML e SQLExemplo de Banco de Dados Comercias - Microsoft Access, SQL Server Express, SQL Server Standard - MySql ,PostGrid ,Firebird ,Oracle dentre outros. O Mysql e Workbench. Atividade Prática. - Problemática

Banco de Dados Prof. Hilson Silva

Page 4: Mini curso   banco de dados comercial publicar

Introdução

Ao contrario do que alguns desenvolvedores pensam

em relação a banco de dados comerciais, que são bancos

criados para aplicações de pequeno porte desenvolvidos em

ferramentas livres ou até banco Access. Tudo isso são visões

distorcidas. Banco de Dados Comercial: È todo e qualquer

banco implementado com o propósito de gerenciar dados e

transações comerciais de modo geral. Tendo em comum a

utilização de Sistema de Gerenciamento de Banco de Dados,

servidores com dedicação exclusiva na sua grande

maioria ,Estrutura de Backup tolerante a falha e outras

particularidades.

Banco de Dados Prof. Hilson Silva

Page 5: Mini curso   banco de dados comercial publicar

Histórico de DB Comercial

História

Com o surgimento da automação comercial e a crescente

procura de banco de dados comercial por parte dos

desenvolvedores e clientes aceleraram o processo de difusão do

banco de dados pelo mundo.

O Primeiro banco de dados não comercial foi desenvolvido em

1974 por uma Universidade dos EUA. A versão comercial só veio

surgir quatro anos depois após uma serie de testes realizados pela

IBM no SYSTEM R, onde deram origem duas outras versões de

banco de dados comercial o SQL/DS em 1981 e DB2 1983.

Banco de Dados Prof. Hilson Silva

Page 6: Mini curso   banco de dados comercial publicar

Em consequência do surgimento do banco de dados, surgiram os profissionais:• DBA - Administrador do Banco de Dados

- Responsável pela parte física.

• AD - Administrador de Dados- Responsável pela parte lógica.

• Projetista de Banco de Dados- Constrói partes do modelo da base de dados.

• Analista de Sistemas- Define e projeta aplicações sobre a base de dados.

• Programador- Constrói aplicações usando os modelos lógicos existentes.

• Usuários Finais- Acesso indireto aos dados através de aplicações.

Banco de Dados Prof. Hilson Silva

Atuação dos Profissionais de Banco de Dados

Page 7: Mini curso   banco de dados comercial publicar

Visão Geral da Implementação do DB

Prof. Hilson Silva – Banco de Dados Comercial

Banco de Dados Prof. Hilson Silva

Page 8: Mini curso   banco de dados comercial publicar

Arquitetura utilizadas no Banco de Dados Comercial

• Modelos de Plataformas para Banco de Dados: - Mono-Usuário- Centralizada- Cliente/Servidor

• Mono-Usuário - O banco de dados encontra-se no mesmo computador em que são executadas as aplicações. - Não há múltiplos usuários. - Típico de computadores pessoais.• Centralizada - O banco de dados encontra-se no mesmo computador em que são executadas as aplicações.• Cliente/Servidor - Múltiplos usuários.- Servidor de banco de dados (um computador contém todos os arquivos do banco mais o SGBD).

Banco de Dados Prof. Hilson Silva

Page 9: Mini curso   banco de dados comercial publicar

-Somente um usuários.-È ao mesmo tempo Servidor de banco de dados e servidor de aplicação.

Arquitetura do Banco de Dados Mono Usuário

Banco de Dados Prof. Hilson Silva

Page 10: Mini curso   banco de dados comercial publicar

10

Servidor de B.Dadose de Aplicação

TerminalRequisição

Arquitetura do Banco de Dados Centralizado Banco de Dados

Prof. Hilson Silva

Page 11: Mini curso   banco de dados comercial publicar

11

Arquitetura do Banco de Dados Cliente Servidor

ServidordeDados

Servidor de Aplicação

Banco de Dados Prof. Hilson Silva

Page 12: Mini curso   banco de dados comercial publicar

Conceitual :È uma descrição do banco de dados de forma independente de implementação em um SGDB. Mostrando como os dados podem aparecer no banco de dados, porem não demonstra claramente como foram armazenados no SGDB. (Heuser, Carlos Alberto 2009)

Nota: Modelo Conceitual: È a idealização do banco de dados , onde é produzido o MER – Modelo de Entidade Relacionamento.

Lógico : È uma descrição de um banco de dados a nivel de abstração visto pelo próprio usuário do SGDB, dessa forma o modelo lógico é dependente do tipo de SGDB que esta sendo usado (Heuser, Carlos Alberto 2009).

Nota: Modelo Lógico : È a definição a nível de SGDB, onde é produzido o DER Diagrama de Entidade Relacional.

Modelos Banco de Dados Prof. Hilson Silva

Page 13: Mini curso   banco de dados comercial publicar

Banco de Dados :Conjunto de dados interrelacionados que objetivam atender as necessidades de um conjunto de usuários com um proposito ou resolução de determinado problema.

Inglês: DatabaseBD = Banco de Dados SGDB : Software que auxilia na definição, carga, recuperação, atualização e manutenção de um banco de dados.

Inglês: Database Management SystemSGBD = Sistema de Gerenciamento de Banco de Dados.

Conceitos Básicos Banco de Dados Prof. Hilson Silva

Page 14: Mini curso   banco de dados comercial publicar

• Entidade: Conjunto de relação identificada por características individuais definidas por meio de seus atributos. • Ex: Objetos= Pessoas (Hilson)

• Atributos: São as colunas que compõe as relações(Tabelas), podendo assumir :

Vazios (null) = colunas com Valores opcionais.

Não aceita null ou Vazios = colunas com Valores obrigatórios.• Dóminio: cada atributo é definido o conjunto de valores (ou

domínio de valores) que ele pode assumir.• Atômicos (O endereço pode ou não ser atômico)• Monovalorados.

• Tupla: Registro que compõe o conteúdo de uma tabela ou relação

Conceitos Básicos Banco de Dados Prof. Hilson Silva

Page 15: Mini curso   banco de dados comercial publicar

• Exemplo de uma Entidade ALUNOS.• Definição de:• Atributos , Dominio, Tupla, relação e Grau(1 para 1) .

Figura 1 – Exemplo de tuplas (Navathe 2011)

Banco de Dados Prof. Hilson Silva

Page 16: Mini curso   banco de dados comercial publicar

Restrições de Integridade– Restrição de integridade: é uma regra de consistência de dados

que é garantida pelo próprio SGBD.

• Na abordagem relacional, costuma-se classificar as restrições de integridade nas seguintes categorias:– Integridade de Domínio – Restringe o tipo de valor que a coluna

recebe

– Integridade de Vazio – Restringe a obrigatoriedade ou não do preenchimento do campo.

– Integridade de Chave- Estabelece a unicidade da tupla.

– Integridade Referencial – Estabelece a Relação de chave estrangeira.

– Integridade Semântica – Estabelecem condições de tratamento para o atributo.(Ex. Restringir dentro do setor COMERCIAL a não inserção de cargos que não pertençam ao setor, tipo ARQUITETO)

Banco de Dados Prof. Hilson Silva

Page 17: Mini curso   banco de dados comercial publicar

Utilização da Linguagem

DDL - “Data Definition Language”

Esta linguagem foi instituída para a definição estrutura dos dados de armazenamento da informação (Metadados). Definição: Linguagem de Definição de Dados-DDL.

- Tambem usada para descrever o modelo lógico.

Exemplo: CREATE SCHEMA / TABLE / VIEW DROP SCHEMA / TABLE / VIEWMais utilizados;

CREATE DROP ALTER ADD

Banco de Dados Prof. Hilson Silva

Page 18: Mini curso   banco de dados comercial publicar

Criação de Tabela

• O comando CREATE TABLE é usado para especificar uma nova relação a partir do seu nome, da especificação dos seus atributos e restrições(TIPO)

• Cada atributo é especificado através de:– Nome– Tipo de dado– Restrição

Ex: Create table Funcionario(

Matricula int primary key,

Nome Varchar(80) not null,

Cargo CodCar int

)

Banco de Dados Prof. Hilson Silva

Utilização da Linguagem

Page 19: Mini curso   banco de dados comercial publicar

Linguagem DML Linguagem para Minipular da informação a ser inserida ou já existente no banco de dados. Uso da Linguagens - Uso do Select - Uso do Insert - Uso do Update - Uso do Delete - Uso da ViewConsultas simples e compostasFunções especificos de manipulação de dados. - Between - Exists - In ou not in - Union e Union all - >= ou <= - Like - Top ou rownum

- Max - Min - Avg - Group by - Order by - Sum, Count e Outros

Banco de Dados Prof. Hilson Silva

Page 20: Mini curso   banco de dados comercial publicar

Uso do SELECT

• Exemplo do Select:

Select Empregados.Nome, Empregados.Numero_dept, Departamentos.Nome

From Empregados,departamentosWhere Empregados.Numero_dept=departamentos.Numero And Empregados.Salario>2500

- Seleção composto da informação, onde é utilizado duas ou mais tabelas

Banco de Dados Prof. Hilson Silva

Page 21: Mini curso   banco de dados comercial publicar

• Uso do Insert:

Comando utilizado para incluir uma tupla na tabela do banco de dados.

Composição :

Insert into especifica a tabela, podendo ou não espeficar os campos

Values ()

Uso do INSERT Banco de Dados Prof. Hilson Silva

Page 22: Mini curso   banco de dados comercial publicar

Exemplo de Insert:

Insert into Departamento (id, descricao, datcad ,sigla)

Values (1, ‘Financeiro’,’21/03/2012’,’FIN’)

Ou

Insert into Departamento

Values (1, ‘Financeiro’,’21/03/2012’,’FIN’)

Uso do INSERT Banco de Dados Prof. Hilson Silva

Page 23: Mini curso   banco de dados comercial publicar

• Uso do Update:

Comando utilizado para alterar uma tupla ou varias tuplas de uma tabela do banco de dados.

Composição :

Update ou especificação de tabela, Set NomeDoCampo a ser alterado

where especificação de filtros and

Uso do UPDATE Banco de Dados Prof. Hilson Silva

Page 24: Mini curso   banco de dados comercial publicar

• Exemplo de Update:

Update Departamento Set Descricao = ‘Finanças’

Observação deve ser usado quando existir somente um registro na tabela.

Ou

Update Departamento Set Descricao = ‘Finanças’

where iddepartamento = 1

Uso do UPDATE Banco de Dados Prof. Hilson Silva

Page 25: Mini curso   banco de dados comercial publicar

• Uso do Delete:

Comando utilizado para remover uma tupla ou todos as tuplas de uma tabela do banco de dados.

Composição :

delete From NomeDaTabela

where especificação de filtros and ???

Exemplo:– Delete from Departamento (Elimina todos os registros da tabela)

ou

– Delete from Departamento where iddepartamento= 25

Uso do DELETE Banco de Dados Prof. Hilson Silva

Page 26: Mini curso   banco de dados comercial publicar

• Uso da View:

Comando utilizado para criar uma visão(replicar) da informação dentro do banco de dados em uma tabela temporária.

Composição :

Create or replace View Funcionarios_Consulta as (Select * from Funcionarios where especificação de filtros and ???)

Uso da View Banco de Dados Prof. Hilson Silva

Page 27: Mini curso   banco de dados comercial publicar

Exemplo de Bancos de Dados ComerciasBanco de Dados Prof. Hilson Silva

Page 28: Mini curso   banco de dados comercial publicar

MYSQL 5.0/WORKBENCH Banco de Dados Prof. Hilson Silva

O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface. É atualmente um dos bancos de dados comercial mais utilizado no mundo, com mais de 10 milhões de instalações pelo mundo.

Caracteristicas: Possui plataforma multiacesso. Politica e gerenciamento de acesso. Integridade dos dados relacionais. Controle de concorrência nas transações.

Page 29: Mini curso   banco de dados comercial publicar

MYSQL 5.0/WORKBENCH Banco de Dados Prof. Hilson Silva

Caracteristicas:

Fornece sua API para várias outras linguagens, como Java, Python, PHP, Perl, C, C++.Usa programação de threads utilizando-as diretamente no kernel da plataforma do SO.Disponibiliza vários tipos de tabelas para armazenamento de dados. -Velocidade e Armazenamento: A vantagem dessa variedade de tabelas é a possibilidade de escolher o tipo em cada situação diferente. Podendo ser priorizado velocidade, ou volume de dados, entre outras características.

Enfim o mysql é extremamente poderoso, pronto para executar mais de um bilhão de consultas por dia de um site ou aplicação desktop, ou até mesmo processar milhares de transações por minuto, conforme os artigos publicados sobre essa ferramenta.

Page 30: Mini curso   banco de dados comercial publicar

Atividade Prática

Problemática:

A Associação Comercial da Cidade de Caxias-MA, solicitou a criação de uma ferramenta que auxiliasse nas atividades que ela oferece aos seus associados. Para isso contratou uma empresa de Software House, para desenvolver um portal coorporativo que contemplará nas seguintes funcionalidades:

Cadastros( Empresa,Endereço) Solicitações (Abertura de Empresa, Associar-se,Fechamento Empresa, Eventos do Associado, Eventos da Associação ) Acompanhamento Solicitações. Calendário de Reuniões

Implemente o modelo lógico desse banco de dados!

Banco de Dados Prof. Hilson Silva

Page 31: Mini curso   banco de dados comercial publicar

Referencial BibliográficoELMASRI, Ramez, NAVATHE, Shamkant, SOUZA, Teresa Cristina Padilha de. Sistemas de banco de dados: fundamentos e aplicações. 3.ed. Rio de Janeiro: LTC, 2002.ELMASRI, Ramez, NAVATHE, Shamkant, SOUZA, Sistemas de banco de dados. .6ª ed. Rio de Janeiro: Pearson, 2011.HEUBER, Carlos, SProjeoto de banco de Dados. 6ª ed. Rio de Janeiro: Bookman, 2009.KORTH, Henry F., SILBERSCHATZ, Abraham & SUDARSHAN, S. Sistema de banco de dados. 5 ed., Rio de Janeiro: Editora Elsevier, 2006.TEOREY, Toby, LIGHTSTONE, Sam e NADEAU, Tom. Projeto e modelagem de bancos de dados. Rio de Janeiro: Elsevier, 2007.

Banco de Dados Prof. Hilson Silva

Page 32: Mini curso   banco de dados comercial publicar

Prof. Hilson Silva – Banco de Dados Comercial

Vamos para Atividade Prática!