Dicas para iniciantes: banco de dados

Hoje vou mostrar algumas dicas para quem está começando a trabalhar com banco de dados relacionais.

Para que serve fk (foreign key / chave estrangeira)

NÃO! Você não precisa ter FK para fazer consultas relacionadas !

ENTENDA ! de uma forma simples o comando JOIN / LEFT JOIN

😉 Gostou do vídeo, que tal me pagar um cafezinho?

☕ https://picpay.me/dane.infocotidiano​

Doar com PagSeguro: https://pag.ae/7W6uXEqB1

Obtendo informações sobre o banco MySQL / MariaDB

Você que utiliza MySQL Server ou MariaDB e precisa obter informações como: se o banco existe, se a tabela existe, se o campo existe, se a view existe ou até mesmo se a procedure existe para fazer suas atualizações em tempo de execução, este vídeo é para você !

Verificando se a base de dados (schema) pdv existe:
show databases like 'pdv';
Verificando se a tabela produto existe no banco pdv:
SELECT table_name
FROM information_schema.tables
WHERE table_schema = 'pdv'
AND TABLE_TYPE = 'BASE TABLE'
AND table_name = 'produto';
Verificando se o campo DescProd existe na tabela produto no banco PDV
select * from information_schema.COLUMNS 
where TABLE_SCHEMA = 'pdv'
and TABLE_NAME  = 'produto'
and COLUMN_NAME  = 'DescProd'
Verificando se a view vw_venda existe na base pdv:
SELECT table_name
FROM information_schema.tables
WHERE table_schema = 'pdv'
AND TABLE_TYPE = ''
AND table_name = 'vw_venda';
Verificando se a procedure pr_ucAcesso existe na base pdv:
SHOW PROCEDURE STATUS 
where db = 'pdv' and name = 'pr_ucAcesso'

Instalar Microsoft SQL Server em 7 Minutos no Ubuntu e derivados (mint, popos, etc)

Neste vídeo vou mostrar como instalar MSSQL Server no Linux Ubuntu e derivados (Mint, PopOS, etc).

😉 Gostou do vídeo, que tal me DOAR um cafezinho?

☕ https://picpay.me/dane.infocotidiano

Comandos:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list)"
sudo apt-get update
sudo apt-get install -y mssql-server
sudo /opt/mssql/bin/mssql-conf setup
systemctl status mssql-server --no-pager

Instalar MySQL em 10 Minutos no Ubuntu e derivados (mint, popos, etc)

Neste vídeo vou mostrar como instalar MySQL Server no Linux Ubuntu e derivados (Mint, PopOS, etc), configurar usuários e o MariaDB para ser acessado de outros computadores (na rede).

😉 Gostou do vídeo, que tal me DOAR um cafezinho?

☕ https://picpay.me/dane.infocotidiano

sudo apt update
sudo apt install mysql-server
sudo mysql_secure_installation
sudo mysql
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'Info@1234';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;

CREATE USER 'suporte'@'%' IDENTIFIED BY 'Info@1234';
GRANT ALL PRIVILEGES ON *.* TO 'suporte'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
para liberar acesso de outros computadores, mude o bind-address
para 0.0.0.0
skip-name-resolve (conflitos dns /request de ip)

sudo service mysql restart

Restaurar banco MySQL / MariaDB via .frm e .idb

Neste vídeo mostro como restaurar o banco mysql ou mariadb utilizando seus arquivos DATA (.frm e .idb)

😉 Gostou do vídeo, que tal me DOAR um cafezinho?

☕ https://picpay.me/dane.infocotidiano

Imagine que seu HD ou SSD apresentou uma falha no sistema e não deu tempo de você fazer o backup (dump) e precise recuperar o banco de dados através da pasta DATA; Este vídeo pode te ajudar em situações como esta.

Instalar MariaDB em 10 Minutos no Ubuntu e derivados (mint, popos, etc)

Neste vídeo vou mostrar como instalar MariaDB no Linux Ubuntu e derivados (Mint, PopOS, etc), configurar usuários e o MariaDB para ser acessado de outros computadores (na rede).

Comandos:

sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation
sudo mariadb ou sudo mysql -uroot -pInfo@1234
GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'Info@1234' WITH GRANT OPTION;
GRANT ALL ON *.* TO 'suporte'@'%' IDENTIFIED BY 'Info@1234' WITH GRANT OPTION;
FLUSH PRIVILEGES;
sudo service mysql restart
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
para liberar acesso de outros computadores, mude o bind-address
para 0.0.0.0
skip-name-resolve (conflitos dns /request de ip)

Veja o Vídeo:

Backup e Restore MySql / MariaDB

Vou mostrar para vocẽ como fazer backup de um banco de dados MySQL ou MariaDB utilizando três formas diferentes (dump Windows, Dbeaver, HeidiSql e dump LInux na Rede)

😉 Gostou do vídeo, que tal me DOAR um cafezinho?

☕ https://picpay.me/dane.infocotidiano

PostgreSQL, como agregar linhas em colunas

Neste vídeo vou mostrar como fazer uma consulta utilizando duas tabelas: Produtos e Grade de Cor e tamanho.

Vou mostrar como exibir os registros da forma tradicional utilizando o join e também de uma forma agregada, ou seja, transformando registros em linhas.

select p.codprod , p.descprod,
array_to_string( array_agg(pg.cor||' '||pg.tamanho) ,' | ') Cores_e_Tamanhos
from produto p
left join produto_grade pg on pg.produto = p.codprod
where p.codprod  > 2447
group by codprod