MySQL
O mais popular
BD open source
Conceitos Básicos
● Banco de dados é um conjunto de tabelas onde são
armazenados informações .
● Um banco de dados e composto de uma ou mais
tabelas. As tabelas são divididas em linhas e colunas.
● Cada uma das linhas da tabelas é chamada de registro.
Cada coluna é chamada campo.
● Uma tabela os campos pode receber diferentes tipos de
valores : numeros, textos, datas, arquivos e etc.
Tipos de dados suportados
● Numéricos - inteiros( INTEGER), Float e Double
● Strings - um caracter (CHAR), varios caracteres
(VARCHAR) ou uma sequencias muito grande (TEXT)
● Valores boleanos - BOLLEAN
● Datas (DATE) , Horas (TIME) e datas e hora
(DATETIME)
Linguagem de manipulação
A linguagem utilizada é SQL a Structured
Query Language (Linguagem de consulta
estruturada). Se divide em dois principais tipos:
● DML - Linguagem de Manipulação de Dados
que tem como principais comandos - SELECT,
INSERT, UPDATE, DELETE
Linguagem de manipulação
● DDL - Linguagem de Definição de Dados -
permite definir tabelas novas e elementos
associados. Os comandos básicos são
CREATE(cria um objeto dentro da base de
dados), DROP (apaga um objeto do banco
de dados) e ALTER (permite ao usuário
alterar um objeto).
● MyISAM gera tabelas não transacionais. Ela
fornece armazenamento de alta velocidade
de escrita e recuperação, bem como
capacidades de pesquisa de texto completo.
MyISAM é suportada em todas as
configurações do MySQL, e é o motor de
armazenamento padrão, a menos que você
tenha configurando o MySQL para usar um
padrão diferente.
Principais tipos de Tabelas
● A MEMORY é o mecanismo de
armazenamento que gera as tabelas direto na
memória do computador. Muito util para tabelas
temporárias onde os dados serão limpos para
posteriormente inseridos em outra tabelas.
Principais tipos de Tabelas
● O InnoDB e BDB mecanismos de armazenamento
fornecer tabelas seguras com transação. Onde as
ações de inserção, alteração e exclusão de dados
so são executadas após um commit. Este tipo de
tabela permite se dar um roll back caso o acorra
um erro, ou um comprotamento não esperado.
Principais tipos de Tabelas
● NDBCLUSTER (também conhecido como NDB ) é
o mecanismo de armazenamento usado pelo
MySQL Cluster para implementar tabelas
particionadas ao longo de muitos computadores.
Ele está disponível em distribuições binárias do
MySQL 5.0. Este mecanismo de armazenamento é
suportado atualmente em uma série de
plataformas Unix
Principais tipos de Tabelas
● O ARCHIVE é o mecanismo de armazenamento
usado para armazenar grandes quantidades de
dados sem índices.
● O mecanismo CSV armazena dados em arquivos
de texto usando o formato de valores separados
por vírgulas.
Principais tipos de Tabelas
SELECT
SELECT 1 + 2;
SELECT 3 – 5;
SELECT 10 * 2;
SELECT 158 / 3;
FROM
SELECT * FROM tbl;
SELECT * FROM tbl1, tbl2;
SELECT * FROM tbl1, tbl2, tbl3;
SELECT tbl1.col1 FROM tbl1;
SELECT tbl1.col1, tbl2.col2 FROM table1, table2;
SELECT tbl1.col1, tbl2.col2, tbl3.col3 FROM tbl1, tbl2, tbl3;
Comandos de manipulação de dados
WHERE
A cláusula WHERE serve para manipular os dados de
forma a exibir apenas aqueles que realmente são
úteis. Alguns exemplos seguem abaixo:
SELECT * FROM tbl1 WHERE tbl1.nome = ‘Pedro’;
SELECT * FROM tbl1, tbl2 WHERE tbl1. colRel = tbl2.
colRel;
Comandos de manipulação de dados
AND/OR/XOR
SELECT 1 XOR NULL;
SELECT * FROM tbl1, tbl2 WHERE tbl1.nome = tbl2.nome
AND 1 = 1;
SELECT * FROM tbl1, tbl2 WHERE tbl1.nome = tbl2.nome OR
1 = 1;
SELECT * FROM tbl1, tbl2 WHERE tbl1.nome = tbl2.nome
XOR 1 = 1;
Comandos de manipulação de dados
IN
SELECT 2 IN (0, 3, 5, 'wefwf');
SELECT 'wefwf' IN (0, 3, 5, 'wefwf');
SELECT * FROM tbl WHERE tbl.nome IN (‘Marcus’,
‘Augusto’);
SELECT * FROM tbl WHERE tbl.cidade IN (‘RJ’, ‘SP’)
Comandos de manipulação de dados
LIKE
A função LIKE() serve para fazer comparações usando
expressões regulares simples, de forma a fazer buscas mais
gerais. A sintaxe segue abaixo:
• % qualquer caractere em qualquer quantidade, inclusive
nenhum.
• _ apenas um caractere, sendo ele qualquer.
• % casa exatamente o caractere %
• _ casa exatamente o caractere _
Comandos de manipulação de dados
BETWEEN
SELECT * FROM tbl WHERE tbl.idade BETWEEN 18 AND 21;
SELECT * FROM tbl WHERE tbl.peso BETWEEN 50 AND 80;
DISTINCT
SELECT DISTINCT * FROM tbl1;
SELECT DISTINCT * FROM tbl1, tbl2;
Comandos de manipulação de dados
ORDER BY
SELECT * FROM table1 ORDER BY table1.idTbl
SELECT tbl1.col1 FROM table1 ORDER BY table1.idTbl;
GROUP BY
SELECT * FROM table1 GROUP BY table1.col1;
SELECT * FROM table1 GROUP BY table1.col1 DESC;
Comandos de manipulação de dados
MD5
SELECT MD5('1234');
SELECT MD5(‘mvc');
COUNT
SELECT COUNT (pais), região FROM paises GROUP BY regiao;
NOW
SELECT NOW();
Comandos de manipulação de dados
INSERT
INSERT INTO tbl VALUES (1, 2, 3);
INSERT INTO tbl (idTbl, col1, col2) VALUES (DEFAULT, 1, ‘c’);
UPDATE
UPDATE tbl1 SET col1=’a’;
UPDATE tbl1 SET col1=’a’, col2=‘b’;
Comandos de manipulação de dados
DELETE
DELETE FROM tbl1 WHERE idTbl = ‘1’;
DELETE FROM tbl1 WHERE nome LIKE ‘%Pedro%’;
SUB-SELECT
SELECT * FROM usuarios WHERE idade = (SELECT idade
FROM membros WHERE nome=”Marcus” LIMIT 1);
Comandos de manipulação de dados
UNION
SELECT coluna_1, coluna_2 FROM tabela_1
UNION
SELECT coluna_A, coluna_B FROM tabela_2
Comandos de manipulação de dados
INNER JOIN
SELECT ... FROM table_reference INNER JOIN table_reference {
ON condição de junção }
As duas queries se equivalem
SELECT tbl1.nome, tbl2.curso FROM tbl1 INNER JOIN tbl2
ON tbl1.idCurso = tbl2.idCurso;
SELECT tbl1.nome, tbl2.curso FROM tbl1, tbl2
WHERE tbl1.idCurso = tbl2.idCurso;
Comandos de manipulação de dados

Apresentação básica de my sql

  • 1.
  • 2.
    Conceitos Básicos ● Bancode dados é um conjunto de tabelas onde são armazenados informações . ● Um banco de dados e composto de uma ou mais tabelas. As tabelas são divididas em linhas e colunas. ● Cada uma das linhas da tabelas é chamada de registro. Cada coluna é chamada campo. ● Uma tabela os campos pode receber diferentes tipos de valores : numeros, textos, datas, arquivos e etc.
  • 3.
    Tipos de dadossuportados ● Numéricos - inteiros( INTEGER), Float e Double ● Strings - um caracter (CHAR), varios caracteres (VARCHAR) ou uma sequencias muito grande (TEXT) ● Valores boleanos - BOLLEAN ● Datas (DATE) , Horas (TIME) e datas e hora (DATETIME)
  • 4.
    Linguagem de manipulação Alinguagem utilizada é SQL a Structured Query Language (Linguagem de consulta estruturada). Se divide em dois principais tipos: ● DML - Linguagem de Manipulação de Dados que tem como principais comandos - SELECT, INSERT, UPDATE, DELETE
  • 5.
    Linguagem de manipulação ●DDL - Linguagem de Definição de Dados - permite definir tabelas novas e elementos associados. Os comandos básicos são CREATE(cria um objeto dentro da base de dados), DROP (apaga um objeto do banco de dados) e ALTER (permite ao usuário alterar um objeto).
  • 6.
    ● MyISAM geratabelas não transacionais. Ela fornece armazenamento de alta velocidade de escrita e recuperação, bem como capacidades de pesquisa de texto completo. MyISAM é suportada em todas as configurações do MySQL, e é o motor de armazenamento padrão, a menos que você tenha configurando o MySQL para usar um padrão diferente. Principais tipos de Tabelas
  • 7.
    ● A MEMORYé o mecanismo de armazenamento que gera as tabelas direto na memória do computador. Muito util para tabelas temporárias onde os dados serão limpos para posteriormente inseridos em outra tabelas. Principais tipos de Tabelas
  • 8.
    ● O InnoDBe BDB mecanismos de armazenamento fornecer tabelas seguras com transação. Onde as ações de inserção, alteração e exclusão de dados so são executadas após um commit. Este tipo de tabela permite se dar um roll back caso o acorra um erro, ou um comprotamento não esperado. Principais tipos de Tabelas
  • 9.
    ● NDBCLUSTER (tambémconhecido como NDB ) é o mecanismo de armazenamento usado pelo MySQL Cluster para implementar tabelas particionadas ao longo de muitos computadores. Ele está disponível em distribuições binárias do MySQL 5.0. Este mecanismo de armazenamento é suportado atualmente em uma série de plataformas Unix Principais tipos de Tabelas
  • 10.
    ● O ARCHIVEé o mecanismo de armazenamento usado para armazenar grandes quantidades de dados sem índices. ● O mecanismo CSV armazena dados em arquivos de texto usando o formato de valores separados por vírgulas. Principais tipos de Tabelas
  • 11.
    SELECT SELECT 1 +2; SELECT 3 – 5; SELECT 10 * 2; SELECT 158 / 3; FROM SELECT * FROM tbl; SELECT * FROM tbl1, tbl2; SELECT * FROM tbl1, tbl2, tbl3; SELECT tbl1.col1 FROM tbl1; SELECT tbl1.col1, tbl2.col2 FROM table1, table2; SELECT tbl1.col1, tbl2.col2, tbl3.col3 FROM tbl1, tbl2, tbl3; Comandos de manipulação de dados
  • 12.
    WHERE A cláusula WHEREserve para manipular os dados de forma a exibir apenas aqueles que realmente são úteis. Alguns exemplos seguem abaixo: SELECT * FROM tbl1 WHERE tbl1.nome = ‘Pedro’; SELECT * FROM tbl1, tbl2 WHERE tbl1. colRel = tbl2. colRel; Comandos de manipulação de dados
  • 13.
    AND/OR/XOR SELECT 1 XORNULL; SELECT * FROM tbl1, tbl2 WHERE tbl1.nome = tbl2.nome AND 1 = 1; SELECT * FROM tbl1, tbl2 WHERE tbl1.nome = tbl2.nome OR 1 = 1; SELECT * FROM tbl1, tbl2 WHERE tbl1.nome = tbl2.nome XOR 1 = 1; Comandos de manipulação de dados
  • 14.
    IN SELECT 2 IN(0, 3, 5, 'wefwf'); SELECT 'wefwf' IN (0, 3, 5, 'wefwf'); SELECT * FROM tbl WHERE tbl.nome IN (‘Marcus’, ‘Augusto’); SELECT * FROM tbl WHERE tbl.cidade IN (‘RJ’, ‘SP’) Comandos de manipulação de dados
  • 15.
    LIKE A função LIKE()serve para fazer comparações usando expressões regulares simples, de forma a fazer buscas mais gerais. A sintaxe segue abaixo: • % qualquer caractere em qualquer quantidade, inclusive nenhum. • _ apenas um caractere, sendo ele qualquer. • % casa exatamente o caractere % • _ casa exatamente o caractere _ Comandos de manipulação de dados
  • 16.
    BETWEEN SELECT * FROMtbl WHERE tbl.idade BETWEEN 18 AND 21; SELECT * FROM tbl WHERE tbl.peso BETWEEN 50 AND 80; DISTINCT SELECT DISTINCT * FROM tbl1; SELECT DISTINCT * FROM tbl1, tbl2; Comandos de manipulação de dados
  • 17.
    ORDER BY SELECT *FROM table1 ORDER BY table1.idTbl SELECT tbl1.col1 FROM table1 ORDER BY table1.idTbl; GROUP BY SELECT * FROM table1 GROUP BY table1.col1; SELECT * FROM table1 GROUP BY table1.col1 DESC; Comandos de manipulação de dados
  • 18.
    MD5 SELECT MD5('1234'); SELECT MD5(‘mvc'); COUNT SELECTCOUNT (pais), região FROM paises GROUP BY regiao; NOW SELECT NOW(); Comandos de manipulação de dados
  • 19.
    INSERT INSERT INTO tblVALUES (1, 2, 3); INSERT INTO tbl (idTbl, col1, col2) VALUES (DEFAULT, 1, ‘c’); UPDATE UPDATE tbl1 SET col1=’a’; UPDATE tbl1 SET col1=’a’, col2=‘b’; Comandos de manipulação de dados
  • 20.
    DELETE DELETE FROM tbl1WHERE idTbl = ‘1’; DELETE FROM tbl1 WHERE nome LIKE ‘%Pedro%’; SUB-SELECT SELECT * FROM usuarios WHERE idade = (SELECT idade FROM membros WHERE nome=”Marcus” LIMIT 1); Comandos de manipulação de dados
  • 21.
    UNION SELECT coluna_1, coluna_2FROM tabela_1 UNION SELECT coluna_A, coluna_B FROM tabela_2 Comandos de manipulação de dados
  • 22.
    INNER JOIN SELECT ...FROM table_reference INNER JOIN table_reference { ON condição de junção } As duas queries se equivalem SELECT tbl1.nome, tbl2.curso FROM tbl1 INNER JOIN tbl2 ON tbl1.idCurso = tbl2.idCurso; SELECT tbl1.nome, tbl2.curso FROM tbl1, tbl2 WHERE tbl1.idCurso = tbl2.idCurso; Comandos de manipulação de dados