Profº Aldo Rocha Banco de Dados
HOJE! CREATE TABLE com uma Chave primária Primeiramente façam um SELECT na tabela pessoa. Percebam que não há NENHUMA CHAVE PRIMÁRIA. utilizem o comando SHOW CREATE TABLE na tabela meus_contatos
Como criar uma tabela com chave Primária Basta você introduzir parâmetros no seu comando CREATE TABLE assim como NULL, NOT NULL, AUTO_INCREMENT, A PRIMARY KEY vem como um novo parâmetro após a coluna a qual você deseja que seja chave primária. EX: CREATE TABLE pessoa (id_pessoa int not null auto_increment primary key, nome varchar(50), telefone int(10));
O que é esse AUTO_INCREMENTO? É a forma de avisar ao sistema SQL para que ele preencha automaticamente aquela coluna, iniciando com um valor 1e aumenta em acréscimos de 1. EX: CREATE TABLE pessoa (id_pessoa int notnull auto_increment primary key, nome varchar(50), telefone int(10));
Adicionando uma chave primária a uma tabela existente Alguns irão dizer, mas ALDO eu vou ter que deletar a tabela e criar de novo para adicionar uma chave primária? Não! Você vai utilizar o comando SQL ALTER e suas SINTAXES: O comando ALTER TABLE é utilizado para alterar a estrutura de uma tabela (arquivo) acrescentando, alterando e retirando, nomes, formatos das colunas e a integridade referencial definidas em uma determinada tabela.
COMANDO ALTER SINTAXES (cont..) 1 Adicionando COLUNAS a uma tabela: ADD ALTER TABLE tabela ADD [COLUMN] nm_coluna tipo coluna; Façam os testes utilizando a tabela pessoa do banco de dados: dados_universais. a) Acrescente as colunas: RAÇA, RELIGIÃO, CPF. E se eu quiser organizar de forma pessoal a inclusão dessas colunas como eu farei? ALTER TABLE tabela ADD [COLUMN] nm_coluna tipo coluna AFTER coluna;
COMANDO ALTER TABLE Alterar a estrutura de uma tabela (arquivo) acrescentando, alterando e retirando, nomes, formatos das colunas e a integridade referencial definidas em uma determinada tabela. Sintaxes: 2 - Alterando NOME da Tabela: RENAME TO ALTER TABLE nm_tabela_antiga RENAME TO nm_tabela_nova; Façam os testes utilizando a tabela pessoa do banco de dados: dados_universais. a) Altere o nome da tabela pessoa para Recursos_Humanos.
COMANDO ALTER SINTAXES (cont..) 3 Excluir COLUNAS de uma tabela: DROP ALTER TABLE tabela DROP [COLUMN] nm_coluna; Façam os testes utilizando a tabela pessoa do banco de dados: dados_universais. a) exclua uma coluna de sua tabela que tenha menor importância.
COMANDO ALTER SINTAXES (cont..) 4 Alterar COLUNAS existentes de uma tabela: CHANGE ALTER TABLE tabela CHANGE [COLUMN] nm_coluna_antiga nm_coluna_nova tp_coluna nova; Imaginem que na tabela pessoa eu quero alterar a coluna nome para nome_completo. a) como fazer isso? 4 tamanho de COLUNAS existentes de uma tabela: MODIFY ALTER TABLE tabela MODIFY [COLUMN] nm_coluna tp_coluna nova; Imaginem que na tabela pessoa a coluna endereço está sem espaço suficiente a) como alterar o tamanho?
Let' s PRACTICES! Minha tabela Pessoa está composta da seguinte maneira: tabela_pessoa numeropess oa nomedapesso a telefonedap essoa enderecodapes soa 1 Aldo 9999-9999 Almirante Barroso 4801 profissaodap essoa Professor Agora eu quero que utilizando as várias variações do ALTER ela fique assim: id prim_nome sobrenome CPF endereco profissao fone 1 Aldo Rocha 705.780.892-87 Almirante Barroso 4801 Professor 3333-3333 2 Katy Winstows 888.777.666-15 Pedro Alv. Cabral princesa 4444-4444
ORDENANDO uma consulta! Para ordenar uma consulta utilizamos o comando ORDER BY. S e trata-se de uma consulta vamos utilizar o SELECT! Alguém ao quadro para me dar um exemplo? Select *FROM pessoa ORDER BY nome; Caso queiramos ordenar de cima para baixo ou de baixo para cima, combinar o ASC ou DESC.
Filtrando com NOT IN Para filtrar as más avaliações o RAFAEL utilizará a cláusula NOT IN que trará justamente o oposto aos filtros especificados. FAÇAM UMA CONSULTA UTILIZANDO O NOT IN SELECT nome_par FROM livro_negro WHERE Avaliacao NOT IN ( );
Mais NOT Podemos utilizar o NOT com BETWEEN e LIKE da mesma forma que fazemos com o IN. O mais importante de lembrarmos é que o NOT vai logo após o WHERE em nosso comando. Vejamos alguns exemplos: SELECT sobrenome FROM meus_contatos WHERE NOT idade BETWEEN 30 and 60; SELECT nome_par FROM lista_negra WHERE NOT nome_par LIKE 'A%' AND NOT nome_par LIKE 'B%'
Eliminando registros com o DELETE Imaginem que a ausência de uma chave primária dentro de uma tabela possibilita a ocorrência de registros duplicados, e para um BANCO de dados registros duplicados não é uma boa. Para isso podemos utilizar o comando DELETE e resolver essas ocorrências. UTILIZANDO O COMANDO! DELETE FROM meus_contatos WHERE primeiro_nome='aldo';
REGRAS DE UTILIZAÇÃO DO DELETE Não podemos utilizar DELETE para deletar o valor de uma coluna simples ou uma porção de colunas; Podemos usar DELETE para deletar linhas simples ou linhas múltiplas dependendo da cláusula WHERE; Podemos apagar todos os registros de uma tabela utilizando o seguinte comando: DELETE FROM meus_contatos.
PROBLEMA COM DELETE IMPRECISO Podemos tomar alguns cuidados para que não hajam deleções inesperadas feitas ocasionalmente. Boas práticas: 1) Primeiro você executa um SELECT em conjunto com a cláusula WHERE no registro que você sabe que será removido por ter sido criado com alguma informação ERRADA; 2) Execute um INSERT para criação de um novo registro agora contendo as informações corretas; 3) Por fim combinado com a mesma WHERE utilizada no SELECT você executa o comando DELETE.
ATUALIZAR DADOS COM O UPDATE Banco de Dados
REGRAS DO UPDATE Banco de Dados
UPDATE EM AÇÃO Banco de Dados
REGRAS DE CHAVE PRIMÁRIA Banco de Dados