MySQL键值

作者: 陈公子ks | 来源:发表于2020-03-27 13:51 被阅读0次

键值类型:
index 普通索引
unique 唯一索引
fulltext 全文索引
primary key 主键
foreign key 外键
索引相当于书的目录,对表中的字段值进行排序
索引类型:
btree(默认)、b+tree、hash
索引优点:
创建索引可以保持数据库表中数据唯一性,可以加速数据查询速度;
索引缺点:
增删改查的时候,索引也要跟着调整,降低了数据的维护速度。
实际中,读的次数比修改的要多,所以索引有利于查询速度。
1.index
index 规则:一个表中可以有多个index字段,字段的值允许重复,且可以赋予null,通常会把查询条件的字段设置为index。index字段标志mul

mysql> create database db2;
mysql> create table db2.t1(name char(10),age int,sex enum("boy","girl"),index(name),index(sex));
mysql> desc db2.t1;

建表时,直接建索引

mysql> create index on t2(name);
mysql> drop index on t2(name);
mysql> show index from t2\G;

已有表建索引,删除索引,查看索引
2.primary ke
主键:字段值不允许重复,且不允许赋予null,一个表中只能由一个primary key,主键的标志PRI,主键一般会和auto_increment连用

mysql> create table t1(name char(10) primary key,age int,class char(7));
mysql> create tablbe t2(name char(10),age int,class char(7),primary key(name));

两种创建主键的方式

mysql> alter table t1 add primary key(字段名);
mysql> alter table t1 drop primary key;

已有表中添加主键,删除主键
复合主键:多个字段作为主键,多条记录时,复合主键字段值,不能相同

mysql> create table db2.pay(name char(10),class char(7),pay enum("yes","no"),primary key(name,class,pay));
mysql> desc pay;
mysql> create table t3(id int primary key auto_increment,name char(10),age tinyint unsigned,class char(7)default "abc");
mysql> desc t3;

与auto_increment连用 作用是让字段自增长的方式赋值

mysql> alter table t3 modify id int not null;
mysql> alter table t3 drop primary key;

先修改字段,再删除主键

相关文章

  • MySQL键值

    键值类型:index 普通索引unique 唯一索引fulltext ...

  • mysql自定义键值

    认识键值 在zabbix_agent配置文件内会有如下消息 我们在配置文件内可以找到zabbix的子配置文件 进入...

  • mysql-基础

    参考资料:MySQL 5.7 官方文档 1. 约束 Cosntraints 键值约束-Miss锦 NOT NULL...

  • Mysql多表查询

    Mysql多表查询 转自多表联合查询 内连接表间主键和外键相连,取得键值相同的记录.从双方的表中取得键值相同的记录...

  • 24《Spring Boot 入门教程》Spring Boot

    1. 前言 Redis 其实就是基于内存的键值型数据库,与 Oracle 、 SQL Server 、 MySQL...

  • Sql性能优化梳理

    前言本文主要针对的是关系型数据数据库MySql。键值类数据库可以参考最简大数据Redis。先简单梳理下Mysql的...

  • Sql性能优化梳理

    前言 本文主要针对的是关系型数据数据库MySql。键值类数据库可以参考最简大数据Redis。先简单梳理下Mysql...

  • Sql性能优化梳理

    前言 本文主要针对的是关系型数据数据库MySql。键值类数据库可以参考最简大数据Redis。先简单梳理下Mysql...

  • 给开发童鞋的索引学习漫画.md

    1、MySQL 以主键值构造一棵树,叶子节点存放着该主键值对应的的整行数据。此为聚簇索引。 2、其他的索引为辅助索...

  • 腾讯云数据库团队:MySQL AHI 实现解析

    MySQL 定位用户记录的过程可以描述为:打开索引 -> 根据索引键值逐层查找 B+ 树 branch 结点 ->...

网友评论

    本文标题:MySQL键值

    本文链接:https://www.haomeiwen.com/subject/xmtluhtx.html