前言

今天学习一下mysql

主键又称主码,是表中一列或多列的组合。主键约束要求主键的数据唯一,并且不允许为空。主键能够唯一的标识表中的一条记录,可以结合外键来定义不同数据表之间的关系,并且可以加快数据库查询的速度。主键和记录之间的关系如同×××和人间的关系,他们之间是一一对应的,主键分为两种类型:单字段主键和多字段联合主键。

1.单字段主键

单字段主键由一个字段组成,sql语句格式分为以下两种情况。

(1)在定义列的同时指定主键,语法规则如下:

字段名  数据类型 PRIMARY KEY [默认值]

2)在定义数据表tb_emp2,其主键为id,sql语句如下:

[constraint] primary key [字段名]

例:定义数据表tb_emp3,其主键为id,sql语句如下:

使用唯一性约束

唯一约束要求该列唯一,允许为空,但只能出现一个空值。唯一约束可以确保一列或者几列不出现重复值。

唯一性约束的语法规则如下:

(1)在定义完列之后直接指定一个约束,语法规则入下。

字段名  数据类型 unique

例:定义数据表tb_deptl,指定部门的名称唯一,sql语句如下:

使用默认约束

默认约束指定某列的默认值。如男性同学较多,性别就可以默认为‘男’。如果插入一条新的记录时没有为这个字段赋值,那么系统会自动为这个字段赋值为‘男’。

默认规则入下

字段名  数据类型 default 默认值

例:定义数据表tb_temp7,指定员工的部门编号默认为1111,sql语句如下:

以上语句执行成功后,表tb_temp7上的字段deotId拥有了一个默认的值1111,新插入的记录如果没有指定部门的编号,则默认都为1111.

设置表属性值自动增加

下数据库应该中,经常希望在每次插入新记录时,系统自动生成字段的主键值。可以通过为表主键添加auto_increment关键字来实现。默认的,在MySQL中auto_increment的初始值是1,每增加一条记录,字段值自动增加1.一个表只能有一个字段使用auto_increment约束,且该字段必须为主键的一部分。autoincrement约束的字段可以是任何整数类型(tinyint smallin int bigint等)。

设置表属性值自动增加语法规则如下:

字段名  数据类型  auto_increment

例:定义数据表tb_temp8,指定员工编号自动递增,sql语句如下:

上述例子执行后,会创建名称为tb_emp8的数据表。表tb_temp8中的id字段的值在添加记录的时候会自动增加,再插入记录的时候,默认的自增加字段id的值从1开始,每次添加一条新记录,该值自动加1

例子:执行如下语句:

语句执行后,tb_emp8表中增加3条记录,在这里并没有输入id的值,但系统已经自动添加该值,使用select命令查看记录,如图所示。

就到这里!

mysql5.7自增长主键_mysql 5.7 使用主键约束相关推荐

  1. mysql取出数据外键_mysql数据表有外键,应注意的几点(目前学习所获得的经验)...

    mysql : 1.有做外键的表子表和父表的引擎要一致才能添加数据:否则报外键约束错误 2.数据 类型要一致,不然添加补了 外键: 3.InnoDB和 myisam的区别(来源:PHP100中文网) ...

  2. mysql 引擎 外键_mysql的事物,外键,与常用引擎

    ### part1 时间类型 date YYYY-MM-DD 年月日 (出现日期) time HH:MM:SS 时分秒 (竞赛时间) year YYYY 年份值 (红酒年份 82年矿泉水) datet ...

  3. mysql 命令行 外键_MySQL命令行MySql外键设置详解

    第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键入命令mysql -uro ...

  4. mysql 命令行 外键_MySQL基本命令行MySql外键设置详解

    MySQL 命令行 一.mysql服务的启动和停止 net stop mysql net start mysql 二.登录mysql 语法如下:mysql  -u  用户名  -p  用户密码 键入命 ...

  5. mysql添加主键和删除主键_MySQL添加、删除主键的操作方法介绍

    mysql添加删除主键 操作是非常基本的操作,下面就将教您mysql添加删除主键的方法,如果您是刚刚接触mysql的新人,不妨一看. 修改的字符集: 在安装mysql5.0时可以设置好mysql的字符 ...

  6. mysql 创建表主键_MySQL创建表和主键约束

    1.创建表 在操作数据表之前,应该使用"USE 数据库名"指定操作是在哪个数据库中进行 主键约束(唯一标识) ****非空*** ****唯一*** ****被引用****(学习外 ...

  7. mysql 唯一键和主键_MySQL唯一键和主键

    用下面的命令创建一个表: CREATE TABLE people ( age INT NOT NULL, name CHAR(20) NOT NULL ); 我们可以多次插入一个项. 特别地,我们可以 ...

  8. oracle 主键_mysql 组合索引带主键ID的问题

    场景: mysql 5.7 某表 t_apply_info 上的2个索引,一个组合索引带了 主键字段 ID,另一个是同字段的单列索引 例如: KEY idx_1 (apply_serial_no,id ...

  9. 添加mysql组合主键_mysql怎么添加复合主键?

    在mysql中可以在创建表时添加复合主键,其语法规则是"PRIMARY KEY [字段1,字段2,-,字段n]",表示主键由多个字段联合组成. 主键约束即在表中定义一个主键来唯一确 ...

最新文章

  1. 对象是否要被回收(引用计数和可达性分析算法)
  2. python 获取第一个key_Python中常见的9大坑,看看你有没有遇到
  3. libevent项目分析(一) -- 准备阶段
  4. 【渝粤教育】国家开放大学2018年秋季 1374T班级管理 参考试题
  5. 知悉未来的趋势 ---- 小评 创新者的窘境
  6. 传感器学习——TB6612
  7. Ibeacon一维小项目
  8. win 11 微软 输入法 提示框 提示栏 消失 不见 不显示 找回 显示 可行性 解决方案
  9. 腾讯3轮面试都问了Android事件分发,最强技术实现
  10. 李德毅:未来交通——自动驾驶与智能网联
  11. 我的markdown编辑器
  12. tophat 原理_Tophat2比对原理及命令
  13. 新课程改革的理论基础究竟是什么
  14. 蓝桥杯十二届校内模拟赛 黄绿蓝小球方案(DFS)
  15. 皮肤问题与肠道的关系
  16. python 检查代码规范,类型标注
  17. h5+app打开pdf,图片,excel,world(亲测可用)
  18. 百度飞桨PaddleClas图像识别开源应用扫盲课笔记(一)
  19. oracle --sql 排名函数
  20. 仅需1秒!搞定100万行数据:超强Python数据分析利器!掌握了吗!

热门文章

  1. 触手可及的AI:2020十大人工智能APP揭榜时刻
  2. (实用详细)快速入门北斗短报文RDSS协议/北斗协议
  3. 五.家庭:亲情背后有理性
  4. 摩申网络2017年7月5日游戏新闻
  5. 【VS2017】【Windows SDK】【MSB803】找不到 Windows SDK 版本10.0.17134.0的解决办法
  6. 谷歌TPU研究论文:专注神经网络专用处理器
  7. android10原生动态壁纸,三星S10手机原生壁纸下载
  8. centos上安装使用xdotool
  9. c++计算两个三维向量之间的夹角
  10. hdu 5544 Ba Gua Zhen(线性基+dfs)