Implementação de SGBDs relacionais Flashcards
O que são os Sistemas Gerenciadores de Banco de Dados Relacionais (SGBDs relacionais)?
Os Sistemas Gerenciadores de Banco de Dados Relacionais (SGBDs relacionais) são softwares que organizam e manipulam dados em formato tabular, utilizando o modelo relacional de Edgar F. Codd.
Exemplos de SGBDs relacionais:
MySQL
PostgreSQL
SQL Server
Oracle Database
SQLite
A implementação de um SGBD relacional segue um conjunto de princípios básicos, como:
Normalização (eliminação de redundâncias e anomalias nos dados).
Uso de chaves primárias e estrangeiras (para garantir integridade referencial).
Linguagem SQL para manipulação de dados.
ACID (Atomicidade, Consistência, Isolamento, Durabilidade) para garantir transações confiáveis.
Exemplom de uso de um Sistemas Gerenciadores de Banco de Dados Relacionais (SGBDs relacionais)
O uso mais comum de SGBDRs é para implementar funcionalidades simples do tipo CRUD (do inglês Create, Read, Update e Delete – que significa as operações de Inserção, Leitura, Atualização e Exclusão de dados). Por exemplo, uma aplicação pode criar uma nova compra e inseri-la no banco de dados. Ela pode ler uma compra, trabalhar com seus dados e então atualizar o banco de dados com a nova informação.
Para armazenar um objeto em um banco de dados relacional precisamos adequá-lo – criar uma representação de dados do objeto em questão – pois bancos de dados relacionais apenas armazenam dados.
C ou E
C
Para recuperar o objeto, é preciso ler os dados a partir do banco de dados e então criar o objeto, operação normalmente chamada de restauração do objeto, baseado nos dados recuperados.
Como implementar um comportamento no banco de dados?
Comportamento é implementado em um banco de dados relacional através de stored procedures e/ou stored functions que podem ser invocadas internamente no banco de dados e por aplicações externas. Stored functions e procedures são operações que executam no SGBDR, a diferença entre elas é o que a operação pode retornar e se ela pode ser invocada em uma query.
O que é o controlo de concorrência e onde é implementado?
Considere um sistema de reserva de passagem aéreas. Existe um vôo com um assento e duas pessoas estão tentando reservar este assento ao mesmo tempo. Ambas as pessoas verificam o status do voo e são avisadas que o assento ainda está disponível. Ambos informam seus dados para pagamento do ticket e então clicam no botão de reserva ao mesmo tempo. O que deveria acontecer? Se o sistema está funcionando corretamente, apenas uma pessoa deveria ter acesso ao assento e a outra deveria ser informada que não existe nenhum assento disponível. Controle de concorrência é o que faz isso acontecer. Ele deve ser implementado ao longo do código fonte do objeto no banco de dados.
Integridade referencial (IR)é a garantia de que uma referência a partir de uma entidade para outra entidade é válida. Por exemplo, se um cliente referencia um endereço, então este endereço deve existir. Se o endereço é deletado, então todas as referências a ele devem também ser removidas, caso contrário o sistema não deve permitir a operação de exclusão.
C ou E
C
Database cursors, o que é?
Um database cursor é um objeto usado para percorrer os resultados de uma consulta SQL, permitindo mover para frente ou para trás no conjunto de resultados acessando um ou vários registros por vez.
Triggers, o que é?
Um trigger é um procedimento que é executado antes ou após uma ação (tal como inserção, atualização ou exclusão), e é executado em uma linha de uma tabela do banco de dados.