精华内容
下载资源
问答
  • mysql删除唯一索引语句
    万次阅读
    2017-10-18 19:28:02

    1、PRIMARY KEY(主键索引)

    添加 ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` );
    删除 ALTER TABLE `table_name` DROP PRIMARY KEY;

    2、UNIQUE(唯一索引)

    添加 ALTER TABLE `table_name` ADD UNIQUE ( `column` );
    删除 ALTER TABLE `table_name` DROP INDEX `column`;
    更多相关内容
  • mysql查看和删除唯一索引

    千次阅读 2021-01-18 22:49:15
    1、案例要求需要删除urapport_main库中userid_mobileno表中mobileno字段的唯一索引2、做法1. 备份之前的数据库中的表# mysqldump -uroot -psecreturapport_mainuserid_mobileno>userid_mobileno.sql2. 先切到...

    f3b33dd31ba24493b1e59381dc996713.png

    1、案例要求

    需要删除urapport_main库中userid_mobileno表中mobileno字段的唯一性索引

    2、做法

    1. 备份之前的数据库中的表

    # mysqldump -uroot -psecreturapport_mainuserid_mobileno>userid_mobileno.sql

    2. 先切到urapport_main 数据库

    mysql> use urapport_main;

    3. 查询userid_mobileno表中的索引

    mysql> show index from userid_mobileno;

    +-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

    | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |

    +-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

    | userid_mobileno | 0 | PRIMARY | 1 | userid | A | 2196 | NULL | NULL | | BTREE | | |

    | userid_mobileno | 0 | mobileno | 1 | mobileno | A | 2196 | NULL | NULL | YES | BTREE | | |

    +-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

    2 rows in set4. 删除userid_mobileno表中的mobileno索引

    mysql> alter table userid_mobileno drop index mobileno;

    Database changed

    Records: 0 Duplicates: 0 Warnings: 0

    5. 验证是否删除 ,没有第二条即删除成功

    mysql> show index from userid_mobileno;

    +-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

    | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |

    +-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

    | userid_mobileno | 0 | PRIMARY | 1 | userid | A | 2196 | NULL | NULL | | BTREE | | |

    +-----------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

    1 row in set

    展开全文
  • MySQL:使用SQL语句删除所有索引

    千次阅读 2021-01-18 19:19:17
    删除所有索引可利用ALTER TABLE或DROP INDEX语句删除索引。这里使用ALTER TABLE,首先查询所有索引,然后拼接成删除语句,复制执行即可#拼接删除索引的语法SELECT CONCAT('ALTER TABLE ',i.TABLE_NAME,' DROP ...

    删除所有索引

    可利用ALTER TABLE或DROP INDEX语句来删除索引。这里使用ALTER TABLE,首先查询所有索引,然后拼接成删除语句,复制执行即可

    #拼接删除索引的语法

    SELECT CONCAT('ALTER TABLE ',i.TABLE_NAME,' DROP INDEX ',i.INDEX_NAME,' ;')

    FROM INFORMATION_SCHEMA.STATISTICS i

    #过滤主键索引

    WHERE TABLE_SCHEMA = '库名' AND i.INDEX_NAME <> 'PRIMARY';12345

    查询结果如下:

    语法

    查询索引

    SELECT

    *

    FROM

    INFORMATION_SCHEMA.STATISTICS

    WHERE

    TABLE_SCHEMA = '库名';

    #或者使用查看表的索引

    (1)show index from tblname;

    (2)show keys from tblname;123456789

    创建索引

    执行CREATE TABLE语句可以创建索引,也可以单独用CREATE INDEX或ALTER TABLE来为表增加索引。

    ALTER TABLE

    ALTER TABLE用来创建普通索引、UNIQUE索引或PRIMARY KEY索引。

    (1.)ALTER TABLE table_name ADD INDEX index_name (column_list)

    (2.)ALTER TABLE table_name ADD UNIQUE (column_list)

    (3.)ALTER TABLE table_name ADD PRIMARY KEY (column_list)123

    其中table_name是要增加索引的表名,column_list指出对哪些列进行索引,多列时各列之间用逗号分隔。索引名index_name可选,缺省时,MySQL将根据第一个索引列赋一个名称。另外,ALTER TABLE允许在单个语句中更改多个表,因此可以在同时创建多个索引。

    CREATE INDEX

    CREATE INDEX可对表增加普通索引或UNIQUE索引。

    (1)CREATE INDEX index_name ON table_name (column_list)

    (2)CREATE UNIQUE INDEX index_name ON table_name (column_list)12

    table_name、index_name和column_list具有与ALTER TABLE语句中相同的含义,索引名不可选。另外,不能用CREATE INDEX语句创建PRIMARY KEY索引。

    删除索引

    (1)DROP INDEX index_name ON talbe_name

    (2)ALTER TABLE table_name DROP INDEX index_name

    (3)ALTER TABLE table_name DROP PRIMARY KEY123

    其中,前两条语句是等价的,删除掉table_name中的索引index_name。

    第3条语句只在删除PRIMARY KEY索引时使用,因为一个表只可能有一个PRIMARY KEY索引,因此不需要指定索引名。如果没有创建PRIMARY KEY索引,但表具有一个或多个UNIQUE索引,则MySQL将删除第一个UNIQUE索引。

    如果从表中删除了某列,则索引会受到影响。对于多列组合的索引,如果删除其中的某列,则该列也会从索引中删除。如果删除组成索引的所有列,则整个索引将被删除。

    ————————————————

    展开全文
  • mysql索引学习----2----创建索引、修改索引删除索引的命令语句 mysql语句添加索引 创建或添加索引可以使用如下语句。 一、使用ALTER TABLE语句创建索引。 语法如下: 1.PRIMARYKEY(主键索引) mysql>ALTERTABLE`...

    转自:mysql语句添加索引

    参考:

    mysql索引学习----2----创建索引、修改索引、删除索引的命令语句

    mysql语句添加索引

    创建或添加索引可以使用如下语句。

    一、使用ALTER TABLE语句创建索引。

    语法如下:

    1.PRIMARY  KEY(主键索引)
            mysql>ALTER  TABLE  `table_name`  ADD  PRIMARY  KEY (  `column`  ) 
    2.UNIQUE(唯一索引)
            mysql>ALTER  TABLE  `table_name`  ADD  UNIQUE (`column` ) 
    3.INDEX(普通索引)
            mysql>ALTER  TABLE  `table_name`  ADD  INDEX index_name (  `column`  )
    4.FULLTEXT(全文索引)
            mysql>ALTER  TABLE  `table_name`  ADD  FULLTEXT ( `column` )
    5.多列索引
            mysql>ALTER  TABLE  `table_name`  ADD  INDEX index_name (  `column1`,  `column2`,  `column3`  )

    二、使用CREATE INDEX语句对表增加索引。

    能够增加普通索引和UNIQUE索引两种。其格式如下:
    create index index_name on table_name (column_list) ;
    create unique index index_name on table_name (column_list) ;
    说明:table_name、index_name和column_list具有与ALTER TABLE语句中相同的含义,索引名不可选。另外,不能用CREATE INDEX语句创建PRIMARY KEY索引。 

    三、删除索引。

    删除索引可以使用ALTER TABLE或DROP INDEX语句来实现。DROP INDEX可以在ALTER TABLE内部作为一条语句处理,其格式如下:
    drop index index_name on table_name ;
    alter table table_name drop index index_name ;
    alter table table_name drop primary key ;
    其中,在前面的两条语句中,都删除了table_name中的索引index_name。而在最后一条语句中,只在删除PRIMARY KEY索引中使用,因为一个表只可能有一个PRIMARY KEY索引,因此不需要指定索引名。如果没有创建PRIMARY KEY索引,但表具有一个或多个UNIQUE索引,则MySQL将删除第一个UNIQUE索引。
    如果从表中删除某列,则索引会受影响。对于多列组合的索引,如果删除其中的某列,则该列也会从索引中删除。如果删除组成索引的所有列,则整个索引将被删除。

    展开全文
  • mysql索引(七)唯一索引

    万次阅读 2021-07-19 11:17:54
    唯一索引(UNIQUE):与"普通索引"类似,不同的就是:索引列的值必须唯一,但允许有空值。 主键索引(PRIMARY):它 是一种特殊的唯一索引,不允许有空值。 全文索引(FULLTEXT ):可用于 MyISAM 表,mysql5.6之后也可...
  • ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )2、添加UNIQUE(唯一索引)mysql>ALTER TABLE `table_name` ADD UNIQUE ( `column` )3、添加INDEX(普通索引)mysql>ALTER TABLE `table_n...
  • mysql 创建索引语句

    万次阅读 2020-11-19 19:00:03
    一、创建索引 1.PRIMARYKEY(主键索引) mysql >...2.UNIQUE(唯一索引) mysql > ALTERTABLE`table_name`ADDUNIQUE (`column` ) 3.INDEX(普通索引) mysql > ALTERTABLE`table_name`...
  • 那几万 条的重复数据的删除是个问题,因为整个表现在已经有二十多万的数据,一开始使用两个select 加group by来进行分组后删除,不过语句执行不了,一运行那mysql直接卡掉了…不知为什么二十万的数据就能直接把mysql...
  • 最近项目中需要新增唯一索引,特此记录便于日后查阅。 一、使用ALTER TABLE语句创建索引 语法如下: 1.PRIMARYKEY(主键索引) mysql>ALTERTABLE`table_name`ADDPRIMARYKEY (`column`) 2.UNIQUE(唯一索引) ...
  • mysql多字段唯一索引

    千次阅读 2021-01-19 06:32:34
    项目中需要用到联合唯一索引:例如:有以下需求:每个人每一天只有可能产生一条记录:处了程序约定之外,数据库本身也可以设定:例如:user表中有userID,userName两个字段,如果不希望有2条一模一样的记录,需要给user表添加...
  • mysql – 无法删除索引

    千次阅读 2021-02-03 17:06:49
    以下create语句显示了我的一个MariaDB表的当前结构.CREATE TABLE `councilor` (`id` BIGINT(20) NOT NULL AUTO_INCREMENT,`user` BIGINT(20) NOT NULL,`council` INT(11) NOT NULL,`role` CHAR(50) NOT NULL DEFAULT...
  • mysql操作索引的sql语句

    千次阅读 2021-01-18 18:39:55
    创建索引一:唯一索引alter table table_name add unique index_name(column_list);例如:alter table users_game_task add unique unique_userid_taskid(userid, taskid);二:主键索引:PRIMARY KEY(主键索引)ALTER...
  • MySQL删除唯一性约束unique

    千次阅读 2022-02-12 10:26:23
    先查看创建表: show create table humanidentity.citycode; drop index citycode_2 on humanidentity.city...我这里多次添加unique约束就多出来_2和_3了,一定按照这个表上的名称删除,否则没有效果。 ...
  • mysql添加删除唯一约束(unique)

    千次阅读 2021-01-18 19:15:18
    1、添加PRIMARY KEY(主键索引)ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )2、添加INDEX(普通索引)ALTER TABLE `table_name` ADD INDEX index_name ( `column` )3、添加FULLTEXT(全文索引)ALTER TABLE `...
  • 1.添加PRIMARY KEY(主键索引) mysql>ALTER TABLE table_name ADD ...2.添加UNIQUE(唯一索引) mysql>ALTER TABLE table_name ADD UNIQUE (column ) 3.添加INDEX(普通索引) mysql>ALTER TABLE table_name ...
  • mysql索引语句(创建和查看)

    千次阅读 2019-10-13 07:43:35
    mysql索引语句mysql索引语句查看索引 show index from 数据库表名PRIMARY KEY(主键索引)UNIQUE(唯一索引)INDEX(普通索引)FULLTEXT(全文索引)多列索引1.普通索引。2.唯一索引。查看索引 mysql索引语句 查看索引 ...
  • bitsCN.commysql判断索引存在时删除索引的方法mysql的drop index语句不支持if exists条件,在sql中先删除索引,再创建索引,如果对于新建的数据库,库中没有该索引,就会报错,导致后面的sql不再执行。因此需要使用...
  • 别踩坑!使用MySQL唯一索引请注意

    万次阅读 多人点赞 2019-01-28 21:33:14
    背景 在程序设计中了,我们往往需要确保数据的唯一性,比如在常见的注册模块,我们需要确保一个手机号只能注册为一个账号。...但是我们不能确保同时有两个人使用...不同存储方案,解决方式不一样,这里以MySQL为例,我...
  • mysql修改表结构出现唯一索引冲突

    千次阅读 2021-01-19 08:08:29
    如果提示DB_ONLINE_LOG_TOO_BIG错误,则是由 2、索引排序空间:如果DDL操作涉及二级索引的创建,会在MySQL临时目录产生临时排序文件,将中间的排序结果写入文件,最终将内容合并到最终表或索引中,然后自动删除临时...
  • 但是当数据量和访问量剧增的时候,就会发现mysql变慢,甚至down掉,这就必须要考虑优化sql了,给数据库建立正确合理的索引,是mysql优化的一个重要手段。 索引的目的在于提高查询效率,可以类比字典,如果要查...
  • 唯一索引可作为数据的一个合法验证手段,例如学生表的身份证号码字段,我们人为规定该字段不得重复,那么就使用唯一索引。(一般设置学号字段为主键) 主键和唯一索引 主键保证数据库里面的每一行都是唯一的,比如...
  • MySQL基础学习第三课主要讲解了,增加和删除索引索引有普通索引唯一索引、单列索引、组合索引、全文索引)的使用。
  • sql 删除唯一索引unique

    千次阅读 2020-09-24 10:46:13
    mysql 删除唯一约束unique 比如,表bank中的字段user_id有约束unique(唯一索引),但是我们现在不需要这个约束了,想删除user_id的unique,下面的sql语句可以实现: alter table bank drop index user_id;
  • MySQL——删除索引

    万次阅读 2018-05-15 21:59:38
    1. 使用 ALTER TABLE 语句删除索引 语法格式: ALTER TABLE table_name DROP INDEX index_name;【例】删除 score 表中的名为 id 的普通索引。首先查看 score 表-------------------------+ | Table...
  • mysql 为表添加索引

    千次阅读 2021-01-19 02:47:45
    索引作用在索引列上,除了上面提到的有序查找之外,数据库利用各种各样的快速定位技术,能够大大提高查询效率。特别是当数据量非常大,查询涉及多个表时,使用索引往往能使查询速度加快成千上万倍。例如,有3个未...
  • mysql语句添加索引

    万次阅读 多人点赞 2019-01-08 15:33:03
    mysql索引学习----2----创建索引、修改索引删除索引的命令语句 mysql语句添加索引 创建或添加索引可以使用如下语句。 一、使用ALTER TABLE语句创建索引。 语法如下: 1.PRIMARY KEY(主键索引)  mysql&...
  • MySQL数据库中的索引(含SQL语句

    千次阅读 2022-04-20 19:17:01
    在执行这条SQL语句的时候,MySQL需要扫描全表来查询id = 7900的记录。 全表扫描就是从“数据页1”开始,向后逐页查询。对于少量数据来说,查询的速度会很快,但是,当随着数据量的增加,性能会急剧下降....
  • 主要介绍了MySQL查看、创建和删除索引的方法,结合实例形式较为详细的分析了MySQL索引的作用,以及查看、创建及删除索引的相关实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • 浅析mysql索引

    2020-12-16 00:34:16
    数据库索引是一种数据结构,目的是提高表的操作速度。可以使用一个或多个列,提供快速随机查找和访问记录的高效排序来创建索引。 要创建的索引,应当认为哪列将用于使SQL查询,创建对这些列的一个...唯一索引意味着两行

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 94,770
精华内容 37,908
关键字:

mysql删除唯一索引语句

mysql 订阅