iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL数据库唯一索引
  • 382
分享到

MySQL数据库唯一索引

数据库mysqlsqlqt教程qt开发 2023-09-06 13:09:37 382人浏览 薄情痞子
摘要

引言:什么是索引 创建索引是指在某个表的一列或多列上建立一个索引,以便提高对表的访问速度。创建索引有3种方式,分别是1.创建表的时候创建索引、2.在已经存在的表上创建索引和使用3.ALTER TABLE语句来创建索引。 本文福利,莬费领

引言:什么是索引

创建索引是指在某个表的一列或多列上建立一个索引,以便提高对表的访问速度。创建索引有3种方式,分别是1.创建表的时候创建索引、2.在已经存在的表上创建索引和使用3.ALTER TABLE语句来创建索引。

本文福利,费领取Qt开发学习资料包、技术视频,内容包括(c++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QSS,OpenCV,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击费领取↓↓

一、唯一索引概述

所谓唯一索引,就是在创建索引时,限制索引的字段值必须是唯一的。通过该类型的索引可以比普通索引更快速地查询某条记录。

二、创建唯一索引

创建表时创建唯一索引

CREATE TABLE tablename(    propname1 type1,    ……    propnamen type..n,    UNIQUE INDEX | KEY [indexname] (propnamen [(length)] [ ASC | DESC ] ) );

注意:

参数UNIQUE INDEX和UNIQUE KEY是用来指定字段为索引的,两者选择其中之一即可;

参数indexname是索引名字,可省略;

参数propnamen是索引对应的字段的名称,该字段必须为前面定义好的字段;

参数length是可选参数,其指索引的长度,必须是字符串类型才可以使用;

参数ASC和DESC都是可选参数,ASC表示升序排列,DESC表示降序排列,如果不指定,则为升序。

下面由sql语句演示

create table class (    id int ,    name varchar(128),    teacher varchar(64),    unique index name_index(name));

查看一下表的详细结构

使用insert插入一些数据,并通过唯一索引来进行检索

insert into class values(1,'一班','王老师'),(2,'二班','李老师');

 

由检索结果我们可知,这里的检索使用到了定义的唯一索引

当我们将检索方式改为模糊查找时

 

由检索结果我们可知,这里并没有使用定义的唯一索引。其实数据库本身有一些优化,并不是创建了索引就一定会用,至于什么时候检索会使用索引,就要看数据库的内部机制了,感兴趣的小伙伴可以深入学习一下数据库的内部系统;

当我们将唯一索引的字段加上unique约束后又会是什么情形呢?👇

唯一索引与unique约束共存时

当唯一索引与unique约束共同作用在同一字段时,唯一索引便显得有些重复;下面会用SQL语句演示👇;

创建一张包含唯一索引与unique约束共同作用的表

create table class(    id int,    name varchar(128) unique,    teacher varchar(64),    unique index name_index (name));

查看一下表的详细结构

插入与上面相同数据,并进行检索

由结果我们可得知,虽然表中存在唯一索引,但当我们进行检索时,Mysql还是根据唯一约束来检索。事实上,当我们给某给字段定义了唯一约束时,mysql为了保证唯一性,便会自动给这个字段添加唯一索引,而之后再手动给这个字段添加唯一索引便是一些多余操作

2、已存在的表上创建索引

2.1、使用create语句

CREATE UNIQUE INDEX indexname      ON tablename (propname [(length)] [ASC|DESC]);  

下面通过简单SQL语句演示

create table class(    id int ,    name varchar(128),    teacher varchar(64)); create unique index name_index     on class(name);

 

2.2、使用alter table语句

ALTER TABLE tablename ADD UNIQUE INDEX | KEY     indexname (propname [(length)] [ASC|DESC]);  

下面通过简单SQL语句演示

create table class(    id int ,    name varchar(128),    teaccher varchar(64)); alter table class add unique     index name_index (name);

 本文福利,费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QSS,OpenCV,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击费领取↓↓

来源地址:https://blog.csdn.net/m0_60259116/article/details/129691828

您可能感兴趣的文档:

--结束END--

本文标题: MySQL数据库唯一索引

本文链接: https://www.lsjlt.com/news/397094.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL数据库唯一索引
    引言:什么是索引 创建索引是指在某个表的一列或多列上建立一个索引,以便提高对表的访问速度。创建索引有3种方式,分别是1.创建表的时候创建索引、2.在已经存在的表上创建索引和使用3.ALTER TABLE语句来创建索引。 本文福利,莬费领...
    99+
    2023-09-06
    数据库 mysql sql qt教程 qt开发
  • 如何在MySQL中创建唯一索引来确保数据唯一性
    标题:MySQL中创建唯一索引来确保数据唯一性的方法及代码示例 在数据库设计中,确保数据的唯一性是非常重要的,可以通过在MySQL中创建唯一索引来实现。唯一索引可以保证表中某列(或列组...
    99+
    2024-03-15
    数据唯一性 mysql索引 唯一索引 sql语句
  • mysql怎么建唯一索引
    本篇文章为大家展示了mysql怎么建唯一索引,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。mysql怎么建唯一索引1.添加唯一索引 mysql>ALTER T...
    99+
    2024-04-02
  • 浅析GBase8s 唯一索引与非唯一索引问题
    唯一索引在列中不允许重复的值出现,可以用来定义和约束表中的一列或者多列组合值,在执行insert和update语句时需要检查唯一性。GBase8s中主键(PRIMARY KEY)会自...
    99+
    2024-04-02
  • mysql如何增加唯一索引
    这篇“mysql如何增加唯一索引”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“mysql如...
    99+
    2024-04-02
  • mysql怎么增加唯一索引
    本篇内容主要讲解“mysql怎么增加唯一索引”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql怎么增加唯一索引”吧! 三种增加...
    99+
    2024-04-02
  • mysql中唯一索引的作用
    mysql 唯一索引确保数据库表中的每一行都具有唯一的特定列值,从而:保证唯一性,防止重复值;提供快速查找,使用 b-tree 数据结构;维护数据完整性,减少冗余错误;优化空间利用率,避...
    99+
    2024-04-29
    mysql
  • mysql怎么创建唯一索引
    在MySQL中,可以使用CREATE INDEX语句来创建唯一索引。唯一索引是一种索引,其中每个索引值只能出现一次,用于保证表中的每...
    99+
    2024-04-09
    mysql
  • mysql如何删除唯一索引
    这篇文章主要讲解了“mysql如何删除唯一索引”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql如何删除唯一索引”吧! 删...
    99+
    2024-04-02
  • mysql如何创建唯一索引
    在MySQL中,可以通过以下语法创建唯一索引: CREATE UNIQUE INDEX index_name ON table_na...
    99+
    2024-04-02
  • 数据库主键约束、唯一约束和唯一索引的区别是什么
    本篇内容主要讲解“数据库主键约束、唯一约束和唯一索引的区别是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库主键约束、唯一约束和唯一索引的区别是什么”吧!主键约束(PRIMARY KEY...
    99+
    2023-06-29
  • MySQL唯一索引如何创建
    要创建一个MySQL唯一索引,可以使用以下语法: ALTER TABLE table_name ADD UNIQUE INDEX...
    99+
    2023-10-27
    MySQL
  • MySQL唯一索引指的是什么
    这篇文章给大家分享的是有关MySQL唯一索引指的是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。Mysql会在有新纪录插入数据表时,自动检查新纪录的这个字段的值是否已经在某个...
    99+
    2024-04-02
  • GBase 8s数据库主键约束、唯一约束和唯一索引的区别解析
    主键约束(PRIMARY KEY) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键,一个表上仅只能有一个主键;不建议更新主键;主键列上没有任何两行具有相同值(即重复值)...
    99+
    2024-04-02
  • mysql中怎么设置唯一索引
    在mysql中设置唯一索引的方法:1.命令行启动mysql服务;2.登录mysql;3.进入数据库;4.执行“ALTER TABLE `表名` ADD UNIQUE (`列名`);”创建唯一索引;在mysql中设置唯一索引的方法首先,在命令...
    99+
    2024-04-02
  • MySQL普通索引和唯一索引的深入讲解
    场景 1、维护一个市民系统,有一个字段为身份证号 2、业务代码能保证不会写入两个重复的身份证号(如果业务无法保证,可以依赖数据库的唯一索引来进行约束) 3、常用SQL查询语句:SELECT n...
    99+
    2024-04-02
  • MySQL数据库引擎和索引
    一、MySQL 数据库引擎:1. Innodb引擎:Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别。在SQL标准中定义了四种隔离级别,每一种级别都规定了一个事务中所做的...
    99+
    2024-04-02
  • MySQL唯一索引的作用是什么
    MySQL的唯一索引(Unique Index)用于确保表中的某列或某几列的值是唯一的。它可以防止重复的数据插入到表中,并且可以提高...
    99+
    2023-10-27
    MySQL
  • MySQL的几个概念:主键,外键,索引,唯一索引
    概念: 主键(primary key) 能够唯一标识表中某一行的属性或属性组。一个表只能有一个主键,但可以有多个候选索引。主键常常与外键构成参照完整性约束,防止出现数据不一致。主...
    99+
    2024-04-02
  • mysql中唯一的索引关键字是
    唯一索引关键字是 unique,用于确保表中指定列或列组合具有唯一值。创建唯一索引的好处包括:数据完整性、查询性能优化和唯一约束实施。 MySQL 中唯一的索引关键字 MySQL 中,...
    99+
    2024-04-29
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作