MySQL主健、索引讲义
admin
2023-06-09 14:22:02
0次

下文内容主要给大家带来MySQL主健、索引讲义,这里所讲到的知识,与书籍略有不同,都是专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。 

<--目录-->

1)主健

   1、操作表的约束

     (1)非空约束

     (2)字段默认值

     (3)唯一约束

     (4)主健约束

     (5)添加主健(重点)

     (6) 自动增加  

2)索引

   1、创建普通索引(重点)

   2、创建唯一索引

   3、创建全文索引

   4、创建多列索引

   5、删除索引

MySQL主健、索引讲义

【主健】

1、操作表的约束

###########################################################################

约束关健字                       含义                                     #

not null                   约束的字段值不能为空                           #

default                    设置字段的默认值                               #

unique key (uk)            约束字段的值是唯一                             #

primary key (pk)           约束字段为表的主健,可以作为该记录的唯一标识   #

auto_increment             约束字段的值为自动增加                         #

foreign key (fk)           约束字段为表的外健                             #

###########################################################################


#设置非空约束

#解释:设置了非空约束,字段内容则不允许为空

mysql> create table t1(

    -> id int(20) not null,

    -> loc varchar(40)

    -> );


#设置字段的默认值

#解释:当为表中某个字段插入记录没有给他赋值,则系统会为这个字段插入默认值

mysql> create table t1(

    -> id int(20) not null,

    -> dname varchar(20) default 'cjgong',

    -> loc varchar(40)

    -> );


#设置唯一约束

#解释:数据库表中某个字段的内容不允许重复

mysql> create table t1(

    -> id int(20) not null,

    -> dname varchar(20) unique,

    -> loc varchar(40)

    -> );


#设置主健约束

#解释:用数据库表中的某个字段来标识所有记录

mysql> create table t1(

    -> id int(20) primary key,

    -> loc varchar(40)

    -> );


#添加主健

alter table student change id id int primary key auto_increment;


#设置字段值自动增加

#解释:当为数据库表中插入新记录时,字段上的值会自动生成唯一的ID

mysql> create table t1(

    -> id int(20) primary key auto_increment,

    -> loc varchar(40)

    -> );


【索引】

1、创建普通索引

#解释:普通索引不附加任何限制条件,可以创建在任何数据类型的字段上

mysql> create table t1(

    -> 字段名 数据库类,

    -> 字段名 数据库类,

    -> ... ...

    -> index  索引名(字段名)

    -> );


#创建表时创建普通索引

mysql> create table t1(

    -> id int(20) primary key auto_increment,

    -> loc varchar(40)

    -> index index_deptno(deptno)

    -> );


#在已经存在的表上创建普通索引

mysql> create index 索引名 on 表名(字段名)

mysql> create index index_deptno on t1(deptno)


#通过sql语句alter table创建普通索引

mysql> alter table table_name add index 索引名(字段名);

mysql> alter table t1 add index index_deptno(deptno);


2、创建和查看唯一索引

mysql> create table t1(

    -> 字段名 数据库类,

    -> 字段名 数据库类,

    -> ... ...

    -> unique index  索引名(字段名)

    -> );


#创建表时创建唯一索引

#解释:创建索引时,索引的值必段是唯一的

mysql> create table t1(

    -> id int(20) primary key auto_increment,

    -> loc varchar(40)

    ->  unique index index_depktno(deptno)

    -> );


#在已经存在的表上创建唯一索引

mysql> create unique index 索引名 on 表名(字段名)

mysql> create unique index index_deptno on t1(deptno)


#通过sql语句alter table创建唯一索引

mysql> alter table table_name add unique index 索引名(字段名);

mysql> alter table t1 add unique index index_deptno(deptno);


3、创建和查看全文索引

#解释:全文索引要关联在char、varchar、text字段上,以便快速查询数量较大的字符串类型的字段

mysql> create table t1(

    -> 字段名 数据库类,

    -> 字段名 数据库类,

    -> ... ...

    -> fulltext index  索引名(字段名)

    -> );


#创建表时创建全文索引

mysql> create table t1(

    -> id int(20) primary key auto_increment,

    -> loc varchar(40)

    ->  fulltext index index_depktno(deptno)

    -> );


#在已经存在的表上创建全文索引

mysql> create fulltext index 索引名 on 表名(字段名)

mysql> create fulltext index index_deptno on t1(deptno)


#通过sql语句alter table创建全文索引

mysql> alter table table_name add fulltext index 索引名(字段名);

mysql> alter table t1 add unique fulltext index index_deptno(deptno);


4、创建和查看多列索引

#解释:多列索引在创建索引时,所关联的字段是多个字段,虽然可以通过所关联的字段进行查询,但是只有查询条件中使用了所关联字段中的第一个字段,多列索引才会被使用

mysql> create table t1(

    -> 字段名 数据库类,

    -> 字段名 数据库类,

    -> ... ...

    -> fulltext index  索引名(字段名)

    -> );


#创建表时创建多列索引

mysql> create table t1(

    -> 字段名 数据库类,

    -> 字段名 数据库类,

    -> ... ...

    -> index  索引名(字段名1,字段名2)

    -> );


#创建表时创建多列索引

mysql> create table t1(

    -> id int(20) primary key auto_increment,

    -> loc varchar(40)

    -> index index_deptno(deptno,id)

    -> );


#在已经存在的表上创建多列索引

mysql> create index 索引名 on 表名(字段名1,字段名2)

mysql> create index index_deptno on t1(deptno,id)


#通过sql语句alter table创建多列索引

mysql> alter table table_name add index 索引名(字段名1,字段名2);

mysql> alter table t1 add index index_deptno(deptno,id);


5、删除索引

语法形式如下:

drop index 索引名字 on 表名字

mysql> drop index index_deptno on t1;

对于以上关于MySQL主健、索引讲义,如果大家还有更多需要了解的可以持续关注我们的行业推新,如需获取专业解答,可在官网联系售前售后的,希望该文章可给大家带来一定的知识更新。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...