O que é um Banco de Dados Relacional
Banco de Dados Relacional
Um Banco de Dados (BD) é uma coleção organizada de dados. Esses dados são organizados de modo a modelar aspectos do mundo real, para que seja possível efetuar processamento que gere informações relevantes para os usuários a partir desses dados.
Existem vários modelos de bancos de dados, desenvolvidos ao longo do tempo, e o mais utilizado atualmente é o Modelo Relacional, que apresentamos nesta lição.
Os princípios do modelo relacional foram esboçados pelo matemático britânico E. F. Codd (na IBM) em um artigo publicado em junho de 1970, intitulado “A Relational Model of Data for Large Shared Data Banks“, no qual o Dr. Codd propôs o modelo relacional para sistemas de bancos de dados.
Antes disso eram usados outros modelos como o modelo de dados hierárquico e o modelo em rede.
No modelo relacional os dados são organizados em coleções de tabelas bidimensionais. Essas tabelas são também chamadas de “Relações”.
Desta forma, uma Relação é uma forma de se organizar os dados em linhas e colunas.
O modelo relacional é baseado em lógica e na teoria de conjuntos da matemática.
Composição do Modelo Relacional
O modelo relacional é composto, basicamente, pelos seguintes elementos:
- Coleções de objetos ou relações que armazenam os dados
- Um conjunto de operadores que agem nas relações, produzindo outras relações
- Integridade de dados, para precisão e consistência.
Banco de Dados Relacional
Um Banco de dados relacional é uma coleção de relações, que são tabelas bidimensionais, onde os dados são armazenados.
Como exemplo, podemos querer armazenar dados sobre os clientes de uma loja. Para isso, criamos tabelas para guardar diferentes conjuntos de dados relacionados a esses clientes, como dados pessoais, dados de compras, crédito, e outras. Cada uma dessas tabelas é uma relação do banco.
Obs.: Não confunda o termo Relação com Relacionamento, que também faz parte do modelo relacional, porém são conceitos distintos e que serão explicados em detalhes neste e nos próximos artigos.
Componentes de um Banco de Dados Relacional
Diversos tipos de objetos fazem parte de um banco de dados relacional. Listamos os mais importantes a seguir:
- Tabela: estrutura básica de armazenamento no SGBDR. Armazena todos os dados necessários sobre algo do mundo real, como clientes, pedidos ou produtos. também chamada de Relação. Um banco de dados relacional pode conter uma ou mais Tabelas
- Tupla: ou Linha / Registro, representa todos os dados requeridos por uma determinada ocorrência de entidade em particular. Por exemplo, os dados de um cliente específico. Cada linha em uma tabela deve ser identificada por uma chave primária, de modo a não haver duplicação de registros.
- Coluna ou Campo: Unidade que armazena um tipo específico de dado (valor) – ou não armazena nada, com valor nulo. Esta é uma coluna não-chave, significando que seu valor pode se repetir em outras linhas da tabela.
- Relacionamento: Associação entre as entidades (tabelas), conectadas por chaves primárias e chaves estrangeiras.
- Chave Primária (Primary Key / PK) :coluna (atributo) que identifica um registro de forma exclusiva na tabela. Por exemplo, o CPF de um cliente, contendo um valor que não se repete na relação.
- Chave Estrangeira (Foreign Key / FK): coluna que define como as tabelas se relacionam umas com as outras. Uma FK se refere a uma PK ou a uma chave única em outra tabela (ou na mesma tabela!). Por exemplo, na tabela de pedidos podemos ter uma chave estrangeira efetuando o relacionamento com a chave primária na tabela de clientes.
- Restrições (Constraints): Propriedades específicas de determinadas colunas de uma relação, como por exemplo se a coluna pode aceitar valores nulos ou não.
- Outros: Índices, Stored Procedures, Triggers, etc.
Nas próximas lições vamos explorar os conceitos de banco de dados relacional apresentados de forma aprofundada, além de introduzir o processo de Modelagem de Dados.
Boa noite. Tava querendo aprender PostgreSQL e php, aqui no site tem algum conteúdo para o assunto? E caso não tenha, sabe algum site para aprender sobre? Tenho uma noção de MySQL, mas queria treinar com o postgresql para um concurso q vou fazer e fiquei um tempo sem praticar. Desde já agradeço.
Boa tarde, estou assistindo os vídeos no YouTube de modelagem de banco de dados, havia pedido para você os slides dos mesmos, sabe me informar se este conteúdo está todo aqui?
Aos poucos estou colocando todo o conteúdo de modelagem de dados, espero ter tudo publicado em breve.