36

Principal: construir uma base de dados para produção de · Apresentação postgresql - download e instalação - ferramenta de adminstração - pgAdmin ... Oracle – MySQL –

Embed Size (px)

Citation preview

• Principal: construir uma base de dados para produção de informações sobre internações hospitalares;

• Específicos:

- criar um banco de dados para armazenar registros sobre internações hospitalares;

- produzir consultas sobre internações hospitalares;

Dados a serem armazenados:

Pacientes – nome, data de nascimento, gênero, logradouro, bairro, município, Unidade da Federação (UF) e CEP;

Internações: data da internação, data da alta, diagnóstico principal, diagnóstico secundário e desfecho;

Hospitais: código (CNES), razão social, CNPJ, logradouro, bairro, município, Unidade da Federação (UF) e CEP;

• Consultas

• Pacientes, segundo: gênero, idade e município;

• Internações, segundo: diagnóstico principal e hospital;

• Tempo de permanência, segundo: diagnóstico de internação e hospital;

• Desfecho, segundo: diagnóstico de internação, hospital;

Introdução a bancos de dados e SQL- sistemas de gerenciamento de bancos de dados;- modelo entidade/relacionamento (ER)- chaves: primária e secundária;- SQL

- sintaxe;- palavras-chave;- operadores

Apresentação postgresql- download e instalação- ferramenta de adminstração - pgAdmin

• SQL – Definição de dados

- criação de tabelas- alterações na estrutura de uma tabela- exclusão de tabelas

• SQL – Manipulação de dados

- inserção de registros- alterações em dados registrados- exclusão de registros

• SQL – Consulta aos dados

- seleção de linhas em uma tabela;- junções- visões

• SQL – Funções

- cadeias de caracteres- numéricas- manipulação de datas

• Rotinas de segurança

- cópia de segurança- restauração de base de dados

• Migração de dados

- importação de dados a partir de outros formatos de arquivos- exportação de dados para outros formatos de arquivos

• Processadores de textos;

• Planilhas eletrônicas;

• DBF

dBase;

VantagensFacilidade criação e manutenção dados;Simplicidade uso dos comandos (dBase);

DesvantagensMonousuário;Perda de dados – corrupção dos arquivos;Ausência de mecanismos de consistência dos dados;Ausência de mecanismos para segurança dos dados;

• Banco de dados = conjunto integrado de registros formatados segundo regras específicas e fixas (Sanches et. al, 2002; Taylor, 2003);

• Registro = representação de algum objeto físico ou conceitual (Taylor, 2003);

• SGBD = conjunto de programas para definir e manter dados, possibilitando acesso, modificação e extração de dados (Taylor, 2003; Kriegel & Trukhnov, 2008);

• Bancos de dados disponíveis:

Oracle – MySQL – SQL Server Postgresql – DB2 – Access – Firebird

Tabela = Tabelas são estruturas bi-dimensionais identificadas por um nome e formadas por linhas e colunas para o armazenamento de registros relativos a objetos do mesmo tipo;

* no modelo em construção, os dados dos pacientes e dos hospitais devem ser armazenados em tabelas diferentes;

• Colunas = representam os atributos de um objeto e, como as tabelas, são identificadas por um nome;

• Tipos de colunas:

Cadeia de caractereschar;varchar;

Númerointeger/int;decimal/numeric;

Datasdate;timestamp;

Objetos/entidades diferentes na mesma tabela;

Redundância;

Inconsistência de dados;

Criação do banco de dados – Eliminando eventuais problemas

Criação do banco de dados – Acrescentando novas tabelas

* Outras tabelas poderiam ser acrescentadas. Por exemplo, para endereços dos pacientes

Relacionamento 1 para 1 (1:1) - uma linha da tabela A relaciona-se com apenas uma linha da tabela B;

Relacionamento 1 para muitos (1:N) – uma linha da tabela A relaciona-se com várias linhas da tabela B;

Relacionamento muitos para muitos (M:N) – várias linhas da tabela A relacionam-se com várias linhas da tabela B;

• Chave-primária (primary key) – identifica univocamente um objeto em uma tabela;

• Pode ser gerada por meio de:

uma coluna – simples;mais de uma coluna – composta;

. A coluna para chave primária pode ser:

um identificador natural do objeto - exemplo: cnes, para hospitais; um identificador alternativo (surrogate key), cujo valor é gerado automaticamente;

Chave estrangeira (foreign key – fk) - Coluna de uma tabela que aponta para a chave primária de outra tabela;

unique – indica que a coluna receberá um determinado valor apenas uma vez;

check especifica uma que condição que a coluna precisa atender para salvar um registro;

exemplo: genero= 'M' ou 'F';

not null – torna obrigatório o preenchimento da coluna;

* Uma chave primária possui as restrições: unique e not null;

Criação do banco de dados – Modelo final – Relacionamentos e uso de chave alternativa como pk

SQL (Structure Query Language) - linguagem para a definição e manutenção das estruturas das tabelas, bem como, a entrada, atualização e extração de dados;

Baseada em declarações para definição e manipulação dos dados; Declaração = sequência de comandos; Comando = uma sequência de termos; Termo = palavra chave, um identificador, um identificador entre aspas, um literal (ou constante), ou

um caractere especial;

Exemplo: SELECT * FROM minha_tabela;

Os termos SELECT e FROM são palavras-chave;

O termo minha_tabela é um identificador relativo ao nome da tabela;

Palavra chave - palavras que possuem um significado definido na linguagem SQL;

Exemplos: SELECT, FROM, UPDATE;

- Identificadores – identificam nomes de tabelas, colunas e outros objetosExemplos: pacientes, hospitais

- Palavras chave e identificadores:

iniciar com: uma letra (a-z e ou letra não latinas), ou o caractere sublinhado (_);

seguida de: letras, sublinhados, dígitos (0-9)

• A linguagem SQL não diferencia letras maiúsculas e minúsculas nas palavras chave e nos identificadores, a não ser que os identificadores sejam delimitados por aspas (")

Exemplo: SELECT nome FROM pacientes;

select NOME from PACIENTES;

- Palavras chave e identificadores:

iniciar com: uma letra (a-z e ou letra não latinas), ou o caractere sublinhado (_);

seguida de: sublinhados, dígitos (0-9)

* Recomendação comunidade postgresql:

- Evitar colocar aspas no identificador ao criar tabelas ;- Utilizar somente caracteres minúsculos em identificadores;

Constantes - seqüência arbitrária de caracteres envolta por apóstrofos (')

Exemplo: ‘Maria’;

- Constantes – numéricas

Exemplos: 10

10.5

Operadores:

Lógicos : AND, OR e NOT;

Comparação: = ,< , <=, >, >=, <> ou != (diferente)

Matemáticos: +, -, *, /, % (módulo – resto), ^ (exponenciação), |/ (raiz quadrada), @ (absoluto);

Características:

- Livre;

- Open Source;

- Multiplataforma;

- Tamanho Máximo do Banco de Dados – Ilimitado;

- Tamanho máximo de uma Tabela - 32 Tb (terabyte);

- Tamanho Máximo de uma Linha - 1.6 Tb (terabyte);

- Tamanho Máximo de um Campo - 1 Gb (gigabyte);

- Máximo de Linhas por Tabela – Ilimitado;

- Máximo de Colunas por Tabela - 250–1600;