terça-feira, 3 de junho de 2025

UFCD 10797 - Views no SQL – Views no MySQL

 




Views no SQL – Views no MySQL

A ideia de uma view é armazenar as informações de uma consulta em SQL. Ou seja, quando utilizamos um filtro ou fazemos qualquer consulta dentro do banco de dados, geramos uma visualização temporária.

Para que essa visualização seja salva e possamos utilizá-la posteriormente, é importante salvar essa consulta dentro de uma view.

Isso é extremamente útil porque nem sempre fazemos consultas simples de apenas selecionar e visualizar uma tabela do banco de dados. Às vezes, as consultas são mais complexas e levam tempo.

Com as views, ao invés de ter que criar a consulta toda vez que for utilizá-la, você só precisa chamar a view que foi criada.

Isso nos possibilita salvar a consulta e depois acessá-la com apenas uma única linha de código, e o melhor: ainda poder trabalhar com ela normalmente se precisar expandir as análises feitas.

Criação de Views no SQL – Como Criar Visualizações no SQL

Antes de começar criando visualizações no SQL, vamos entender o que é uma visualização de fato para que facilite o seu entendimento.

Fazendo uma consulta para visualizar o resultado
Fazendo uma consulta para visualizar o resultado

Aqui nós temos uma consulta com um filtro, só que essa visualização que temos na parte inferior ela é temporária, então assim que nós utilizarmos outra consulta ela vai embora.

A ideia então é armazenar isso para que possamos utilizar posteriormente, por isso é que vamos utilizar as visualizações!

Então as views são uma possibilidade de salvar o resultado dessas consultas, além de permitir que você utilize essa visualização posteriormente.

Tipos de ações para um view
Tipos de ações para um view

Aqui nós vamos ter 3 possibilidades: criação de uma view, alteração de uma view e exclusão de uma view.

Views no SQL
Criando uma view

Agora vamos partir para a criação da view, lembrando que vamos começar com o comando CREATE VIEW e depois o nome dessa view.

Logo abaixo temos as informações que vamos armazenar nessa view, que é o filtro da tabela DimCustomer, mas pegando apenas o tipo igual a Person.

Podemos utilizá-la como se fosse uma tabela mesmo, então podemos manipular, visualizar, utilizar para cálculos…

Views no SQL
Alterando uma view

Para o segundo exemplo temos um código de CREATE com ALTER, utilizando o OR, pois assim se a view não existir ela será criada, e se ela existir vamos apenas alterá-la.

Quando precisar excluir uma view é muito simples, basta utilizar o comando DROP VIEW.

Views no SQL
Excluindo uma view

A ideia da view é facilitar o seu trabalho, assim não terá que ficar reescrevendo todos os comandos que utilizou, ainda mais se for algo mais complexo em uma base de dados maior.

Não é vantagem reescrever tudo sempre que quiser visualizar essas informações ou fazer cálculos.

Outro ponto interessante é a questão da segurança, pois uma view é apenas uma parte da tabela, ou seja, vai ter apenas as informações que foram gravadas nela, não vamos ter acesso a tudo da base de dados a partir da view.

Conclusão

Nessa aula eu te mostrei a diferença entre os objetos dentro de um banco de dados, que são as tabelas e as views.

Além disso te mostrei algumas vantagens das views que podem te ajudar muito nos seus projetos, principalmente para economizar tempo, assim como fazer a criação dessas views no SQL!

segunda-feira, 2 de junho de 2025

UFCD 10797 - Trigger

 





Trabalhando com Trigger no MySQL


Utilize Trigger para criar rotinas automáticas apenas utilizando o próprio banco de dados.

Publicado em 

Trigger ou Gatilho, é um procedimento interno do banco dados MySQL e Oracle, que possibilita criar blocos de rotinas, que são disparadas/executadas quando houver alguma tentativa de modificação em uma tabela. Normalmente utilizada para manter a integridade da regra de negócio que não pode ser quebra.

A utilização de Trigger possui uma variedade de vantagens, algumas estão listadas abaixo.

HTML5: O guia definitivo


- Regra de negócio concentrada no banco de dados.
- Processamento rápido.
- Criar blocos de rotinas que podem ser disparados antes ou depois de uma modificação.

A Trigger está presente desde a versão 5.0.2 do MySQL. Para disparar uma Trigger, basta executar alguma operação de Insert, Update ou Delete, porém as modificações podem ser realizadas em outra tabela.

Imagine que em um sistema de mercado possua duas tabelas, que são produto e pedidos, porém a tabela produto contém um campo com a quantidade mínima de estoque antes de gerar o pedido, então podemos utilizar a Trigger para fazer esta verificação, se após alguma operação na tabela produto o estoque for menor que a quantidade mínima, a Trigger realiza o cadastro de pedido na tabela pedido, informando o valor para atingir a quantidade máxima, código do produto e data de processamento. Tudo isto sem que o usuário ou vendedor perceba.

Tabelas no MySQL relacionadas
Tabelas no MySQL relacionadas

Para o exemplo deste artigo, será utilizado a estrutura de tabelas e valores a seguir.

Código 01:

CREATE TABLE aluno (
    cod INT NOT NULL AUTO_INCREMENT,
       nome VARCHAR (50) NOT NULL,
       curso INT NOT NULL,
       status INT NOT NULL,
       PRIMARY KEY(cod)
);

CREATE TABLE curso(
            cod INT NOT NULL AUTO_INCREMENT,
       descricao VARCHAR (200) NOT NULL,
       PRIMARY KEY (cod)
);



CREATE TABLE matricula(
   cod INT NOT NULL AUTO_INCREMENT,
   aluno_cod INT NOT NULL,
   curso_cod INT NOT NULL,
   PRIMARY KEY (cod)
);

INSERT INTO curso VALUES ("", "RADIOLOGIA");
INSERT INTO curso VALUES ("", "ENGENHARIA");
INSERT INTO curso VALUES ("", "ENGENHARIA DA TI");
INSERT INTO curso VALUES ("", "ADMINISTRAÇÃO");

Consulta tabelas no MySQL
Consulta tabelas no MySQL

A rega de negócio será a seguinte, quando for cadastrado um aluno em algum curso, será disparado uma Trigger que faz o cadastro na tabela matricula, informando o código do aluno e código do curso.

HTML5: O guia definitivo

A Sintaxe para criação de uma Trigger é exibida abaixo.

CREATE TRIGGER Nome_da_trigger
AFTERINSERTON Tabela_que_vai_diparar
FOR EACH ROW BEGIN
...Código...
END;

 

CREATETRIGGER: Cria o objeto Trigger.
AFTER: Depois de uma ação.
INSERT: Inserir.
ON: Tabela que fará o disparo.
FOREACHROW: Para cada linha.
BEGIN: Início
END: Fim.

Veja abaixo a tabela dos valores de execução.

OpçãoAção
AFTERDepois de executar uma ação
BEFOREAntes de executar uma ação.

Para o nosso caso, será utilizado o evento AFTER, pois, após o cadastro do aluno, a Trigger faz o cadastro automático na tabela matricula.

Podemos fazer as operações usando as ações, Insert, Update e Delete.

OpçãoAção
DELETEQuando for deletar algo na tabela.
UPDATEQuando for alterar algo na tabela.
INSERTQuando for inserir algo na tabela.

Então, criamos a nossa Trigger conforme mostra o código a seguir.

Código 02:

HTML5: O guia definitivo
SET DELIMITER $$

CREATE TRIGGER tg_matricula
AFTER INSERT ON aluno
FOR EACH ROW BEGIN
	INSERT INTO matricula VALUES ("", NEW.cod, NEW.curso); 
END;

Para que a Trigger fosse criada, foi necessário trocar o delimitador do MySQL para $$, pois como a Trigger utiliza o ;, o MySQL poderá entender como término da instrução e parar o processamento, gerando assim erros na execução.

No Insert, você deve ter notado o NEW.cod e NEW.curso, entenda sua funcionalidade e outro valor é que o OLD.

NEW: Permite retorna o novo valor que foi inserido, neste caso, retorna o código do usuário e curso que foi cadastrado.
OLD: Retorna o valor anterior do cadastro, ou seja, sem a alteração atual.

Com a Trigger criada, cadastramos um aluno, o resultado é apresentado na imagem a seguir, note que, a tabela matricula, possui o código do usuário e código curso, isto foi disparado através do Trigger.

Trigger no MySQL
Trigger no MySQL

Para exibir as Trigger criadas no banco de dados, utilizamos o código SHOW TRIGGERS.

Código 03:

SHOW TRIGGERS;

 

Consulta de Trigger no MySQL
Consulta de Trigger no MySQL

Para deletar uma Trigger, utilize o DROPTRIGGERnome_da_trigger.

Código 04:

HTML5: O guia definitivo
DROP TRIGGER tg_matricula;

Com as Trigger é possível realizar operações mais detalhadas, como utilizar variáveis para armazenar valores de uma consulta, com este valor, você utilizar o IF para verificar se o valor é válido, caso contrário aborta a operação e não executa o Insert.

Para mais informações sobre a Trigger, confira a documentação, http://dev.mysql.com/doc/refman/5.6/en/trigger-syntax.html.

Instalando o Windows Server 2012/2016/2019 Datacenter

 


Instalando o Windows Server 2016


Visão Geral: Nesse tutorial iremos ver como instalar o Windows Server 2016 recém lançado pela Microsoft em sua versão final (RTM)

 

Requisitos de Hardware:

Processador
  • processador de 64 bits 1.4 GHz
  • Compatível com conjunto de instruções x64
  • Suporta NX e DEP
  • Suporta CMPXCHG16b, LAHF / SAHF e PrefetchW
  • Suporta Segundo Nível Address Translation (EPT ou NPT)
Memória RAM

Mínimo: 512 MB sem interface gráfica ou 2GB para uso com o Desktop Experience installation (Interface gráfica)

Espaço em Disco

Mínimo: 32 GB

Placa de rede Compatível com Gigabit Ethernet

Unidade de DVD (se você pretende instalar o sistema com a mídia de DVD

VGA (1024 x 768) ou de resolução superior

Teclado e mouse (ou outro dispositivo compatível)

Acesso à Internet

 

Instalação:

 

Insira a mídia do Windows Server 2016 no servidor e inicia a máquina

 

Selecione o idioma, formato de hora e teclado e clique em Next

 

image

 

Clique em Install Now

 

image

 

Como usaremos interface gráfica selecione Windows Server 2016 Datacenter Desktop Experience e clique em Next


 


 

Aceite os termos do contrato e clique em Next

 

image

 

Selecione a instalação Custom

 

image

 

Informa o disco onde será instalado e clique em Next

 

image

 

defina a senha do usuário administrator e clique em Finish

 

image

 

Instalação concluída

 

image

 

Pressione Ctrl+Alt+Del para fazer login no servidor e insira a senha

 

image

 

image

 

Conclusão: Com esse tutorial vimos como instalar o Windows Server 2016 versão final.