Buscar

16050514-Apostila-Programacao-PHP-e-MySQL-ExatasWeb-58

Prévia do material em texto

PHP e MySQL 
mysql> select matricula, nome, dataNasc from aluno where nome like 'paulo%';
mysql> select matricula, nome, dataNasc from aluno where nome like 'paulo%';
+-----------+---------------+------------+
| matricula | nome | dataNasc |
+-----------+---------------+------------+
| 6 | Paulo Ricardo | 1960-04-09 |
| 7 | Paulo Roberto | 1982-07-17 |
+-----------+---------------+------------+
2 rows in set (0.00 sec)
Chaves estrangeiras
O uso de chaves estrangeiras é útil para melhor organização dos dados, evitando 
redundância e facilitando buscas. Ex: Agora, cada aluno deve informar o estado em que 
mora. Vamos então criar uma tabela, onde cadastraremos os estados e relacionaremos cada 
estado com um aluno, utilizando chaves estrangeiras:
 mysql> create table estado(
 -> uf char(2) not null primary key,
 -> estado varchar(40) not null
 -> );
Query OK, 0 rows affected (0.01 sec)
O comando acima cria uma tabela estado com os campos UF e estado. Note que UF 
é uma chave primária, visto que cada estado possui sua própria sigla. Vamos cadastrar 
apenas alguns estados nessa tabela:
mysql> insert into estado values('MG','Minas Gerais');
Query OK, 1 row affected (0.00 sec)
mysql> insert into estado values('BA','Bahia');
Query OK, 1 row affected (0.00 sec)
mysql> insert into estado values('PR','Paraná');
Query OK, 1 row affected (0.00 sec)
mysql> insert into estado values('CE','Ceará');
Query OK, 1 row affected (0.00 sec)
mysql> insert into estado values('RS','Rio Grande do Sul');
Query OK, 1 row affected (0.00 sec)
Tipos de tabelas
As tabelas do MySQL possuem tipos. O tipo padrão de tabela é MyISAM. Todas as 
tabelas são criadas dessa forma. É um tipo de tabela mais rápido, mas que não permite 
relacionamentos através de chaves estrangeiras. Para que este relacionamento possa ser 
utilizado, i tipo da tabela deve ser innoDB, que é um tipo mais lento, mas que trabalha com 
chaves estrangeiras. O tipo da tabela pode ser informado no momento da criação da tabela, 
utilizando a cláusula engine no final dos atributos:
 mysql> create table estado(
 -> uf char(2) not null primary key,
 -> estado varchar(40) not null
 -> )engine=innodb;
Caso a tabela já exista, podemos alterá-la:
58
	MySQL e PHP
	Comandos sql
	Chaves estrangeiras
	Tipos de tabelas

Continue navegando