MySQL约束类型:

主键约束、唯一键约束、外键约束、非空约束、表属性自动增加、设置表字段的默认值

1、主键约束(关键字:PRIMARY KEY):

主键是表的一个特殊字段。该字段能唯一的标识该表中的每条信息。主键和记录的关系,如同***和人的关系。主键用来标识每个记录,每个记录的主键值都不同。***是用来表明人的身份,每个人都具有唯一的***号。设置表的主键旨在创建表时设置表的某个字段为主键

主键的主要目的是帮助MySQL以最快的速度查找到表中的某一条信息。主键必须满足的条件就是主键值必须唯一,表中任意两条记录的主键字段的值不能相同;主键的值是非空值。主键可以是单一字段,也可以是多个字段的组合。

简单来讲:如果一个字段定义为主键,该字段值必须是唯一的,且不能为空。每张表只能定义一个主键,但是可以定义多个字段组合为一个主键类型。

2、唯一键约束(关键字:UNIQUE):

唯一性是指所有记录中该字段的值不能重复出现。设置表的唯一性约束是指在创建表时,围标的某些特殊字段加上UNIQUE约束条件。唯一性约束将保该值在UNIQUE字段是唯一的。

简单来讲:如果一个字段定义为唯一键,该字段值必须是唯一的,可以为空。每张表可以定义多个唯一键。

3、外键约束(关键字:CONSTRAINT、FOREIGN KEY、REFERENCES):

外键是表的一个特殊字段。主要是建立表之间的关联关系。外键必须依赖数据库已存在的父表的主键。

简单来讲:如果一个字段定义为外键,该字段则需要依赖另一张表的主键,这样就与另外一张表关联起来。另外一张表就是此表的父表,外键可以为空值。且子表外键数据类型必须和父表数据类型一直。

4、非空约束(关键字:NOT NULL):

保证该字段插入的值不能为空。

5、表属性自动增加(AUTO_INCREMENT):

字段数值自动增加,不会出现重复值,而且一般不会为空。

6、设置表字段的默认值(关键字:DEFAULT):

在创建表的时候可以指定表中字段的默认值。如果插入一条新的记录时没有为这个字段赋值,那么数据库系统会自动为这个字段插入默认值。

mysql 类型_MySQL-约束类型相关推荐

  1. Mysql数据库---约束类型_MySQL约束类型及举例介绍

    约束 约束保证数据的完整性和一致性 约束分为表级约束和列级约束 约束类型包括:NOT NULL (非空约束),PRIMARY KEY(主键约束),UNIQUE KEY(唯一约束),DEFAULT(默认 ...

  2. mysql 空间 类型_MySQL空间类型测试

    Mysql空间类型介绍: MySQL支持空间扩展,允许生成.保存和分析地理特征.这些特征可用于MyISAM.InnoDB.NDB.BDB和ARCHIVE表(但是,ARCHIVE引擎不支持索引功能,因此 ...

  3. mysql 表 类型_mysql表类型

    MySQL支持6种不同的表类型:BDB.InnoDB.HEAP.ISAM.MERGE以及MyISAM.其中 BDB,InnoDB单独属于一类,称为"事务安全型"(transacti ...

  4. mysql 大二进制类型_MySql 二进制类型

    MySQL二进制类型 二进制类型是在数据库中存储二进制数据的数据类型.二进制类型包括BINARY.VARBINARY.BIT.TINYBLOB.BLOB.MEDIUMBLOB和LONGBLOB等. M ...

  5. mysql密码字段类型_MySQL 字段类型

    数值 MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数. 许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 MySQL 允许我们指定 ...

  6. mysql字符类型_MYSQL字符类型大全

    ============= MySQL数据类型 ============= 整数类型 ======== 整数类型 字节数 无符号范围 有符号的范围 TINYINT 1 0~255 -128~127 S ...

  7. mysql密码字段类型_MySQL字段类型最全解析

    **前言:** 要了解一个数据库,我们必须了解其支持的数据类型.MySQL 支持大量的字段类型,其中常用的也有很多.前面文章我们也讲过 int 及 varchar 类型的用法,但一直没有全面讲过字段类 ...

  8. mysql age字段类型_mysql 列类型

    列类型 整型 tinyint,smallint,mediumint,int,bigint  (可选参数unsigned ,(M,zerofill,结合使用才有意义)) 浮点型 float(可选参数D, ...

  9. mysql表类型_MySQL表类型的选择

    P131)创建表时的默认引擎是InnoDB,如果要修改默认的存储引擎,可以在参数文件中设置default-table-type.查看当前的默认存储引擎,可以使用一下命令: 创建新表的时候可以通过增加E ...

  10. ruhr启动mysql数据库_Mysql表类型(存储引擎)的选择

    以下内容转载自:https://www.cnblogs.com/jswang/p/6923911.html 7.1 mysql存储引擎概述 插件式存储引擎是mysql数据库最重要的特性之一,用户可以根 ...

最新文章

  1. 零基础入门学习Python(18)-全局变量与局部变量
  2. java根据日期判断星座_根据日期计算星座
  3. VTK:Utilities之SparseArray
  4. 汽车位置服务之kafka集群配置注意事项
  5. 2018.01.25-现货黄金复盘
  6. Linux 命令(86)—— head 命令
  7. java 导出数据到excel
  8. 钩子编程(HOOK) 安装进程内键盘钩子 (1)
  9. 【bzoj1999】[Noip2007]Core树网的核 树的直径+双指针法+单调队列
  10. php eval 禁止,php5.x禁用eval的操作方法
  11. 数据处理常用方法(python)
  12. STM32F103C8T6 0.42寸的OLED屏幕IIC例程
  13. SageMath: 符号计算
  14. 相似度论文系列-1:入门方法Towards a Unified Multi-Dimensional Evaluator for Text Generation
  15. 博弈论(Nim游戏、有向图游戏之SG函数)
  16. 守护线程------setDaemon(true)设置成守护线程
  17. c语言实现图片过渡效果飞入,用css3实现转换过渡和动画效果
  18. 使用openssl 生成RSA、SM2、ECC的P12证书的方法
  19. 电子邮箱注册,适合公司用的电子邮箱
  20. ACCESS 2003数据库的创建

热门文章

  1. selenium作业题
  2. 在命令窗口执行java文件时,提示找不到或无法加载主类
  3. Linux基础之bash脚本进阶篇-循环语句(for,while,until)
  4. ACE-Task结构介绍(二)——消息块ACE_Message_Block结构的分析
  5. 以新ICT构建全联接的电力物联网,迈入能源智能时代
  6. 《OpenGL ES 3.x游戏开发(上卷)》一1.5 Android应用程序运行的机制
  7. python语法笔记(六)
  8. 在Windows下搭建SVN服务器并且集成到 Eclipse 开发环境中
  9. 不同时间段的欢迎语言
  10. asp.net的控件视图状态