0% acharam este documento útil (0 voto)
25 visualizações15 páginas

Fundamentos de SGBD e Transações

O documento aborda conceitos fundamentais sobre Sistemas Gerenciadores de Banco de Dados (SGBD), incluindo definições, funções, transações, views, triggers e considerações importantes para o estudo. Ele enfatiza a importância de entender as propriedades e operações dos SGBDs, como a segurança e gerenciamento de dados. Além disso, o texto sugere que o estudo das questões relacionadas ao tema é essencial para o aprendizado eficaz.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
25 visualizações15 páginas

Fundamentos de SGBD e Transações

O documento aborda conceitos fundamentais sobre Sistemas Gerenciadores de Banco de Dados (SGBD), incluindo definições, funções, transações, views, triggers e considerações importantes para o estudo. Ele enfatiza a importância de entender as propriedades e operações dos SGBDs, como a segurança e gerenciamento de dados. Além disso, o texto sugere que o estudo das questões relacionadas ao tema é essencial para o aprendizado eficaz.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.

125-98

[Escolha a data]

[Digite o
título do [Ano
documento
]
]
[Digite aqui o resumo do documento. Em geral, o resumo é uma [Digite o
breve descrição do conteúdo do documento. Digite aqui o resumo
do documento. Em geral, o resumo é uma breve descrição do subtítulo do
conteúdo do documento.] documento]
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

SUMÁRIO

Sistema Gerenciador de Banco de Dados (SGBD) - Definições e Propriedades ................................. 02

Esquema de Banco de Dados ............................................................................................................. 04

Transações ......................................................................................................................................... 05

View (Visão) ........................................................................................................................................ 07

Triggers ............................................................................................................................................... 08

Conceitos Importantes ....................................................................................................................... 09

Considerações Finais ......................................................................................................................... 11

Caderno de Questões do TEC .............................................................................................................. 14

CONSIDERAÇÕES INICIAIS
Pessoal, é de extrema importância o complemento dos estudos deste material por meio dos estudos das
questões a fim de que possamos conhecer as predileções do examinador e suprir nossa lacuna de
conhecimento.

Lembrando que estudar as questões é diferente de fazer as questões.

 Estudar as questões é aprender por meio delas [lendo os comentários dos professores e alunos no fórum].
 Fazer questões é testar seu conhecimento a fim de realizar um diagnóstico de desempenho.

Bons estudos!

@RADEGONDESS 1
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

SISTEMA GERENCIADOR DE BANCO DE DADOS

 É um programa (software) que permite que usuários manipulem uma base de dados.
 Existem diversos SGBDs no mercado.
 Exemplos de SGBD: IPC
 SQLServer;
A criação de usuários em um SGBD está associada a uma role.
 Oracle;
Role é um papel (ex: cliente) definido a um usuário do BD.
 DB2;
 MySQL; Exemplo: O usuário que possui uma “role” de cliente não terá o
mesmo acesso ao BD que o usuário que possui uma “role” de
 Firebird;
funcionário.
 PostgreSQL.
Cada usuário pode ser associado a mais de uma role. (ex: você
pode ser “funcionário” e “administrador do BD”)

FUNÇÃO DE UM SGBD

A função de um SGBD é estabelecer regras que definem quais usuários que podem ter acesso à base
de dados e, dentro dos usuários autorizados, a que dados podem acessar e que tipos de operações
podem efetuar (ler, adicionar, atualizar, apagar).

As funções de um SGBD incluem: [Todas as definições abaixo foram retiradas diretamente das questões]

 Apresentar e transformar os dados;


 Gerenciar o dicionário de dados;
 Gerenciar o armazenamento de dados;
 Gerenciar a segurança dos dados;
 Gerenciar o backup e a recuperação;
 Gerenciar as transações e a integridade dos dados;
 Gerenciar o acesso ao BD [controle de acesso multiusuário];
 Permitir retornar os dados para um estado íntegro após uma falha;
 Linguagens de acesso ao banco de dados e interfaces de programação de aplicativo;
 Prover interfaces de comunicação do banco de dados;
 Realizar o controle da redundância dos dados [isso impede a inconsistência entre os arquivos do BD];
 Reduzir o tempo de desenvolvimento de uma aplicação, uma vez que não é necessário escrever o
código para acessar os dados.

@RADEGONDESS 2
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

Não precisamos decorar todas essas funções de um SGBD, mas é bom termos uma noção delas, pois as
bancas gostam de cobrá-las.

OBSERVAÇÕES

O balanceamento de carga pode ser feito por meio de appliances (hardware que
01
implementa funcionalidades específicas na rede) ou por software.

A confiabilidade (reliability) refere-se à propriedade de um sistema estar


02
acessível e operacional quando necessário e retornar os resultados esperados.

A cláusula “ON DELETE CASCADE” aplica-se, usualmente, à especificação de


03
chaves estrangeiras.

A estratégia mais comum dos gerenciadores de bancos na lida com valores nulos
04
é adotar uma lógica de três valores (verdadeiro, falso, desconhecido).

Em um SGBD, para agrupar os dados em unidades lógicas de armazenamento,


05 permitindo a definição da localização física dos arquivos correspondentes no
disco, deve-se definir TABLESPACES.

Na instalação de gerenciadores de bancos de dados e na criação de certos


06 objetos nos bancos, “COLLATIONS” definem as regras de comparação e
ordenação entre caracteres textuais.

@RADEGONDESS 3
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

ESQUEMA DE BANCO DE DADOS

 É uma representação visual do Banco de Dados.


 Fazendo uma analogia com o mundo real, é como se fosse a planta de um imóvel.
 É a descrição das regras e objetos de um banco de dados.
 O esquema definirá nomes das colunas, seus tipos de dados e restrições de integridade.
 Exemplo:

EXPLICANDO MELHOR

Normalmente, um designer de banco de dados cria um esquema (schema) de


banco de dados para ajudar os programadores cujo software irá interagir com
o banco de dados. O processo de criação de um esquema é chamado
modelagem de dados. Veremos a modelagem no próximo resumo.

@RADEGONDESS 4
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

TRANSAÇÕES DE BANCO DE DADOS

 São processos que incluem um ou mais acessos ao BD (ex: inserir, excluir, atualizar dados).
 É uma sequência de instruções de consulta ou atualização no BD.
 Essas instruções são realizadas por meio de uma linguagem estruturada chamada SQL.
 SQL é uma linguagem que possui um conjunto de comandos. Entre eles podemos destacar o TCL.

Comandos TCL (Transaction Control Language)

1) BEGIN - utilizado para iniciar transações no BD.


2) COMMIT - utilizado para confirmar (salvar permanentemente) uma transação no SGBD.
3) ROLLBACK – restaura o BD para o último COMMIT ou ROLLBACK.
4) SAVEPOINT - criação de pontos para o controle das transações.

O comando Rollback é para desfazer as operações realizadas (não confirmadas) até o último comando
Commit.

A sintaxe básica, em SQL, de uma transação é:

BEGIN TRANSACTION Onde:


BEGIN TRANSACTION: Tag inicial para o inicio de uma transação.

[Corpo do comando] Corpo de comando: Conjunto de comando a ser executado dentro


de uma transação.

COMMIT ou ROLLBACK COMMIT ou ROLLBACK: Comandos que finalizam a transação


onde o ‘commit’ confirma o conjunto de comandos e o ‘rollback’
desfaz todo o processo executado pelo corpo de comandos caso
tenha ocorrindo algum evento contrário ao desejado.

Propriedades das Transações [CIDA]:


1. [C]onsistência.
 Uma transação deve levar o BD de um estado consistente para outro também consistente.
2. [I]solamento.
 Garante que as transações não sejam afetadas pelo funcionamento umas das outras.
3. [D]urabilidade.
 Os efeitos de uma transação devem persistir mesmo em casos de quedas de energia ou erros.
4. [A]tomicidade.
 A transação deve ser realizada em sua totalidade ou não deve ser realizada de forma alguma.

@RADEGONDESS 5
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

OBSERVAÇÕES

Para garantir a consistência dos dados e o isolamento das transações, os SGBDs


contam com mecanismos que garantem que as transações sejam executadas
de forma serial, podendo bloquear todas as tabelas, apenas a tabela afetada ou
01
apenas os dados que estão sendo manipulados. Isso impede, por exemplo, que
dois usuários comprem, ao mesmo tempo, um último produto que esteja
disponível no estoque.

As transações são programas em execução que formam unidades lógicas de


02
trabalho executando diversas operações no BD.

Os protocolos de bloqueio em um banco de dados podem bloquear todas as


03 tabelas, apenas a tabela afetada ou apenas os dados que são manipulados
durante a transação.

O algoritmo usualmente empregado na execução de transações distribuídas,


04
visando à manutenção das suas propriedades é o Two-phase commit.

Em relação ao protocolo Two-phase commit, se o nó coordenador da transação


05 falhar, os participantes podem não receber a decisão final para
executar commit ou rollback e, portanto, ficarem bloqueados.

Em sistemas não distribuídos, a propriedade “durabilidade” é usualmente


06
implementada por meio de arquivos de log que provêm redundância.

A técnica que é frequentemente utilizada pelos gerenciadores de bancos de


07 dados para a garantia da propriedade de isolamento das transações é a Two-
phase lock.

A propriedade de isolamento é flexibilizada quando ocorre uma Dirty Ready


08
(leitura suja).

@RADEGONDESS 6
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

VIEW (VISÃO)

 É considerada uma tabela virtual (não existe em forma física).


 Exemplo: Imagine as duas tabelas abaixo.

Agora considere que um determinado usuário precisa de uma lista atualizada de Funcionários e seus
respectivos departamentos, mas, por questões de segurança, não pode ser fornecido a este usuário
informações de CPF, E-mail e Salário dos funcionários. A melhor forma para se fazer isso é criar uma
VIEW onde essas informações não apareçam e fornecer ao usuário acesso apenas a essa VIEW. Ou seja,
o usuário só teria acesso à visão conforme a imagem abaixo.

OBSERVAÇÕES

A view não permite consultas ao BD de forma mais rápida quando comparada


01
à utilização de índices.

Quando uma view é criada, apenas o usuário que criou recebe permissão para
02 acessar seus dados. Posteriormente, é possível atribuir permissão de acesso a
outros usuários.

03 Visões fazem referência a tabelas, sem armazenar nenhuma linha.

Visões complexas podem conter funções de agregação (AVG, COUNT, MAX) nas
04
consultas SQL.

@RADEGONDESS 7
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

MATERIALIZED VIEW (VISÃO MATERIALIZADA)

 É uma view, porém o que é armazenado não é a consulta e sim o resultado dela.
 Por isso dizemos que é uma tabela real (física) no Banco de Dados.
 Exemplo:
 Se a view “V_FUNCIONARIO_DEPARTAMENTO” do exemplo acima for materializada,
sempre que a tabela departamento ou a tabela “funcionário” receber uma alteração, a
"consulta da view" também será executada e o resultado será armazenado.

DESPENCA

A diferença entre materialized view e view comum em um BD é o fato de que


a primeira é armazenada em cache como uma tabela física, enquanto a segunda
existe apenas virtualmente.

TRIGGERS

 É um procedimento armazenado no BD que é acionado automaticamente.


 É uma instrução que o SGBD executa automaticamente como resultado de um evento sempre
que houver uma tentativa de modificar os dados de uma tabela que é protegida.
 Usa-se uma sintaxe (código) SQL específica para armazenar esse procedimento no BD.
 Exemplo de aplicabilidade:
 Um acionador (gatilho) pode ser chamado quando uma linha é inserida em uma tabela especificada.
 Um acionador pode ser chamado quando determinadas colunas da tabela estão sendo atualizadas.

ATENÇÃO!

Existem duas classes de TRIGGERS:

1. TRIGGERS DDL (Data Definition Language)


2. TRIGGERS DML (Data Modification Language) [tem + 2 tipos]
 FOR (AFTER) [são executados após o término da instrução de disparo]
 INSTEAD OF [esse tipo de TRIGGER substitui a instrução de disparo]

@RADEGONDESS 8
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

(FGV – TCE AM 2021) Maria gerencia um banco de dados SQL Server, e precisa criar um
mecanismo que monitore todas as alterações ocorridas na estrutura das tabelas,
especialmente os efeitos dos comandos CREATE, ALTER e DROP. A estratégia mais
adequada para detectar comandos dessa natureza passa pela criação e uso de:
e) Triggers. [Gabarito]

CONCEITOS IMPORTANTES
Nesse tópico do resumo vamos colocar aqueles conceitos que já apareceram em provas, ou seja, que
possuem grandes chances de aparecerem novamente. Logo, faz-se necessário uma leitura pragmática,
como se fosse “lei seca”. Essa leitura deve ser repetida o máximo de vezes até o dia da prova.

TOME NOTA!

Em um sistema gerenciador de banco de dados, as restrições de integridade são


01
utilizadas para proteger contra danos acidentais em banco de dados.

Os diferentes Sistemas Gerenciadores de Bancos de Dados Relacionais (SGBDRs)


concorrem entre si, disponibilizando os melhores recursos, portabilidade,
02
segurança e alta disponibilidade. Este último conceito, alta disponibilidade, tem a
ver com CLUSTER.

Cluster é um conjunto de computadores interligados entre si que tem como


finalidade melhorar o seu desempenho na realização das tarefas. Ele está
diretamente relacionado ao recurso de alta disponibilidade, pois promove a
03
distribuição dos seus serviços e a disponibilidade de maneira interrupta,
garantindo que o sistema permaneça disponível durante o maior tempo possível no
decorrer da execução de serviços críticos.

Um sistema de banco de dados geograficamente distribuído que, em cada um


deles, são replicadas as mesmas informações, possui a finalidade de obter o melhor
desempenho no acesso. Todavia, isso gera um problema de redundância. Uma das
04
formas de cuidar desse aspecto é estabelecer redundância controlada, em que o
SGBD tem conhecimento da múltipla representação da informação e garante a
sincronização entre as diversas representações.

05 As boas práticas em Sistemas Gerenciadores de Bancos de Dados Relacionais


(SGBDRs) reforçam que todas as redundâncias não controladas (não planejadas)

@RADEGONDESS 9
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

devem ser minimizadas ou, se possível, eliminadas. Ou seja, as redundâncias


produzidas por falta de projeto lógico de banco de dados devem ser minimizadas
ou eliminadas, enquanto as redundâncias controladas são aceitas e, muitas vezes,
constituem a política de replicação de dados. A grande vantagem da replicação é a
maior disponibilidade dos dados.

A replicação de dados representa uma melhor disponibilidade do banco de dados,


06 pelo fato de haver réplicas disponíveis na eventualidade da ocorrência de falhas no
sistema.

A segurança física de um banco de dados representa um aspecto de grande


importância na proteção dos dados. O controle da segurança física de bancos de
07
dados trata de medidas de proteção contra acesso físico não autorizado aos
equipamentos que provêm acesso ao banco de dados.

Em um banco de dados relacional, a cada perfil de usuários podem ser atribuídos


08
conjuntos de privilégios distintos.

Em um SGBDR, a inserção, a atualização e a eliminação dos dados é de alto nível,


ou seja, a capacidade de manipular a relação base ou relações derivadas como um
09
operador único é aplicável não somente à recuperação de dados, mas também à
inserção, alteração e eliminação de dados.

@RADEGONDESS 10
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

CONSIDERAÇÕES FINAIS
Um aviso que gostaríamos de ressaltar antes de entrarmos no estudo das questões é o seguinte:

O examinador pode cobrar qualquer coisa, inclusive um conceito novo que viu em algum site do
governo. É um absurdo, nós sabemos, mas são as regras do jogo. É por isso que não existe um material
teórico capaz de suprir todas as lacunas.

Nesse sentido, um resumo com foco nos detalhes explorados pela banca pode ser o diferencial na sua
preparação, visto que ele possui como finalidades principais:
 Otimizar seu tempo.
 Servir de gatilho (start) para resolução de questões.
 Melhorar seu desempenho nas questões.
 Recuperar rapidamente aqueles conceitos mais relevantes que foram esquecidos,
principalmente se estivermos em fase de pós-edital.

ATENÇÃO!
 Não estamos falando de qualquer resumo, mas sim um resumo focado nas questões da sua
banca.

Ao final de cada resumo deixaremos um link com uma bateria de questões separadas por assunto a fim
de que você possa se familiarizar com a forma de abordagem do conteúdo pelas bancas, bem como
diagnosticar seus pontos fracos. Porém, antes disso, você precisa conhecer algumas funcionalidades da
plataforma do TEC que serão cruciais na sua preparação ao longo do tempo.

Se você já se considera um concurseiro intermediário/avançado, então é importante que você comece a


diagnosticar seu desempenho por meio dos cadernos de questões separados por assunto. Nesse caso, a
plataforma do TEC já nos disponibiliza esse diagnóstico, vejamos um exemplo:

Ao observarmos a imagem acima, notamos que o caderno “AUD 08” possui 24% de erros. Portanto,
devemos atacar esses erros com uma ênfase maior, ou seja, vamos montar um caderno somente com
essas questões a fim de que possamos revisá-las com uma frequência maior que as demais. Essa é a
ideia.

Por isso a importância de termos cadernos de questões separados por assunto. É aqui que conseguimos
realizar o diagnóstico dos nossos pontos fracos para posteriormente atacá-los por meio do:
 Caderno com as questões que errou; ou
 Caderno com as questões que você marcou como “favorita”.

@RADEGONDESS 11
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

Um desses dois tipos de cadernos deverá ser criado por você futuramente.

É nesse momento que percebemos como a plataforma do TEC facilita a nossa vida, pois com apenas
alguns cliques do mouse conseguimos montar esses cadernos. Vejamos o passo a passo:
1º) Abra seu caderno de questões;
2º) Selecione a aba “Estatísticas”; e
3º) Clique em:
 “Gerar caderno com as questões que errou”; ou
 “Gerar caderno com as questões favoritas”.

A escolha de qual caderno criar posteriormente fica por sua conta.

Contudo, recomendamos que crie o caderno com as questões “favoritas”, mas para isso você deve
“favoritar” todas as questões que errou e as que acertou com dúvidas.

E como devemos “favoritar” as questões?


Simples, basta clicar na estrelinha que fica ao lado da questão e salvar em uma pasta.

@RADEGONDESS 12
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

Por fim, vale frisar novamente que se você é um concurseiro iniciante, então não se preocupe com seu
desempenho nas questões, pois nesse momento inicial o que devemos nos preocupar é em fechar as
lacunas de conhecimento do nosso estudo teórico e isso nós só conseguimos por meio do estudo dos
comentários das questões. Por isso é muito importante que nos atentemos aos comentários dos
professores, bem como dos nossos colegas no fórum das questões. Quando você estiver realizando uma
segunda passada na matéria, começará a compreender melhor os conceitos e naturalmente seu
desempenho também vai melhorar. Acredite!

Um forte abraço e até a próxima!

@RADEGONDESS 13
Licensed to tamyres barbosa de freitas - vitorbbb6@[Link] - 075.412.125-98

RESUMO 02

CADERNOS DE QUESTÕES

Não deixe de complementar seus estudos por meio das questões.

TEORIA QUESTÕES

LACUNA DE
CONHECIMENTO

AVISOS:

 Se você possui assinatura em algum site de questões, monte seu caderno com os assuntos
estudados neste PDF.

 Se você possui a assinatura do TEC CONCURSOS, escolha a banca do seu concurso e clique no
link abaixo para abrir o caderno de questões do assunto estudado.

CADERNOS DE QUESTÕES DO ASSUNTO ESTUDADO


LINKS BANCA

[Link] CEBRASPE

[Link] FCC

[Link] FGV

[Link] VUNESP

@RADEGONDESS 14

Você também pode gostar