Conceitos Iniciais
Banco de Dados: Um banco de dados é uma coleção de dados relacionados. Com dados, queremos dizer fatos conhecidos que podem ser registrados e possuem significado implícito.
Sistema gerenciador de banco de dados (SGBD): é uma coleção de programas que permite aos usuários criar e manter um banco de dados. O SGBD é um sistema de software de uso geral que facilita o processo de definição, construção, manipulação e compartilhamento de bancos de dados entre diversos usuários e aplicações.
SQL: linguagem de modelo relacional.
Minimundo: banco de dados contextualizados.
Modelo Relacional: modelo de dados que representa um banco de dados como uma coleção de relações
Principais Características do SGBD
Independência de Dados-Programas: modificações nas estruturas de armazenamento não afetam os programas.
Compartilhamento de dados e processamento de transações multiusuário: garante que cada transação seja executada corretamente ou interrompida por completo.
Abstração de dados: esconde os detalhes do armazenamento.
Múltiplas Visões: cada usuário pode enxergar uma visão diferente na base de dados.
Metadados (catálogo/dicionário de dados): é a informação descritiva do BD. Permite que o SGBD trabalhe com bases de dados diferentes.
Quando Não Usar SGBD
- Estrutura simples e bem definida
- Não há acesso de múltiplos usuários
- tempo real é rigoroso
- software genérico → de propósito geral
- capacidade de armazenamento limitado → sistemas embarcados
Ex.: Sistema de dados de avião, onde a localização, temperatura e pressão mudam constantemente
Modelos de Dados
Entidade → representa um objeto ou conceito do mundo real, como um funcionário ou um projeto do minimundo que é descrito no banco de dados.
Atributo → representa alguma propriedade de interesse que descreve melhor uma entidade, como o nome ou o salário do funcionário. → É uma coluna da tabela
Relacionamento → sempre entre duas ou mais entidades representa uma associação entre elas — por exemplo, um relacionamento trabalha_em entre um funcionário e um projeto.
Modelo Conceitual
oferecem conceitos que são próximos ao modo como muitos usuários percebem os dados
- Independe de SGBD
- DER (abordagem entidade-relacionamento)
Modelo Lógico
oferece conceitos que podem ser facilmente entendidos pelos usuários finais, mas que não está muito longe do modo como os dados são organizados e armazenados no computador.
- Depende do SGBD, tabelas
Modelo Físico
oferecem conceitos que descrevem os detalhes de como os dados são armazenados no computador, em geral, em discos magnéticos
- Armazenamento interno
Chave Primária e Estrangeira
Chave Primária (Primary Key): Valor único que identifica exclusivamente cada registro da tabela. Garante integridade. → para não permitir registros iguais
Chave Estrangeira (Foreign Key): É a chave primária de outra tabela. Serve para manter a relação entre duas tabelas.
Chave Primária Composta: duas colunas que juntas sempre serão únicas na tabela. → sua combinação não se repete na tabela
Autorrelacionamento: chave estrangeira se relacionando com a mesma tabela.
OBS: chave primária pode ser chave primária e estrangeira ao mesmo tempo
Tipos de Linguagem SQL
DDL - Data Definition Language - Linguagem de Definição de Dados Comandos que interagem com os objetos do banco de dados: CREATE, ALTER e DROP.
DML - Data Manipulation Language - Linguagem de Manipulação de Dados Comandos que interagem com os dados registrados nas tabelas: INSERT, DELETE e UPDATE.
DQL - Data Query Language - Linguagem de Consulta de dados Comandos de consulta: SELECT [Obs.: alguns autores classificam o ‘SELECT’ como da DML.]
DTL - Data Transaction Language - Linguagem de Transação de Dados Comandos para controle de transação: BEGIN TRANSACTION, COMMIT e ROLLBACK.
DCL - Data Control Language - Linguagem de Controle de Dados Comandos para controlar a segurança do banco de dados: GRANT, REVOKE e DENY.
Referências
"Sistemas de Banco de Dados", 6ª Edição. Autores: Ramez Elmasri e Shamkant Navathe
Slides da Profa. Roberta Gouveia.
0 Comentários