主键不仅能用于唯一标识表中的每一行数据,还能提高查询效率。当你执行一条查询语句时,MySQL会使用主键索引来快速查找数据,从而提高查询效率。
除了主键,MySQL还支持其他类型的索引,包括普通索引、唯一索引和全文索引。普通索引用于提高查询效率,唯一索引用于保证表中每一行数据的唯一性,全文索引用于全文搜索。
索引主要用于提高查询效率,它能帮助MySQL快速查找数据,避免扫描整张表。使用索引时,需要注意,索引会增加表的大小,同时也会增加插入、更新和删除 *** 作的时间,因此需要合理使用索引。
1.主键语法①创建时:create table sc (
studentnoint,
courseidint,
scoreint,
primary key (studentno) )
②修改时:ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名)
前提是原先没有设置主键。
2.外键语法
①创建时:create table sc (
studentnoint,
courseidint,
scoreint,
foreign key (courseid) )
②修改时:
ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[约束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列]
3.使用组合主键
如果一列不能唯一区分一个表里的记录时,可以考虑多个列组合起来达到区分表记录的唯一性,形式
①创建时:create table sc (
studentnoint,
courseidint,
scoreint,
primary key (studentno,courseid) )
②修改时:alter table tb_name add primary key (字段1,字段2,字段3)
前提是原来表中没有设置主键,若原先已有主键则会报错。
mysql设置UUID为主键需要先将数据类型设置为VARCHAR(36),然后插入数据的时候用UUID函数插入UUID。下面我用win10系统下的CMD命令行具体演示一下:
1、打开CMD,输入mysql -uroot -p命令连接mysql,如下图所示
2、通过create创建表,指定ID为varchar(36),并设置为主键,如下图所示
3、在插入数据的时候,调用uuid()函数往主键字段里插入uuid值,如下图所示
4、最后查询插入的数据就可以看到id主键列存放的是uuid类型了,如下图所示
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)