首页 > 数据库 >数据库索引

数据库索引

时间:2024-05-16 20:32:25浏览次数:12  
标签:数据库 主键 索引 表名 table alter 字段名

一.什么是索引
1.索引是一种数据结构(定义)
2.索引是在表的字段上创建的
3.索引包含了一列值,这个值保存在一个数据结构中
二.索引作用
1.保证数据记录的唯一行
2.实现表与表之间的参照性
3.减少排序和分组的时间(如使用order by,group by 语句进行数据查询时)
4.可以使用索引快速访问数据库中特点信息
三.索引的缺点
1.索引需要占用物理内存
2.索引对表进行增删改查,索引要动态维护,降低数据的维护速度
四.索引的分类
1.普通索引
index 简称 mul 最基本的索引,没有任何限制
2.主键索引
primary key 简称pri 是一种唯一索引,不能为空
3.唯一索引
unique 简称 uni 是一种唯一索引可以为空,一个表可以多个唯一索引
以下只做了解
4.全文索引
5.组合索引
6.单列索引
7.聚焦索引
8.非聚焦索引

五.索引的用法

1.查看 索引
1.查看普通索引
show index from 表名

2.查看主键索引
show key from 表名

3.查看表的索引
desc 表名

4.创建普通索引

alter table 表名 add index 索引名(字段名 )(注意字段名和索引名一样时可以只写字段名)
create index 索引名 on 表名(字段值)
5.创建主键索引
alter table 表名 add primary key 索引名(字段名 )(注意字段名和索引名一样时可以只写字段名)
6.创建唯一索引
alter table 表名 add unique 索引名(字段名 )(注意字段名和索引名一样时可以只写字段名)

7.删除索引
alter table 表名 drop index 索引名(字段名 )(注意字段名和索引名一样时可以只写字段名)
删除主键索引
alter table 表名 drop primary key (主键唯一所以可以不用写字段名)
删除唯一索引
alter table 表名 drop unique 索引名(字段名 )
8.建表时创建
CREATE table 表名( 字段名 字段类型(字符长度) PRIMARY key ,字段名 字符类型(字符长度) UNIQUE )) ;

标签:数据库,主键,索引,表名,table,alter,字段名
From: https://www.cnblogs.com/fanshsh/p/18196675

相关文章

  • rm -rf误删Oracle数据库恢复---惜分飞
    联系:手机/微信(+8617813235971)QQ(107644445)标题:rm-rf误删Oracle数据库恢复作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]有客户把虚拟化环境中装有oracle数据库的linux操作系统,由于操作失误在/下面执行了rm-rf*,导致所有文件......
  • 数据库视图
    1.什么是视图?视图是一个虚拟表,它不在数据库中以存储的形式保存(本身不含数据),在使用视图的时候动态生成。2.视图的优点2.1.提高了查询效率数据库中的数据查询非常复杂,可以简化sql语句2.2安全有些保密字段,可以通过创建视图限制用户对某些字段进行操作。2.3简单不需要关心后买......
  • Python查询PostgreSQL数据库
    哈喽,大家好,我是木头左!Python与PostgreSQL的连接需要了解如何在Python中连接到PostgreSQL数据库。这通常涉及到使用一个库,如psycopg2,它是Python中用于PostgreSQL的最流行的适配器。安装psycopg2非常简单,可以通过pip进行安装:pipinstallpsycopg2安装完成后,可以使用以下代码......
  • DataX将MySql数据库数据同步到Oracle数据库
    1.下载DataX并解压(本地环境安装有python)DataX/userGuid.mdatmaster·alibaba/DataX(github.com) job文件夹下存放数据同步的json脚本{"job":{"setting":{"speed":{"channel":1}......
  • 国产数据库obase
    ##sample1文章1  OceanBase慢查询排查思路  https://open.oceanbase.com/blog/4030499840?_gl=1*1muepo8*_ga*MTg4MDgzMzI3Mi4xNzE1NDE3MjEw*_ga_T35KTM57DZ*MTcxNTg0MDQ3OS4xMi4xLjE3MTU4NDU2NTkuNjAuMC4w  本文汇总了项目实践中前辈的经验和笔者的理解,旨在帮助初......
  • lightdb数据库超时相关控制参数
    在业务开发中,通常因为代码不规范、中间件缺陷、DBA误提交批量SQL等原因,会导致服务端连接一直存在、但是实际上并未在执行的情况,从而导致数据库连接泄露。为了防止这种异常情况积压,lightdb中包含了多个参数用于控制超时相关的行为:lock_timeout:控制多久拿不到锁就自动超时并回......
  • openGauss 重建索引失败
    重建索引失败问题现象当Desc表的索引出现损坏时,无法进行一系列操作,可能的报错信息如下。index\"%s\"containscorruptedpageatblock%u",RelationGetRelationName(rel),BufferGetBlockNumber(buf),pleasereindexit.原因分析在实际操作中,索引会由于软件问题或者硬......
  • 玩转云端 | 数据库管理“大师”来了!
    数字时代,数据成为重要的生产要素。随着企业数据量的爆发式增长,管理和维护庞大的数据集合变得愈发复杂。数据库中存储了企业的核心数据资产,一款安全高效的数据库管理工具必不可少。天翼云数据管理服务(AOne-DMS),不仅能让你的数据库管理工作变得轻松简单,还能保障数据安全无忧! 数据安......
  • 在Linux中,如何进行数据库性能调优?
    在Linux中进行数据库性能调优是一个复杂但重要的任务,它涉及到多个方面,包括硬件、配置、查询优化、索引优化等。以下是一些建议的步骤和策略,帮助你进行数据库性能调优:1.硬件优化磁盘:使用SSD(固态硬盘)替代HDD(机械硬盘),以提高I/O性能。将数据库文件和日志文件放置在不同的物理磁......
  • 数据库中存储bool对象的数据,使用Bit和Integer有什么区别,性能上有多大的差异
    在数据库中存储布尔(Boolean)值时,常见的两种选择是使用BIT类型或INTEGER类型。两者在存储、性能和使用上的区别如下:1.BIT类型存储:BIT类型专门用于存储布尔值。通常,一个BIT字段只需一个比特位来存储0或1,这在存储空间上更为紧凑。性能:在大多数情况下,BIT类型的性能表......