zoukankan      html  css  js  c++  java
  • MYSQL如何让主键使用BTREE索引

    最近同步测试场和正式从的数据库结构,发现正式场的数据表的主键都没有使用BTREE,于是需要进行新增,但实际上Mysql是没有提供直接修改主键的语句的,需要先删除后新增。同时,因为主键索引大多数是自增的,一般你直接使用删除语句:

    alter table jd_product_bricks drop primary key;
    1
    数据库会报错:

    Incorrect table definition; there can be only one auto column and it must be defined as a key
    1
    原因是你这个删除的主键字段是自增的,而mysql是不允许删除唯一的自增字段的。
    因此我们删除的同时,也需要把自增给删除再删除主键字段,组合起来的语句是:

    alter table jd_product_bricks drop primary key, modify id bigint(20) unsigned NOT NULL COMMENT '主键' ;
    1
    那么删除了,我们就需要新增了主键和字段了:

    alter table jd_product_bricks add primary key(`id`) USING BTREE, modify id bigint(20) unsigned NOT NULL COMMENT '主键' auto_increment;
    1
    最后就能处理这个问题了。
    ————————————————
    版权声明:本文为CSDN博主「Tim_PHPer」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/Tim_phper/article/details/108347407

  • 相关阅读:
    十步完全理解 SQL
    Oracle VM Virtual
    Pycharm 使用
    Open Yale course:Listening to Music
    SQL 必知必会
    安装 SQL server 2008 R2
    Ubuntu安装mysql之后,编译找不到头文件
    core dump文件的生成
    Linux静态库与动态库制作过程
    GEC6818连接Ubuntu,下载程序至开发板
  • 原文地址:https://www.cnblogs.com/wl-blog/p/15208927.html
Copyright © 2011-2022 走看看