Last active
July 24, 2024 20:13
-
-
Save eduardolfalcao/c0abea7fcbe1090fe6d3b64a3faf89c6 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
show database; | |
create database <db_name>; | |
# create schema <db_name>; | |
use <db_name>; | |
show tables; | |
# mariadb não suporta domínios | |
# Exemplo de domínio: sexo, assumindo somente os valores F ou M | |
CREATE TABLE IF NOT EXISTS USUARIO( | |
id INT AUTO_INCREMENT PRIMARY KEY, | |
email VARCHAR(50), | |
nome VARCHAR(50) NOT NULL, | |
sobrenome VARCHAR(50) NOT NULL, | |
dt_nasc DATE NOT NULL | |
); | |
# remove a tabela | |
drop table <table_name>; | |
# cria index em coluna | |
CREATE INDEX email_index ON USUARIO(email); | |
INSERT INTO USUARIO (email, nome, sobrenome, dt_nasc) VALUES ('eduardo@dca', 'Eduardo', 'Falcao', '1989-08-04'); | |
INSERT INTO USUARIO (email, nome, sobrenome, dt_nasc) VALUES ('joao@dca', 'Joao', 'Silva', '1989-08-04'); | |
INSERT INTO USUARIO (email, nome, sobrenome, dt_nasc) VALUES ('maria@dca', 'Maria', 'Lemos', '1989-08-04'); | |
CREATE VIEW vw_usuario_email_nome AS SELECT email, nome FROM usuario; | |
CREATE TABLE log_alteracao ( | |
id INT AUTO_INCREMENT PRIMARY KEY, | |
usuario_id INT, | |
alteracao VARCHAR(255), | |
data_hora TIMESTAMP DEFAULT CURRENT_TIMESTAMP | |
); | |
DELIMITER // | |
CREATE TRIGGER trg_after_update_usuario | |
AFTER UPDATE ON usuario | |
FOR EACH ROW | |
BEGIN | |
INSERT INTO log_alteracao (usuario_id, alteracao) | |
VALUES (OLD.id, CONCAT('Atualização: Email de "', OLD.email, '" para "', NEW.email, '", Nome de "', OLD.nome, '" para "', NEW.nome, '"')); | |
END // | |
DELIMITER ; | |
UPDATE USUARIO SET email='eduardo@dcaufrn', nome='EDUARDO' WHERE id=1; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment