MySQL OCP888题解076-ALTER TABLE DROP PARTITION

文章目录

  • 1、原题
    • 1.1、原题
    • 1.2、答案
  • 2、题目解析
    • 2.1、题干解析
    • 2.2、选项解析
  • 3、实验
    • 3.1、实验1
      • 3.1.1、实验目的
      • 3.1.2、实验前准备
      • 4.1.3、实验步骤
      • 4.1.4、实验结论
  • 4、总结

1、原题

1.1、原题

MySQL OCP888题解076-ALTER TABLE DROP PARTITION_第1张图片

1.2、答案

D

2、题目解析

2.1、题干解析

本题考察更改分区后表定义是否会发生改变。

2.2、选项解析

  1. 根据实验结果证实,更改分区后表定义同样会改变。

3、实验

3.1、实验1

3.1.1、实验目的

验证ALTER TABLE DROP PARTITION后,表定义是否也发生变化。

3.1.2、实验前准备

已安装并运行的MySQL5.7。

4.1.3、实验步骤

  1. 先建立一个分区表,查看表定义,然后删除两个分区,再查看表定义,发现表定义发生了变化。
mysql> CREATE TABLE test_partition (id INT, name VARCHAR(50), purchased DATE)
	PARTITION BY RANGE( YEAR(purchased) ) (
	PARTITION p0 VALUES LESS THAN (1990),
	PARTITION p1 VALUES LESS THAN (1995),
	PARTITION p2 VALUES LESS THAN (2000),
	PARTITION p3 VALUES LESS THAN (2005)
	);
mysql> SHOW CREATE TABLE test_partition;
| test_partition | CREATE TABLE `test_partition` (
...... 
(PARTITION p0 VALUES LESS THAN (1990) ENGINE = InnoDB,
 PARTITION p1 VALUES LESS THAN (1995) ENGINE = InnoDB,
 PARTITION p2 VALUES LESS THAN (2000) ENGINE = InnoDB,
 PARTITION p3 VALUES LESS THAN (2005) ENGINE = InnoDB) */ |
mysql> ALTER TABLE test_partition DROP PARTITION p1,p2;
mysql> SHOW CREATE TABLE test_partition;
| test_partition | CREATE TABLE `test_partition` (
......  
(PARTITION p0 VALUES LESS THAN (1990) ENGINE = InnoDB,
 PARTITION p3 VALUES LESS THAN (2005) ENGINE = InnoDB) */ |

4.1.4、实验结论

  1. 更改分区后表定义同样会改变。

4、总结

  1. 可以使用ALTER TABLE DROP PARTITION更改表的分区,更改后表定义也会随之发生变化。

你可能感兴趣的:(MySQL,mysql,数据库,服务器,ocp,sql)