MySQL学习--MySQL如何选择主键

 时间:2026-02-12 19:11:56

1、首先,在创建表的时候,我们可以通过 primary key 指定某列(或某几列)为主键,那么自然而言,MySQL 数据库为选定这一列(或多列)为该表的主键列:

create table test_primary_key (

id int,

name varchar(100),

primary key (id)

) engine = innodb charset = utf8;

通过 primary key 指定为主键的列,自动拥有了主键列的特性:唯一并且不可为空

MySQL学习--MySQL如何选择主键

MySQL学习--MySQL如何选择主键

2、其次,当我们没有通过 primary key 为表指定主键时,那么 MySQL 会获取第一个唯一并且不可以为空的列作为主键列:

create table test_primary_key1 (

id int ,

name varchar(100) not null,


unique (name)

) engine = innodb charset = utf8;

对于这个表,name 列因为是第一个非空并且唯一的列,而被选定为表的主键列。

MySQL学习--MySQL如何选择主键

3、如果上述两种方法都没有选定主键,则 MySQL 会自动为我们的表创建一个 6 个字节的隐藏列 row_id , 并且把这个列设定为我们这个表的主键列!

注意,因为 row_id 列是隐藏列,我们无法通过客户端查看到该列的信息!


  • LOL英雄联盟怎样转区,转区地址是什么
  • 使用CAD绘制生活垃圾综合处理厂
  • autocad基本命令画法-样条曲线命令画法
  • CAD使用轴、端点如何画椭圆
  • AUTOCAD里标注基线功能如何使用
  • 热门搜索
    休产假期间工资怎么算 10月10日是什么星座 手机如何贴膜 杨光的快乐生活电影 伊思眼霜怎么样 左眼下眼睑跳动是什么原因 gtx760怎么样 小猫的生活习性 如何消除疤痕 金乡生活网房屋出租