iis服务器助手广告
返回顶部
首页 > 资讯 > 数据库 >MySQL约束类型的示例分析
  • 675
分享到

MySQL约束类型的示例分析

2024-04-02 19:04:59 675人浏览 独家记忆
摘要

这篇文章主要介绍Mysql约束类型的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!约束 约束保证数据的完整性和一致性约束分为表级约束和列级约束约束类型包括:NOT

这篇文章主要介绍Mysql约束类型的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

约束 

  • 约束保证数据的完整性和一致性

  • 约束分为表级约束和列级约束

  • 约束类型包括:NOT NULL (非空约束),PRIMARY KEY(主键约束),UNIQUE KEY(唯一约束),DEFAULT(默认约束),FOREIGN(外键约束)

1.主键约束

  • PRIMARY KEY

  • 每张数据表只能存在一个主键

  • 主键保证记录的唯一性,主键的值不重复

  • 主键自动为 NOT NULL

举例,创建一张student表,将学号设置为主键创建完表之后,通过SHWO COLUMNS FROM student查看表结构

CREATE TABLE student(
id int PRIMARY KEY,
stu_name varchar(20)
);

2.唯一约束

  • UNIQUE KEY

  • 唯一约束可以保证记录的唯一性

  • 唯一约束的字段可以为空值(NULL)

  • 每张数据表可以存在多个唯一约束

举例,创建一个teacher表,id字段自增,tea_name唯一

CREATE TABLE teacher(
id int AUTO_INCREMENT PRIMARY KEY,
tea_name varchar(20) NOT NULL UNIQUE KEY
);

3.默认约束

  • DEFAULT

  • 当插入记录时,如果没有明确为字段赋值,则自动赋予默认值

举例,创建一张course表,默认上课时间为40分钟

CREATE TABLE course(
id int AUTO_INCREMENT PRIMARY KEY,
cou_name varchar(20) NOT NULL UNIQUE KEY,
time int DEFAULT 40
);
INSERT INTO course(cou_name) values('语文');

4.非空约束

  • NOT NULL

  • 强制列不能为 NULL 值,约束强制字段始终包含值。

  • 这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。

举例,在 "Persons" 表创建时在 Id列、name列创建 not null 约束:

create table Persons(
id int not NULL,
p_name varchar(20) not null, 
deparment varchar(20),
address varchar(20),
telNum varchar(20)
)
DESC Persons;

5.外键约束

  • FOREIGN KEY

  • 保持数据的一致性,完整性

  • 实现1对1或1对n关系

1.父表与子表必须使用相同的存储引擎,而且禁止使用临时表。
2.数据表的存储引擎只能是InnoDB
3.外键列和参照列必须具有相似的数据类型。其中数字的长度或是否有符号位必须相同;而字符的长度则可以不同。
4.外键列和参照列必须创建索引。如果外键列不存在索引的话,mysql将自动创建索引。

CREATE TABLE school(
id int AUTO_INCREMENT PRIMARY KEY,
sname varchar(20) NOT NULL
);
CREATE TABLE student2(
id int AUTO_INCREMENT PRIMARY KEY,
sid int,
FOREIGN KEY (sid) REFERENCES school(id)
);

外键约束的参照操作

  • CASCADE : 从父表删除或更新且自动删除或更新子表中匹配的行

  • 父表中被引用的列删除了某个数据,子表中删除对应数据的行

CREATE TABLE student3(
id int AUTO_INCREMENT PRIMARY KEY,
sid int,
FOREIGN KEY (sid) REFERENCES school(id) ON DELETE CASCADE
);
  • SET NULL:从父表删除或更新行,并设置子表的外键列为NULL。如果使用该项,必须保证子表列没有指定NOT NULL

  • 父表中删除数据,将子表中的引用设置为NULL

  • RESTRICT:拒绝对父表的删除或更新操作

  • NO ACTioN:标准sql的关键字,在MySQL中与RESTRICT相同

以上是“MySQL约束类型的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL约束类型的示例分析

本文链接: https://www.lsjlt.com/news/57693.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL约束类型的示例分析
    这篇文章主要介绍MySQL约束类型的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!约束 约束保证数据的完整性和一致性约束分为表级约束和列级约束约束类型包括:NOT ...
    99+
    2024-04-02
  • MySQL中唯一性约束与NULL的示例分析
    这篇文章给大家分享的是有关MySQL中唯一性约束与NULL的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言之前做的一个需求,简化描述下就是接受其他组的 MQ 的消息,...
    99+
    2024-04-02
  • MySQL数据库中数据约束的示例分析
    这篇文章主要介绍了MySQL数据库中数据约束的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。为了防止不符合规范的数据进入数据库,在用...
    99+
    2024-04-02
  • MySQL约束知识点实例分析
    这篇文章主要介绍“MySQL约束知识点实例分析”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL约束知识点实例分析”文章能帮助大家解决问题。1. 约束(con...
    99+
    2024-04-02
  • SQLite约束实例分析
    这篇“SQLite约束实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SQLite约束实例分析”文章吧。NOT NUL...
    99+
    2023-06-27
  • MySQL:数据类型和表的约束
    1. 数据类型 学习语言的时候首先就是学习数据类型,数据类型起着为变量合理分配空间的作用。数据库同样需要合理使用空间,其次还可以约束SQL语句的正确性,所以同样需要数据类型。 1.0. 数据类型分类 分类数据类型解释数值类型BIT (...
    99+
    2023-08-16
    mysql 数据库
  • MySQL约束与多表查询实例分析
    本篇内容主要讲解“MySQL约束与多表查询实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL约束与多表查询实例分析”...
    99+
    2024-04-02
  • MySQL六种约束的示例详解
    目录什么是约束外键约束什么是约束 作用于表上的规则,限制存储在表中的数据 约束分类: 约束描述关键字非空约束该字段数据不能为nullNOT NULL唯一约束该字段数据唯一不重复UNIQUE主键约束一行数据的唯一标识(非空...
    99+
    2023-02-21
    MySQL六种约束 MySQL约束
  • 数据库中sql完整性约束的示例分析
    小编给大家分享一下数据库中sql完整性约束的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!完整性约束  完整性约束是为了...
    99+
    2024-04-02
  • MySQL中常见的约束类型是什么
    这篇文章给大家分享的是有关MySQL中常见的约束类型是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 约束的字面意思就是规定或者限制某个事该如何去...
    99+
    2024-04-02
  • TypeScript泛型约束条件示例详解
    目录什么是泛型泛型的应用场景泛型约束(限制条件)泛型函数调用指定类型总结什么是泛型 两个值之间存在的对应关系,就可以用泛型来解决 泛型的应用场景 当一个函数的返回值的类型需要与此函数...
    99+
    2024-04-02
  • MySQL显式类型转换的示例分析
    小编给大家分享一下MySQL显式类型转换的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!CAST 函数在之前的文章中,我...
    99+
    2024-04-02
  • MySQL数据库约束及表的设计实例分析
    这篇“MySQL数据库约束及表的设计实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“MySQL数据库约束及表的设计实例...
    99+
    2023-07-02
  • MySQL数据库约束类型有哪些
    这篇文章主要介绍了MySQL数据库约束类型有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL数据库约束类型有哪些文章都会有所收获,下面我们一起来看看吧。数据库中的约束,顾名思义即是对插入数据库中的数...
    99+
    2023-06-27
  • oracle的约束类型有哪些
    在Oracle数据库中,常见的约束类型包括: 主键约束(Primary Key Constraint):用于唯一标识表中的每一行...
    99+
    2024-03-04
    oracle
  • MySQL中常见的六个约束类型详解
    目录前言1. not null2. unique3. default4. primary key自增主键auto_increment5. foreign key6. check总结前...
    99+
    2024-04-02
  • SQLite支持哪些类型的约束
    SQLite支持以下类型的约束: PRIMARY KEY约束:用于定义列作为表的主键。 UNIQUE约束:用于确保列中的所有...
    99+
    2024-04-09
    SQLite
  • Kubernetes资源类型的示例分析
    这篇文章给大家分享的是有关Kubernetes资源类型的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Kubernetes是一个开源的容器管理平台,用于部署和管理容器化的...
    99+
    2024-04-02
  • JavaScript中String类型的示例分析
    这篇文章将为大家详细讲解有关JavaScript中String类型的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。String字符串转义符:转义序列字符\b退格\...
    99+
    2024-04-02
  • js类型判断的示例分析
    这篇文章给大家分享的是有关js类型判断的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。js类型转换中typeof会将null也识别为object, 而且返回的类型比少,我...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作