介绍
在这个挑战中,我们将对数据库执行与 DDL(数据定义语言)相关的操作。你需要创建表、修改表结构,并执行删除数据和删除表等操作。本挑战旨在测试你在使用 DDL 语句(如 CREATE、ALTER、DELETE、TRUNCATE 和 DROP)方面的知识和技能。
在这个挑战中,我们将对数据库执行与 DDL(数据定义语言)相关的操作。你需要创建表、修改表结构,并执行删除数据和删除表等操作。本挑战旨在测试你在使用 DDL 语句(如 CREATE、ALTER、DELETE、TRUNCATE 和 DROP)方面的知识和技能。
在这个挑战中,我们需要创建一个数据库并对其执行与 DDL 相关的操作。
完成以下任务:
sudo 命令无密码访问 MySQL。testddl 的数据库,并指定字符集为 utf8mb4。testddl 数据库中创建名为 emp 和 dept 的表,结构如下,并插入信息:| 字段名 | 属性 |
|---|---|
| eid | INT(5) 主键 |
| ename | VARCHAR(50) |
| sal | DECIMAL |
| deptno | INT(5) |
| 字段名 | 属性 |
|---|---|
| did | INT(5) 主键 |
| dname | VARCHAR(50) |
emp 和 dept 表的主键为自增,起始值为 10。同时,将 emp 表中 sal 字段的数据类型修改为整数。emp 表中的所有数据。dept 表中的所有数据。emp 表和 testddl 数据库。ddl_operations.sql。~/project 目录中。编写脚本后,可以在 MySQL 客户端中使用以下示例代码运行它:
mysql> source ~/project/ddl_operations.sql
通过检查数据库和表结构来验证任务的完成情况。
SHOW DATABASES;
/* 预期输出包括:
testddl
*/
USE testddl;
DESCRIBE emp;
/* 预期:
Field Type Null Key Default Extra
eid int(5) NO PRI NULL auto_increment
ename varchar(50) YES NULL
sal int(5) YES NULL
deptno int(5) YES NULL
*/
INSERT INTO emp(ename) VALUES('test');
SELECT eid FROM emp;
/* 预期:
eid
10
*/
SHOW DATABASES;
/* 预期:testddl 不存在 */
恭喜!你已经完成了 DDL 综合挑战。你可以在 LabEx 中练习更多实验来提升你的技能。