Introdução
Neste projeto, você aprenderá como realizar diversas operações DDL (Data Definition Language) em um banco de dados MySQL. Você criará um banco de dados, tabelas, modificará estruturas de tabelas, excluirá dados e removerá tabelas e bancos de dados.
👀 Pré-visualização



🎯 Tarefas
Neste projeto, você aprenderá:
- Como iniciar o serviço MySQL e acessar o banco de dados usando o comando
sudo - Como criar um banco de dados com um conjunto de caracteres específico
- Como criar tabelas com vários tipos de dados e chaves primárias
- Como modificar estruturas de tabelas, como tornar chaves primárias auto-incrementadas
- Como excluir dados de tabelas usando
DELETEeTRUNCATE - Como remover tabelas e bancos de dados
🏆 Conquistas
Após concluir este projeto, você será capaz de:
- Compreender as operações DDL básicas no MySQL
- Criar e gerenciar bancos de dados e tabelas
- Modificar estruturas de tabelas para atender às suas necessidades
- Excluir dados de tabelas de forma eficiente
- Remover tabelas e bancos de dados quando necessário
Iniciar o MySQL e Acessar o Banco de Dados
Nesta etapa, você aprenderá como iniciar o serviço MySQL e acessar o banco de dados usando o comando sudo sem nenhuma senha.
- Inicie o serviço MySQL usando o seguinte comando:
sudo service mysql start
- Acesse o banco de dados MySQL usando o comando
sudosem nenhuma senha:
sudo mysql
Agora você está pronto para prosseguir para a próxima etapa.
Criar o Banco de Dados e as Tabelas
Nesta etapa, você aprenderá como criar o banco de dados testddl com o conjunto de caracteres especificado como utf8mb4 e, em seguida, criar as tabelas emp e dept dentro do banco de dados.
- Crie o banco de dados
testddlcom o conjunto de caracteres especificado comoutf8mb4:
CREATE DATABASE IF NOT EXISTS `testddl` DEFAULT CHARACTER SET utf8mb4;
- Use o banco de dados
testddl:
USE `testddl`;
- Crie a tabela
empcom a seguinte estrutura:
CREATE TABLE `emp` (
`eid` int(5) NOT NULL,
`ename` varchar(50),
`sal` DECIMAL,
`deptno` int(5),
PRIMARY KEY (`eid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
- Crie a tabela
deptcom a seguinte estrutura:
CREATE TABLE `dept` (
`did` int(5) NOT NULL,
`dname` varchar(50) DEFAULT NULL,
PRIMARY KEY (`did`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Agora você criou o banco de dados testddl e as tabelas emp e dept. Vamos para a próxima etapa.
Modificar as Tabelas
Nesta etapa, você aprenderá como modificar as chaves primárias das tabelas emp e dept para serem auto-incrementadas, começando de 10. Você também modificará o tipo de dados do campo sal na tabela emp para inteiro.
- Modifique a chave primária da tabela
emppara ser auto-incrementada, começando de10:
ALTER TABLE `emp` AUTO_INCREMENT=10;
- Modifique a chave primária da tabela
deptpara ser auto-incrementada, começando de10:
ALTER TABLE `dept` AUTO_INCREMENT=10;
- Modifique o tipo de dados do campo
salna tabelaemppara inteiro:
ALTER TABLE `emp` MODIFY `sal` INT(5);
Agora as chaves primárias das tabelas emp e dept são auto-incrementadas, começando de 10, e o tipo de dados do campo sal na tabela emp foi modificado para inteiro.
Apagar Dados das Tabelas
Nesta etapa, você aprenderá como excluir todos os dados das tabelas emp e dept.
- Exclua todos os dados da tabela
empusando a instruçãoDELETE:
DELETE FROM `emp`;
- Exclua todos os dados da tabela
deptusando a instruçãoTRUNCATE:
TRUNCATE TABLE `dept`;
Agora as tabelas emp e dept estão vazias.
Eliminar a Tabela e a Base de Dados
Nesta etapa final, você aprenderá como remover a tabela emp e o banco de dados testddl.
- Remova a tabela
emp:
DROP TABLE `emp`;
- Remova o banco de dados
testddl:
DROP DATABASE `testddl`;
Você pode consultar a seguinte saída:
MariaDB [(none)]> USE `testddl`;
Database changed
MariaDB [testddl]> CREATE TABLE `emp` (
-> `eid` int(5) NOT NULL,
-> `ename` varchar(50),
-> `sal` DECIMAL,
-> `deptno` int(5),
-> PRIMARY KEY (`eid`)
-> ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Query OK, 0 rows affected (0.005 sec)
MariaDB [testddl]> CREATE TABLE `dept` (
-> `did` int(5) NOT NULL,
-> `dname` varchar(50) DEFAULT NULL,
-> PRIMARY KEY (`did`)
-> ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Query OK, 0 rows affected (0.004 sec)
MariaDB [testddl]> desc emp;
+--------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+---------------+------+-----+---------+-------+
| eid | int(5) | NO | PRI | NULL | |
| ename | varchar(50) | YES | | NULL | |
| sal | decimal(10,0) | YES | | NULL | |
| deptno | int(5) | YES | | NULL | |
+--------+---------------+------+-----+---------+-------+
4 rows in set (0.001 sec)
MariaDB [testddl]> ALTER TABLE `emp` AUTO_INCREMENT=10;
Query OK, 0 rows affected (0.005 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [testddl]> ALTER TABLE `dept` AUTO_INCREMENT=10;
Query OK, 0 rows affected (0.003 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [testddl]> ALTER TABLE `emp` MODIFY `sal` INT(5);
Query OK, 0 rows affected (0.006 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [testddl]> desc emp;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| eid | int(5) | NO | PRI | NULL | |
| ename | varchar(50) | YES | | NULL | |
| sal | int(5) | YES | | NULL | |
| deptno | int(5) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.001 sec)
MariaDB [testddl]> DELETE FROM `emp`;
Query OK, 0 rows affected (0.000 sec)
MariaDB [testddl]> TRUNCATE TABLE `dept`;
Query OK, 0 rows affected (0.003 sec)
MariaDB [testddl]> show tables;
+-------------------+
| Tables_in_testddl |
+-------------------+
| dept |
| emp |
+-------------------+
2 rows in set (0.000 sec)
MariaDB [testddl]> DROP TABLE `emp`;
Query OK, 0 rows affected (0.002 sec)
MariaDB [testddl]> show tables;
+-------------------+
| Tables_in_testddl |
+-------------------+
| dept |
+-------------------+
1 row in set (0.000 sec)
MariaDB [testddl]> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| testddl |
+--------------------+
5 rows in set (0.000 sec)
MariaDB [testddl]> DROP DATABASE `testddl`;
Query OK, 1 row affected (0.004 sec)
MariaDB [(none)]> show schemas;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.000 sec)
Parabéns! Você concluiu o Desafio Abrangente DDL. Você aprendeu como criar um banco de dados, criar tabelas, modificar estruturas de tabelas, excluir dados de tabelas e remover tabelas e bancos de dados.********
Resumo
Parabéns! Você concluiu este projeto. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.



