Para que possamos prosseguir o minicurso e começarmos a utilizar o MySQL de forma prática, você precisará, claro, tê-lo instalado em seu computador. Você pode baixá-lo gratuitamente em http://www.mysql.com/downloads/ . Os exemplos que vou criar serão feitos na versão 5.5, mas caso queira pegar uma versão mais nova, fique à vontade, pois provavelmente os códigos funcionarão nela sem problemas. A única observação que faço é que se você pretende desenvolver aplicações para Internet, deve se atentar para utilizar, em seus testes, a mesma versão que o provedor de serviços de hospedagem disponibiliza, para não haver possibilidade de incompatibilidade.

Depois de instalado, aparecerá uma janela a mais em seu grupo de programas instalados, conforme essa imagem:

Criando Tabelas

Para abrir o Mysql basta clicar nela e, em seguida, na opção MySQL Server 5.5 Command Line Client.

Surgirá uma tela semelhante às antigas telas do saudoso MS-DOS, solicitando sua senha, que é a mesma que você cadastrou durante a instalação do MySQL. Após inseri-la chegaremos ao prompt de comando, que deve ser parecido com essa imagem:

Criando Tabelas

Reparem que, conforme citei na página de introdução, o copyright já faz referência à Oracle, atual proprietária do MySQL.

Para prosseguirmos vamos falar sobre alguns conceitos importantes:

Base de Dados

Uma base de dados nada mais é do que um grupo de tabelas que podem ou não estar relacionadas. Para manter a organização, cada aplicação tem a sua própria base de dados, por isso, antes de iniciarmos a criação da nossa primeira tabela, precisamos criar uma base de dados que irá recebê-la.

Vou criar uma base de dados chamada ‘Teste’ e para isso o comando que utilizarei é:

create database Teste;

Basta digitar isso no prompte teclar Enter que a mensagem de sucesso deve surgir, como essa:

Criando Tabelas

Para especificarmos que trabalharemos com a base recém criada, digitaremos o comando ‘use Teste’;
Uma mensagem de “Database changed” surgirá na tela, indicando que nossa base de dados está selecionada e todos os comandos aplicados a partir de agora terão efeito sobre ela. Vou imaginar um modelo bem simples, onde um cliente aluga filmes em uma locadora e, para simplificar ainda mais, já que o objetivo é ensinar a criar tabelas, a locadora possui somente uma cópia de cada filme, dessa forma:

Criando Tabelas

Conforme é possível observar neste pequeno modelo, a tabela "Cliente" terá as seguintes colunas:
- Nome
- Telefone
- Idade
- Endereço
- E-mail
- CPF (Chave Primária)

Já a tabela filme terá as colunas
- Gênero
- Título
- Código (Chave Primária)

E a tabela "Aluga" terá somente a coluna Data.

Vamos nos concentrar primeiro na tabela "Cliente".

Definirei campos do tipo varchar para todos os atributos, exceto a idade, cujo tipo será int. Os comandos a serem digitados, no MySQL, para criação desta tabela serão:

create table Cliente(
telefone varchar(15),
nome varchar(40),
endereco varchar(50),
email varchar(40),
idade int,
cpf varchar(12) primary key) engine=innoDB;

Você deverá receber a seguinte mensagem:

Criando Tabelas

Vale fazer alguns comentários nesse pequeno código:

Criando Tabelas

A sintaxe do comando para criar tabelas em MySQL é muito simples. Basta executar a sequência:

create table nomedatabela(campo1 tipo, campo2, tipo...);

Sempre lembrando que todos os comandos MySQL terminam com o sinal de ponto e vírgula. O retorno Query OK, no prompt, indica que a tabela foi criada com sucesso.

Vou repetir o processo para a tabela Filme.

create table filme(
genero varchar(30),
titulo varchar(40),
codigo int primary key) engine=innoDB;

Criando Tabelas

E vou fazer o mesmo para a tabela Aluga, herdando as chaves das tabelas Cliente e Filme, já que estamos lidando com um relacionamento 1:n.

create table Aluga(
cpf varchar(12),
codigo int,
data date,
primary key(data, cpf, codigo),
foreign key(cpf) references Cliente(cpf),
foreign key(codigo) references Filme(codigo)) engine=innoDB;

Comentários sobre esta tabela:
1- Coloquei a data como parte da chave, para permitir que um mesmo cliente possa retirar o mesmo filme futuramente. Como estamos lidando com uma chave composta, se todos os itens que a compõem tiverem o mesmo valor, provocaremos uma violação de chave e a inserção não poderá ser feita, ou seja, sem a data, a chave seria composta apenas pelo CPF do cliente e pelo Código do Filme, portanto se um cliente tentar alugar o mesmo filme no futuro, a chave será exatamente igual a formada pela sua primeira locação deste título, então também teríamos uma violação. Colocando a data como parte dessa chave composta isso nunca acontecerá, pois claro que um cliente nunca alugará o mesmo filme em um mesmo dia mais de uma vez.

2- Focando as atenções na tabela Aluga, se não colocássemos o CPF e o Código do filme como partes da chave, teríamos apenas a data armazenada, portanto poderíamos consultar todas as datas das locações dos filmes, mas não poderíamos saber quem os locou e quais títulos foram locados.

Agora temos nossas três tabelas criadas! Se quiser confirmar, basta digitar o comando show tables; no prompt do MySQL, vejam:

Criando Tabelas

Com isso encerramos a primeira parte do tutorial e já sabemos como criar tabelas em MySQL!


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".


O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.


Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.


Nos primeiros oito dias após o lançamento do console Nintendo Wii foram vendidas 600 mil unidades. Isso equivale a quase um por segundo e estes incríveis números são referentes às vendas apenas nos EUA!


A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.


O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.


O mouse foi criado em 9 de dezembro de 1968, por um americano chamado Douglas Engelbart, que o batizou de "XY Position Indicator for a Display System". Conheça a história do mouse clicando aqui.


Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.


O personagem Mario só possui bigode porque quando ele foi criado, em 1981, a resolução de tela dos equipamentos disponíveis não permitia que fosse desenhada uma boca, então os desenvolvedores fizeram o grande bigode para contornar essa limitação tecnológica.


O ENIAC, primeiro computador valvulado do mundo, possuía 17.000 válvulas, 500.000 pontos de solda, 30 toneladas de peso e ocupava uma área de 180 metros quadrados. Clique aqui e conheça mais sobre a história dos computadores.


O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.