A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Colégio da Imaculada Curso Técnico em Informática

Apresentações semelhantes


Apresentação em tema: "Colégio da Imaculada Curso Técnico em Informática"— Transcrição da apresentação:

1 Prof. Tales K. Cabral talescabral@colegiodaimaculada.com.br
Colégio da Imaculada Curso Técnico em Informática Introdução ao MySQL 5.1 Prof. Tales K. Cabral 2º Módulo

2 Sistema Gerenciador de Banco de Dados
MySQL Sistema Gerenciador de Banco de Dados Licença: GNU (General Public Licence) - FREEWARE Versão: ou (estáveis) Como encontrar? Internet (download) (escolher um dos servidores) Site Oficial:

3 MySQL Instalação: Baixar o programa; Executar o arquivo baixado;
Normalmente, escolhe-se a configuração padrão. Porém, se o usuário dispõe de espaço em disco, é aconselhável a instalação completa. Obter/criar um script (arquivo .bat): Definição das regras para a execução do banco de dados (ant. ao Windows XP); Definição das configurações do administrador (ant. ao Windows XP); Executar o banco e configurar DDL e DML;

4 MySQL O MySQL é: Motivo: Exemplos: Um gerenciador de banco de dados;
Assim como o PHP, é gratuito e de código aberto; Utiliza a linguagem de programação SQL* (Structured Query Language); Motivo: Existem vários bancos de dados que suportam e seguem o padrão SQL, porém cada um deles possui extensões proprietárias que possibilitam novas funcionalidades ao padrão. Exemplos: PostgreSQL: também tem código aberto e é gratuito, além de funcionar igualmente bem com o PHP; Microsoft SQL Server: não é gratuito, não possui código aberto e é bastante usado em corporações. * SQL - um padrão e a linguagem mais usada em bancos de dados

5 MySQL Aplicações: Na internet atual, praticamente todos os servidores de hospedagem suportam MySQL, exatamente pelo fato dele ser gratuito como o PHP e os dois trabalharem muito bem em conjunto. Também funciona com ASP, mas requer a disponibilização do servidor para poder funcionar. É suportado pelo código PHP.

6 MySQL Divisões: DDL (Data Definition Language): Linguagem de definição de dados. Consite na criação de bases de dados (bd) e das tabelas referentes a estes bds. DML (Data Manipulation Language): Linguagem de Manipulação de Dados. Consiste em operações que podem ser realizadas com as tabelas criadas a partir da DDL.

7 MySQL DDL: Abaixo segue um breve resumo das funções que manipulam bds e tabelas em SQL. Criando databases Sintaxe: CREATE DATABASE <nome_database>; ou CREATE DATABASE IF NOT EXISTS <nome_database> ; Mostrando databases SHOW DATABASES;

8 MySQL Acessando database USE DATABASE <nome_database>;
DDL: Acessando database Sintaxe: USE DATABASE <nome_database>; Apagando databases DROP DATABASE <nome_database>; Visualizando as tabelas que existem dentro de alguma base de dados (primeiro deve acessar a base): SHOW TABLES;

9 Abaixo segue um breve resumo das funções que manipulam tabelas em SQL.
MySQL DDL: Abaixo segue um breve resumo das funções que manipulam tabelas em SQL. Criando tabelas Sintaxe: CREATE TABLE <nome_da_tabela> ( <nome_do_campo> <tipo_do_campo>, <outro_campo> <tipo_do_campo>, ... );

10 Exemplo de criação de uma tabela:
MySQL DDL: Exemplo de criação de uma tabela: Create Table <nome_tabela> ( atribute1 INT(4) UNSIGNED ZEROFILL DEFAULT '0000' NOT NULL, atribute2 CHAR(20) DEFAULT '' NOT NULL, atribute3 DOUBLE(16,2) DEFAULT '0.00' NOT NULL, PRIMARY KEY(atribute1, atribute2) ); cláusulas UNSIGNED: sem sinal - não permite inserção de valores menores que zero ZEROFILL: preenche com zeros à frente do número inteiro inserido equivalendo à qtd de algarismos AUTO_INCREMENT: para tipo de dados numérico e inteiro, faz o incremento automático da sequência. DEFAULT: define um valor padrão para o caso de não preenchimento deste durante a Cláusulas inserção. UNIQUE: define valores únicos para coluna (como chave primária) portanto, não se utiliza em chaves primárias estando subentendida esta função. NOT NULL: refere-se aos valores da coluna não poderem ficar vazios (sem valor). PRIMARY KEY: chave primária FOREIGN KEY / REFERENCES: chave estrangeira CHECK: determina uma verificação para inserção de valores. Ex.: CHECK (sexo in [“M”,”F”])

11 MySQL DDL: Chave Primária A função da chave primária é identificar univocamente uma linha da tabela. Cada tabela deve possuir (pelo menos) uma chave primária. Quando se define um atributo como chave primaria, fica implícito as cláusulas UNIQUE e NOT NULL para este atributo, não sendo necessário a especificação destas. create table cliente ( codigo int(5) primary key, nome char(30) not null, sexo char(1) CHECK(sexo IN (‘M’, ‘F’)), CPF number(11) UNIQUE, endereco char(40), cidade char(20) DEFAULT ‘Maceio’ );

12 MySQL DDL: Tipos de Dados Tipo Descrição tinyint
Números inteiros de -128 a 127 (signed) ou de 0 a 255 (unsigned). integer / int Números inteiros de a (signed) ou então de 0 a (unsigned). bigint Números inteiros de a (signed) ou de 0 a (unsigned). bool / boolean / bit Indica falso (zero) ou verdadeiro (qualquer número diferente de zero). float(m,d) Números reais de E+38 a E-38 e de E-38 a E+38. m representa o tamanho do número de d representa o número de decimais. char(m) Uma string de tamanho fixo. m representa o tamanho da coluna. Caso o dado guardado nessa coluna seja menor que m, a diferença é preenchida com espaços vazios. Caso m não seja declarado, o tamanho considerado é 1. O tamanho vai de 0 a 255. varchar(m) Funciona da mesma maneira que o char, porém o tamanho da string não é fixo (não existe o preenchimento com espaços). text / blob Strings com máximo de 65,535 caracteres. tinytext / tinyblob Strings com máximo de 255 caracteres. mediumtext / mediumblob Strings com máximo de 16,777,215 caracteres. longtext / longblob Strings com máximo de 4,294,967,295 caracteres ou 4GB. enum ('valor1','valor2',...) Guarda uma string que precisa ser igual a algum item da lista valor1, valor2,.... A lista pode ter no máximo 65,535 itens. date Datas com valor entre ' ' e ' '. Perceba que o formato suporta é 'AAAA-MM-DD'. time Horas com valor entre '-838:59:59' e '838:59:59'. O formato é 'HH:MM:SS'. datetime Combinação entre date e time. O formato é 'AAAA-MM-DD HH:MM:SS'. Suporta valores entre ' :00:00' e ' :59:59'. year Guarda somente o ano de uma data, em quatro dígitos.

13 MySQL Apagando tabelas: Alterando tabelas (apagando colunas):
DDL: Apagando tabelas: DROP TABLE <nome_da_tabela>; Alterando tabelas (incluindo colunas): ALTER TABLE <nome_da_tabela> add <coluna> <tipo> after <coluna_anterior>; Alterando tabelas (apagando colunas): ALTER TABLE <nome_da_tabela> drop <coluna>; Renomeando Tabela: RENAME TABLE <bd>.<nome_antigo> TO <bd>.<novo_nome>; Renomeando tabelas (outra forma): ALTER TABLE <nome_tabela> RENAME TO <novo_nome>; Renomeando campos: ALTER TABLE <nome_tabela> CHANGE <nome_campo> <nome_campo> INT(3) NOT NULL...; ALTER TABLE <nome_tabela> CHANGE <nome_campo> <novo_nome_campo> INT(3) NOT NULL...;

14 MySQL DDL: Inserindo dados na tabela ( Primeiro Modo – usado para um registro somente) INSERT INTO <nome_da_tabela> SET <nome_da_coluna>=<'dado_a_ser_inserido‘>, <outra_coluna>=<'outro_dado‘>, ...; Inserindo dados na tabela ( Segundo Modo - usado para vários registros de uma vez) INSERT INTO <nome_da_tabela> (<coluna1>, <coluna2>,...) VALUES (<valor_da_coluna1>, <valor_da_coluna_2>,...);

15 MySQL Alterando dados da tabela
DDL: Alterando dados da tabela UPDATE <nome_da_tabela> SET <coluna1>=<'valor_da_coluna1‘>, <coluna2>=<'valor_da_coluna2‘>, ... [WHERE <condição_para_alteração>] [ORDER BY <coluna>] [LIMIT <número_máximo>]; Apagando dados da tabela DELETE FROM <nome_da_tabela>; (todos os dados) DELETE FROM <nome_da_tabela> [WHERE <condição_para_apagamento>] [ORDER BY <coluna>] [LIMIT <número_máximo>];

16 Selecionando dados da tabela
MySQL DML: Selecionando dados da tabela SELECT <colunas_a_selecionar> FROM <nome_da_tabela> [WHERE <condição_para_seleção>] [ORDER BY <coluna>] [LIMIT <número_máximo>]; Aqui que começa a aplicação dos operadores relacionais em forma de comandos SQL sobre os dados inseridos nas tabelas criadas...

17 Operadores Unários Projeção: SELECT <CAMPO1>,<CAMPO2>,...
FROM <RELAÇÃO>; Exemplo: SELECT NOME, FUNCAO FROM EMPRESA;

18 Operadores Unários Seleção: SELECT <CAMPO1> FROM <RELAÇÃO>
WHERE <CONDIÇÃO> |AND/OR/LIKE...|; Exemplo: SELECT NOME FROM EMPRESA WHERE SEXO=‘M’;

19 Operadores Unários Seleção e Projeção (Juntos):
SELECT <CAMPO1>,<CAMPO2>,... FROM <RELAÇÃO> WHERE <CONDIÇÃO> |AND/OR/LIKE...|; Exemplo: SELECT NOME, FUNCAO FROM EMPRESA WHERE SEXO=‘M’ AND IDADE > 35;

20 Operadores Binários União: SELECT <CAMPO1>,<CAMPO2>,...
FROM <RELAÇÃO> WHERE <CONDIÇÃO1> |AND/OR/LIKE...| UNION WHERE <CONDIÇÃO2> |AND/OR/LIKE...|; Exemplo: SELECT NOME, FUNCAO, SAL FROM EMPRESA WHERE NDEP = 30 AND SAL > 22000 SELECT NOME,FUNCAO, SAL WHERE SEXO = ‘M’; Têm que ser os mesmos!!! São os mesmos!!!

21 Operadores Binários Produto Cartesiano:
SELECT <CAMPO1>, <CAMPO2>, ... FROM <RELAÇÃO1>, <RELACAO2, ... Exemplos: SELECT NOMEPROFESSOR, TURMA, NOMEALUNO FROM PROFESSORES, TURMAS, ALUNOS ou SELECT A.DTADMISSAO FROM ALUNOS A, PROFESSORES P;

22 Operadores Binários Junção Natural (inner join):
SELECT <CAMPO1>, <CAMPO2>, ... FROM <RELAÇÃO1>, <RELACAO2, ... WHERE <CONDIÇÃO DE ASSOCIAÇÃO>; Exemplo: SELECT P.NOME, NOTA, A.NOME FROM PROFESSORES P, DISCIPLINAS D, ALUNOS A, NOTAS N WHERE P.NOME=D.NOMEP AND A.NOME=D.NOMEA AND A.NOME=N.NOMEA;

23 Operadores Binários Junção Natural, Projeção e Seleção (juntos):
SELECT <CAMPO1>, <CAMPO2>, ... FROM <RELAÇÃO1>, <RELACAO2, ... WHERE <CONDIÇÃO DE ASSOCIAÇÃO>, <CONDIÇÃO2>; Exemplo: SELECT E.NOME, FUNCAO, D.NOME FROM EMPREGADO E, DEPARTAMENTO D WHERE E.NUMDEP=D.NUMDEP AND SAL > 22000;

24 Referências Manual de Referência Online do MySQL 4.1 (em Português). Disponível em: PDF em: Tutorial do Professor. Disponível em:


Carregar ppt "Colégio da Imaculada Curso Técnico em Informática"

Apresentações semelhantes


Anúncios Google