AULA 1 - Prof a. ADRIANA SICSÚ, DSc. DESENVOLVIMENTO DE SOFTWARE AULA 7 – Sistemas de Banco de...

53
AULA 1 - Prof a . ADRIANA SICSÚ, DSc. DESENVOLVIMENTO DE SOFTWARE AULA 7 – Sistemas de Banco de Dados Prof a : ADRIANA SICSÚ, DSc. [email protected]

Transcript of AULA 1 - Prof a. ADRIANA SICSÚ, DSc. DESENVOLVIMENTO DE SOFTWARE AULA 7 – Sistemas de Banco de...

AULA 1 - Profa. ADRIANA SICSÚ, DSc.

DESENVOLVIMENTO DE SOFTWARE AULA 7 – Sistemas de Banco de Dados

Profa: ADRIANA SICSÚ, [email protected]

OBJETIVOS DA AULA

• Sistemas de Banco de Dados.• Sistema de Gerenciamento de Banco de Dados Microsoft

SQL Server 2008 R2 Express.• Principais Tipos de Dados do SQL Server 2008 R2• Structured Query Language (SQL).• Desenvolvimento de um Banco de Dados em Microsoft

SQL Server 2008 R2 Express.

2

Conceitos

3

DadosSão fatos que possuem um significado implícito. (ELMASRI, 2005)

Banco de Dados

É uma coleção de dados relacionados com algum significado inerente. (SILBERSCHATZ, 1997)

SGBD É uma coleção de softwares de propósito geral que facilita o processo de: definir, construir e manipular um banco de dados (BD); situada entre uma ou mais aplicações (APs) e um ou mais BDs. (ELMASRI, 2005)

SGBD

4

Principais vantagens dos SGBDRs

• Separação entre programas e dados, • Armazenamento persistente dos

dados, • Padronização dos dados, • Compartilhamento dos dados, • Controle de redundância dos dados,

restrições de integridade, • Restrição de acesso, • Eliminação de códigos redundantes

nas aplicações para gerenciamento de dados, flexibilidade,

• Disponibilidade e • Escalabilidade

Silberschatz (1997) e Elmasri (2005)

Esta arquitetura permite que as aplicações compartilhem as funções especializadas existentes na coleção de programas do SGBDR e desta forma evita-se que estas funções sejam implementadas nas aplicações.

Sistema de Banco de Dados

5Sidney Ventura

Conceitos

6

Modelagem de um Banco de Dados

A modelagem de um BD de um SGBDR é realizada através do modelo entidade-relacionamento (MER) que especifica:

• Entidades de dados,• Relacionamentos entre as entidades de dados,• Atributos das entidades de dados e• Regras de um BD (ELMASRI, 2005)

O modelo de um BD pode ser especificado de forma textual e/ou gráfica (DER).

Conceitos

7

Super Chaves

É um conjunto de um ou mais atributos que permitem identificar univocamente uma entidade.

(SILBERSCHATZ, 1997)

Chave Candidata

São super-chaves para as quais nenhum subconjunto possa ser uma super-chave.

(SILBERSCHATZ, 1997)

Chave Primária

É uma chave candidata escolhida pelo projetista do BD como de significado principal para a identificação de entidades

(SILBERSCHATZ, 1997)

Conceitos

8

Chave Estrangeira

Atributo ou combinação de atributos em uma tabela cujos valores devem coincidir com a chave primária de outra tabela ou devem ser nulos. (ROB; CORONEL, 2011)

Relacionamentos entre Entidades

É uma associação entre uma ou várias entidades.(SILBERSCHATZ, 1997)

Regras As regras podem ser definidas como predicados, asserções ou verdades estabelecidas sobre entidades, relacionamentos e atributos, que complementam a semântica de um modelo de dados. (BARBIERE, 1994)

As regras podem ser classificadas em: regras de entidades, regras de relacionamentos, regras de atributos e regras de negócio. (SILBERSCHATZ, 1997)

Conceitos

Esquema de BD

O projeto geral de um BD é chamado esquema do BD, que é definido durante o projeto do BD.

(SILBERSCHATZ, 1997)

Instância de um BD

O conjunto de informações contidas em determinado BD, em um dado momento, é chamado instância do BD.

(SILBERSCHATZ, 1997)

Tabela de um BD

Os dados e os relacionamentos de um BD de um SGBDR são representados por tabelas.

(SILBERSCHATZ, 1997)

Microsoft SQL Server• O Microsoft SQL Server 2008 R2 Express é uma edição gratuita tanto para

desenvolvimento quanto para produção de bancos de dados, inclusive para fins comerciais, com o mesmo sistema de gerenciamento de bancos de dados das outras edições do SQL Server 2008 R2 da Microsoft.

• O Microsoft SQL Server 2008 R2 Express suporta bancos de dados de até 10 GB cada e permite criar mais de um banco de dados no mesmo servidor. Desta forma, esta edição atende aos requisitos de uma variedade de aplicações, inclusive comerciais, sem custo de licenciamento.

10

As características básicas do SQL Server 2008 R2 Express são apresentadas em http://www.microsoft.com/express/Database/Default.aspx

Microsoft SQL Server

Opções de instalações:

– Database Only (somente o SGBDR)– Management Tools (somente as ferramentas de gerenciamento)– Database with Management Tools (o SGBDR e as ferramentas)– Database with Advanced Services (o SGBDR, as ferramentas e suporte a Full-Text

Search e ao Reporting Services)

11

Os recursos de cada opção são apresentados em http://www.microsoft.com/express/Database/InstallOptions.aspx

SQL Server 2008 R2Principais Tipos de Dados

– Numéricos exatos– Numéricos aproximados– Cadeias de caracteres– Cadeias de caracteres Unicode– Cadeia de caracteres binária– Data e hora– Outros tipos de dados

12

Tipo de Dados

13

Númericos Exatos

Tipo de Dados

14

Númericos Aproximados

Se 1<= n<=24, n será tratado como 24.

Se 25<=n<=53, n será tratado como 53.

O tipo de dados float[(n)] do SQL Server está em conformidade com o padrão ISO para todos os valores de n de 1 até 53. O float(53) é equivalente ao double precision (precisão dupla) do padrão ISO.

Tipo de Dados

15

Data e Hora

Tipo de Dados

16

Data e Hora

Tipo de Dados

17

Data e Hora

Tipo de Dados

18

Data e Hora

Tipo de Dados

19

Cadeia de Caracteres

– São tipos de dados de caractere de comprimento fixo ou variável. Dados de caractere não-Unicode de comprimento fixo, com um comprimento

de n bytes. n deve ser um valor de 1 a 8.000. O tamanho de armazenamento é n bytes. O sinônimo de ISO para char é character.

char [ ( n ) ]

Dados de caractere não-Unicode de comprimento variável. n pode ser um valor de 1 a 8.000. max indica o tamanho máximo de armazenamento, que é 2^31-1 bytes. O tamanho de armazenamento é o comprimento real dos dados inseridos + 2 bytes. Os dados digitados podem ter 0 caractere de comprimento. Os sinônimos de ISO para varchar são char varying ou character varying.

varchar [ ( n | max) ]

Tipo de DadosCadeias de caracteres Unicode Os tipos de dados de caractere que são dados Unicode de comprimento fixo, nchar, ou

de comprimento variável, nvarchar, e usam o conjunto de caracteres UNICODE UCS-2.

Dados de caractere Unicode de comprimento fixo com n caracteres. n deve ser um valor de 1 a 4.000. O tamanho do armazenamento é duas vezes n bytes. Os sinônimos de ISO para nchar são national char e national character.

nchar [ ( n ) ]

Dados de caractere Unicode de comprimento variável. npode ser um valor de 1 a 4.000. max indica o tamanho máximo de armazenamento, que é 2^31-1 bytes. O tamanho de armazenamento, em bytes, é duas vezes o número de caracteres digitados + 2 bytes. Os dados digitados podem ter 0 caractere de comprimento. Os sinônimos de ISO para nvarchar são national char varying e national character varying.

nvarchar [ ( n | max ) ]

20

Tipo de DadosCadeia de caracteres binária Tipos de dados binários de comprimento fixo ou comprimento variável.

Dados binários do comprimento fixo com um comprimento de n bytes, em que n é um valor de 1 a 8.000. O tamanho de armazenamento é n bytes.

binary [ ( n ) ] Dados de caractere binários de comprimento variável. n pode ser um valor de 1 a

8.000. max indica o tamanho máximo de armazenamento, que é 2^31-1 bytes. O tamanho de armazenamento é o comprimento real dos dados inseridos + 2 bytes. Os dados inseridos podem ter 0 bytes de comprimento. O sinônimo ANSI SQL para varbinary é binary varying.

varbinary [ ( n | max) ]

21

Structures Query Language A linguagem padrão suportada pela maioria dos SGBDR é a

Structured Query Language (SQL) originalmente desenvolvida pela IBM e atualmente mantida pelo ANSI e pela ISSO.

(SILBERSCHATZ, 1997)

A SQL atualmente permite definir, construir e manipular um BD.(ELMASRI, 2005)

Cada fabricante de SGBDR em geral cria uma variação do SQL padrão para suportar as características particulares dos seus SGBDRs.

A linguagem SQL do SQL Server 2008 R2 é chamada Transact-SQL.

22

Desenvolvendo um BD – SQL Server

Banco de Dados Vendas

Tabelas: Cliente Pedido

ItensPedido

23

Desenvolvendo um BD – SQL Server

1) Execute o Microsoft SQL Server Management Studio Faça a conexão ao servidor usando o login e a senha

24

Desenvolvendo um BD – SQL Server

2) Criar o Banco de Dados Vendas– Clique com o botão direito do mouse sobre Databases e selecione

New Database.

25

Desenvolvendo um BD – SQL Server

– Preencha o nome do Banco de Dados - Vendas.

26

Desenvolvendo um BD – SQL Server– Após expandir Databases e Vendas, clique com o botão direito do mouse sobre Database Diagrams e selecione New Database Diagram.

27

Desenvolvendo um BD – SQL Server– Após expandir Databases e Vendas, clique com o botão direito do mouse sobre Database Diagrams e selecione New Database Diagram.

28

Clique no botão Yes.

Desenvolvendo um BD – SQL Server

29

3) Criar as Tabelas– Clique com o botão direito do mouse sobre Database Diagrams e

selecione New Table.

Desenvolvendo um BD – SQL Server– Preencha o nome da Tabela.

–Crie as Colunas da Tabela– Para definir uma chave primária clique com o botão direito do mouse sobre a coluna.

»Clique na coluna ID, tecle F4, expanda Identity Specification e selecione Yes na opção (Is Identity).

30

Desenvolvendo um BD – SQL Server

Criando a Tabela Cliente

31

Desenvolvendo um BD – SQL Server

Criando a Tabela Cliente

32

Column Name

Date Type Allow Nulls

ID Bigint

Nome Varchar(200)

Telefone Varchar(50) X

Celular Varchar(50) X

Logradouro Varchar(200)

Numero Varchar(50)

Complemento

Varchar(50) X

Cidade Varchar(50)

UF Varchar(2)

Desenvolvendo um BD – SQL Server

Criando Campo Chave da Tabela Cliente

33

Desenvolvendo um BD – SQL Server

Criando Campo Chave da Tabela Cliente - Clique na coluna ID, tecle F4, expanda Identity Specification e selecione Yes na opção (Is Identity).

34

Desenvolvendo um BD – SQL Server

Criar a Tabela Pedido

35

Column Name Date Type Allow Nulls

ID Bigint

IDCliente Bigint

Numero Bigint

Data Date

PrecoPedido Float

Criar a Chave Primária (ID)

Criar a Tabela ItensPedido

Column Name Date Type Allow Nulls

ID Bigint

IDPedido Bigint

Codigo Varcha(50)

Descrição Varchar(200)

Quantidade Smalint

PrecoUnitario Float

PrecoItemPedido float

Criar a Chave Primária (ID)

Desenvolvendo um BD – SQL Server

36

Desenvolvendo um BD – SQL Server

3) Criar os Relacionamentos– Clique na coluna ID da Cliente e arraste até a coluna IDCliente da

tabela Pedido conforme a seguir.

37

Desenvolvendo um BD – SQL Server

3) Criar os Relacionamentos– Clique no botão OK. Expanda Tables And Columns Specification para

verificar os detalhes do relacionamento e clique no botão OK.

38

Desenvolvendo um BD – SQL Server

4) Criar as Restrições–Clique com o botão direito do mouse na coluna Numero da tabela

Pedido e selecione Indexes/Keys

39

Desenvolvendo um BD – SQL Server

4) Criar as Restrições– Clique no botão Add.

40

Desenvolvendo um BD – SQL Server

4) Criar as Restrições– Expanda Columns

41

Desenvolvendo um BD – SQL Server

4) Criar as Restrições– Selecione a coluna Numero e clique no botão OK.

42

Desenvolvendo um BD – SQL Server

4) Criar as Restrições– Selecione Yes na opção Is Unique para que cada número seja único da

tabela Pedido e clique no botão Close.

43

Desenvolvendo um BD – SQL Server

5) Salvar o Banco de Dados - Vendas– Clique no ícone Save Diagram na barra de ferramentas.

44

Desenvolvendo um BD – SQL Server

5) Salvar o Banco de Dados – Vendas–Renomei para Diagram e clique o botão OK.

45

Desenvolvendo um BD – SQL Server

5) Salvar o Banco de Dados – Vendas–Clique o botão Yes.

46

Manipulação dos Dados de BD – SQL Server

Expanda VENDAS e Tables e clique com o botão direito do mouse sobre a tabela Cliente e selecione Edit Top 200 Rows, conforme a seguir.

47

Manipulação dos Dados de BD – SQL Server

Edite as colunas, exceto ID, e tecle Enter como o exemplo a seguir

48

Manipulação dos Dados de BD – SQL Server

Para executar os comandos SQL de SELECT, INSERT, UPDATE e DELETE, clique com o botão direito sobre o nome da tabela, selecione Script Table as e selecione o comando desejado, conforme o exemplo a seguir sobre a tabela Cliente.

49

Manipulação dos Dados de BD – SQL Server

Edite o comando se necessário.

50

Manipulação dos Dados de BD – SQL Server

Clique em Execute para obter o resultado.

51

Referências

• ELMASRI, R., NAVATHE, S. B., Sistemas de Banco de Dados, Pearson, 2005.

• MACKENZIE, Ducan; SHARKEY, Kent. Aprenda Visual Basic .NET em 21 dias. São Paulo: Pearson, 2003.

• MSDN. Tipos de dados (Transact-SQL). Disponível em: http://msdn.microsoft.com/pt-br/library/ms187752.aspx. Acesso em: 09 de maio de 2011.

• ROB, P.; CORONEL, C. Sistemas de Banco de Dados: Projeto, Implementação e Administração. São Paulo: Cengage Learning, 2011.

• SILBERSCHATZ, A., KORTH, H. F., SUDARSHAN, S. Sistema de Banco de Dados, Makron Books, 1997.

52

Próxima Aula

– Banco de Dados em Plataforma Microsoft .NET

53