1 / 24

Introdução ao MySQL 5.1

Colégio da Imaculada Curso Técnico em Informática. Introdução ao MySQL 5.1. Prof. Tales K. Cabral talescabral@colegiodaimaculada.com.br. 2º Módulo. MySQL. Sistema Gerenciador de Banco de Dados Licença: GNU (General Public Licence) - FREEWARE Versão: 5.1.36 ou 5.1.47 (estáveis)

dudley
Download Presentation

Introdução ao MySQL 5.1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. MySQL Sistema Gerenciador de Banco de Dados Licença: GNU (General Public Licence) - FREEWARE Versão: 5.1.36 ou 5.1.47 (estáveis) Como encontrar? Internet (download) http://www.mysql.com/downloads/mirror.php?id=389420#mirrors(escolher um dos servidores) Site Oficial: www.mysql.com

  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 é: • 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 Sintaxe: SHOW DATABASES;

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

  9. 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. 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 tablecliente ( 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), cidadechar(20) DEFAULT ‘Maceio’ );

  12. MySQL DDL: Tipos de Dados

  13. MySQL 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 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. 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 SELECT <CAMPO1>,<CAMPO2>,... FROM <RELAÇÃO> WHERE <CONDIÇÃO2> |AND/OR/LIKE...|; • Exemplo: SELECT NOME, FUNCAO, SAL FROM EMPRESA WHERE NDEP = 30 AND SAL > 22000 UNION SELECT NOME,FUNCAO, SAL FROM EMPRESA 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: http://dev.mysql.com/doc/refman/4.1/pt/index.html PDF em: http://downloads.mysql.com/docs/refman-4.1-pt.pdf • Tutorial do Professor. Disponível em: http://www.colegiodaimaculada.com.br/~tales/apostilas2M/mysql_tutorial.pdf

More Related