MySQL学习笔记:2.1 DDL-数据控制语言(二)

目录

2.1.4 DDL-表操作-修改和删除

一、DDL-表操作-修改

二、DDL-表操作-删除

* 案例


2.1.4 DDL-表操作-修改和删除

一、DDL-表操作-修改

主要学习:

  • 向表中添加字段

  • 删除表中的字段

  • 修改表中的字段

  • 修改表名

1、添加字段

ALTER TABLE 表名 ADD  字段名 类型(长度) [COMMENT 注释] [约束]

2、修改字段名和字段类型

修改数据类型

ALTER TABLE 表名 MODIFY 字段名 新的数据类型(长度)

修改字段名和字段类型

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束]

3、删除字段

ALTER TABLE 表名 DROP 字段名;

4、修改表名

ALTER TABLE 表名 RENAME TO 新的表名;

二、DDL-表操作-删除

删除表

DROP TABLE [IF EXISTS] 表名;

删除指定表,并重新创建新的表(重新创建的表是一张空表,里面数据被全部删除)

TRUNCATE TABLE 表名;

* 案例:

对“MySQL数据类型及案例”案例中创建的emp表,实现以下操作

-- ---------- DDL 表操作:修改和删除 ----------
USE my_database;

-- 案例1:添加字段
-- 为emp表增加一个新的字段“昵称”为nickname,类型为VARCHAR(20)
ALTER TABLE emp ADD nickname VARCHAR(20) COMMENT '昵称';

# 查询表结构
DESC emp;

# 输出结果:
# +------------+------------------+------+-----+---------+-------+
# | Field      | Type             | Null | Key | Default | Extra |
# +------------+------------------+------+-----+---------+-------+
# | no         | int              | YES  |     | NULL    |       |
# | work_id    | varchar(10)      | YES  |     | NULL    |       |
# | name       | varchar(10)      | YES  |     | NULL    |       |
# | gender     | char(1)          | YES  |     | NULL    |       |
# | age        | tinyint unsigned | YES  |     | NULL    |       |
# | id         | char(18)         | YES  |     | NULL    |       |
# | entry_date | date             | YES  |     | NULL    |       |
# | nickname   | varchar(20)      | YES  |     | NULL    |       |
# +------------+------------------+------+-----+---------+-------+
# 8 rows in set (0.01 sec)


-- 案例2:修改字段
-- 将emp表的nickname字段修改为username,类型为VARCHAR(30)
ALTER TABLE emp CHANGE nickname username VARCHAR(30) COMMENT '用户名';
# 查询表结构
DESC emp;

# 输出结果:
# +------------+------------------+------+-----+---------+-------+
# | Field      | Type             | Null | Key | Default | Extra |
# +------------+------------------+------+-----+---------+-------+
# | no         | int              | YES  |     | NULL    |       |
# | work_id    | varchar(10)      | YES  |     | NULL    |       |
# | name       | varchar(10)      | YES  |     | NULL    |       |
# | gender     | char(1)          | YES  |     | NULL    |       |
# | age        | tinyint unsigned | YES  |     | NULL    |       |
# | id         | char(18)         | YES  |     | NULL    |       |
# | entry_date | date             | YES  |     | NULL    |       |
# | username   | varchar(30)      | YES  |     | NULL    |       |
# +------------+------------------+------+-----+---------+-------+
# 8 rows in set (0.00 sec)

-- 案例3:删除字段
-- 删除emp表中的username字段
ALTER TABLE emp DROP username;
# 查询表结构
DESC emp;

# 输出结果:
# +------------+------------------+------+-----+---------+-------+
# | Field      | Type             | Null | Key | Default | Extra |
# +------------+------------------+------+-----+---------+-------+
# | no         | int              | YES  |     | NULL    |       |
# | work_id    | varchar(10)      | YES  |     | NULL    |       |
# | name       | varchar(10)      | YES  |     | NULL    |       |
# | gender     | char(1)          | YES  |     | NULL    |       |
# | age        | tinyint unsigned | YES  |     | NULL    |       |
# | id         | char(18)         | YES  |     | NULL    |       |
# | entry_date | date             | YES  |     | NULL    |       |
# +------------+------------------+------+-----+---------+-------+
# 7 rows in set (0.00 sec)


-- 案例4:修改表名emp为employee
ALTER TABLE emp RENAME TO employee;
# 查询表
SHOW TABLES;

2.1.5 DDL小结

1、DDL-数据库操作

  • SHOW DATABASES;

  • CREATE DATABASE 数据库名;

  • USE 数据库名;

  • SELECT DATABASE();

  • DROP DATABASE 数据库名;

2、DDL-表操作

  • SHOW TABLES;

  • CREATE TABLE 表名(字段 字段类型, 字段 字段类型);

  • DESC 表名;

  • SHOW CREATE TABLE 表名;

  • ALTER TABLE 表名 ADD/MODIFY/CHANGE/DROP/RENAME TO ......;

  • DROP TABLE 表名;

  • TRUNCATE TABLE 表名;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值