暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

来试试这道 MySQL 面试题吧,比 Leecode 好玩多了~~~

InsideMySQL 2022-02-09
200
点击卡片,关注 InsideMySQL
新年好,各位码农小可爱们,祝大家虎年大吉,新的一年 day day up
作为虎年 IMG 的第一篇公众号文章,不如我们来刷个题吧,看看有哪些小可爱们可以做对。
1. 假设表x的表结构和内容如下所示:
    mysql> show create table x\G 
    ***********1.row*************
    Table:x
    Create Table: CREATE TABLE `x`(
    `a` INT NOT NULL AUTO INCREMENT,
    `b` VARCHAR(1),
    PRIMARY KEY (`a`)) ENGINE=InnODB;


    mysql> SELECT * FROM x;
    +---+------+
    | a | b |
    +---+------+
    | 0 | a |
    | 2 | b    |
    +---+------+


    mysql> ALTER TABLE x MODIFY COLUMN b VARCHAR(5);
    复制
    请问执行完ALTER TABLE x MODIFY COLUMN b VARCHAR(5)后,表x中的数据是怎样的?
    2. 假设表y的表结构和内容如下所示:
      mysql> show create table y\G 
      ***********1.row*************
             Table:y
      Create Table: CREATE TABLE `y`(
      `a` INT,
      `b` VARCHAR(1),
      PRIMARY KEY (`a`)) ENGINE=InnODB;


      mysql> SELECT * FROM y;
      +---+------+
      | a | b |
      +---+------+
      | 0 | a |
      | 2 | b |
      +---+------+


      mysql> ALTER TABLE y MODIFY COLUMN a INT AUTO_INCREMENT;
      复制
      请问执行完ALTER TABLE y MODIFY COLUMN a INT AUTO_INCREMENT后,表x中的数据是怎样的?
      若不在 MySQL 环境下执行上述两条 DDL 语句,相信大多数同学的答案会是错误的。
      即便通过执行 DDL 语句知道了最终的答案,那你知道 why 么?
      这是一个非常有意思的问题,甚至可以说是 MySQL 一个“愚蠢至极”的 Bug。
      周四晚上 21:00 来姜老师的抖音直播间,我将会通过分析源码的方式告诉同学们为什么 MySQL 是这么运行的。


      IMG群是码农的交流社区,IMG微信群交流内容包括但不限于技术、经济、军事、八卦等话题。欢迎有态度的码农们加入IMG大家庭。
      IMG目前有少林群、武当群、峨眉群、华山群、M悦会(高端VIP群)
      仅限码农入群,猎头或其他行业勿加,入群请加姜老师个人微信 82946772,并备注:码农入IMG群

      往期推荐



      从职高到麻省理工计算机博士,他是传奇!

      MySQL Group Replication Multi-Primary 模式,你真的理解么?

      完全免费!完全免费!完全免费!我们做的这一切,就是为了让码农们脱单...

      震惊!MySQL 3.23 版本跑在 96 核 CPU ,性能竟不输最新 MySQL 8.0 ......

      全网最完整的 MySQL Clone Plugin 实现原理解析

      gh-ost 翻车!使用后导致数据丢失!

      文章转载自InsideMySQL,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

      评论