mysql索引和数据完整性答案_第5章MySQL索引与完整性约束.ppt

第5章MySQL索引与完整性约束

5.3.4 CHECK完整性约束 CHECK完整性约束在创建表的时候定义。可以定义为列完整性约束,也可定义为表完整性约束。 语法格式: CHECK(expr) 【例5.13】创建表student,只包括学号和性别两列,性别只能是男或女。 create table student ( 学号 char(6) not null, 性别 char(1) not null check(性别 in ('男', '女')) ); 5.3.4 CHECK完整性约束 【例5.14】创建表student1,只包括学号和出生日期两列,出生日期必须大于1990年1月1日。 create table student1 ( 学号 char(6) not null, 出生日期 date not null check(出生日期>'1990-01-01') ); 5.3.4 CHECK完整性约束 前面的CHECK完整性约束中使用的表达式都很简单,MySQL还允许使用更为复杂的表达式。例如,可以在条件中加入子查询,下面举个例子。 【例5.15】创建表student2,只包括学号和性别两列,并且确认性别列中的所有值都来源于student表的性别列中。 create table student2 ( 学号 char(6) not null, 性别 char(1) not null check( 性别 in ( select 性别 from student) ) ); 5.3.4 CHECK完整性约束 如果指定的完整性约束中,要相互比较一个表的两个或多个列,那么该列完整性约束必须定义表完整性约束。 【例5.16】创建表student3,有学号、最好成绩和平均成绩3列,要求最好成绩必须大于平均成绩。 create table student3 ( 学号 char(6) not null, 最好成绩 int(1) not null, 平均成绩 int(1) not null, check(最好成绩>平均成绩) ); 5.3.5 命名完整性约束 CONSTRAINT关键字用来指定完整性约束的名字,语法格式为: CONSTRAINT [symbol] symbol为指定的名字,这个名字在完整性约束的前面被定义,在数据库里这个名字必须是唯一的。如果它没有被给出,则MySQL自动创建这个名字。只能给表完整性约束指定名字,而无法给列完整性约束指定名字。 【例5.17】创建与【例5.8】中相同的xs1表,并为主键命名。 create table xs1 ( 学号 varchar(6) null, 姓名 varchar(8) not null, 出生日期 datetime null, constraint primary_key_xs1 primary key(姓名) ); 5.3.6 删除完整性约束 如果使用一条DROP TABLE语句删除一个表,所有的完整性约束就都自动被删除了。被参照表的所有外键也都被删除了,使用ALTER TABLE语句,完整性可以独立地被删除,而不必删除表本身。删除完整性约束的语法和删除索引的语法一样。 【例5.18】删除创建的表xs1的主键。 alter table xs1 drop primary key; 删除前后的效果如下: 第5章 MySQL索引与完整性约束 MySQL索引 5 . 1 5 . 2 MySQL索引创建 MySQL数据完整性约束 5 . 3 5.1 MySQL索引 5.1.1 索引及作用 1. 索引 索引是根据表中一列或若干列按照一定顺序建立的列值与记录行之间的对应关系表。在列上创建了索引之后,查找数据时可以直接根据该列上的索引找到对应行的位置,从而快速地找到数据。 例如,如果用户创建了xs表中学号列的索引,MySQL将在索引中排序学号列,对于索引中的每一项,MySQL在内部为它保存一个数据文件中实际记录所在位置的“指针”。因此,如果要查找学号为“081241”的学生信息,MySQL能在学号列的索引中找到“081241”的值,然后直接转到数据文件中相应的行,准确地返回该行的数据。 5.1.1 索引及作用 2.索引作用 在数据库系统中建立索引主要有以下作用: 快速读取数据; 保证数据记录的唯一性; 实现表与表之间的参照完整性; 在使用GROUP BY、ORDER BY子句进行数据检索时,利用索引可减少排序和分组的时间。 5.1.1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/523003.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2019年技术盘点容器篇(四):来自京东云的技术问答 | 程序员硬核评测

戳蓝字“CSDN云计算”关注我们哦!作者:刘晶晶据相关调研机构出具的报告数据显示,目前应用容器市场规模将从2016年的 7.62亿美元增⻓到2020年的27亿美元。显而易见,引入容器所展现的巨大灵活性有效推动了其采用速率,使企…

第2篇:Flowable启动

接上一篇: 第1篇:Flowable简介 https://blog.csdn.net/weixin_40816738/article/details/102875266 文章目录Flowable启动一、Flowable部署包分析1.1. tomcat版本1.2. WAR版本二、Flowable部署包启动2.1. tomcat版本2.2. war版本2.2.1 启动flowable-idm2…

“视网膜”重装来袭 AI技术为视频业务场景赋能

摘要: 阿里云解决方案总经理刘澍泉在主题为《云转型之路》的演讲中讲到,人工智能已经进入到产业化的阶段,我们可以看到,人工智能和更多垂直化行业、和细节产业的结合。人工智能和视频云的技术结晶——“视网膜”视频云智能视频解决…

读取mysql数据到select_MySQL数据库8(十三)高级数据操作之select指令

查询数据完整的查询指令:select select选项 字段列表 from 数据源 where 条件 group by 分组 having 条件 order by 排序 limit 限制select选项系统该如何对待查询得到的结果:1、all 默认的,表示保存所有的记录;2、distinct:去重…

Docker精华问答 | Docker镜像和Docker容器的关系?

毫无疑问,Docker成了近些年来最火热,甚至最具颠覆性的技术之一。国际上,所有泛云计算相关的公司,几乎都在某种程度上宣布支持并集成Docker。在2014年6月的DockerCon中,很多公司都分享了他们自己如何和Docker集成的故事…

大道至简,阿里巴巴敏捷教练的电子看板诞生记

摘要: 经历了从物理看板到电子看板的反复实践,阿里巴巴敏捷教练问菊体会最深的是“大道至简”,她说:“堆砌复杂的功能是容易的,提供简单方便的用户体验是困难的。”那么阿里巴巴的电子看板是如何诞生的呢?从…

第1篇:Flowable简介

采用springbootflowable快速实现工作流 文章目录一、什么是BPMN?二、什么是Flowable?2.1. 官方描述如下2.2. 大白话理解2.3. 官方在线文档2.4. Flowable官网2.5. Flowable开源代码仓库2.6. Flowable 最新版本(V6.4.2)截止目前下载地址2.6.1. Tomcat 版本…

mysql 全文索引 权重_MySQL中的全文索引

之前曾经发表了一篇关于SQL Server全文索引的文章。现在将MySQL全文索引的配置过程记录一下。Step1:创建Student表CREATE TABLE student (id INT(11) NOT NULL AUTO_INCREMENT,studentname VARCHAR(16) NOT NULL,address VARCHAR(256) DEFAULT 北京,gender TINYINT(…

阿里云启动API创新大赛 设视频技术为场景赛题

摘要: 阿里云API大赛一直以践行API经济为主旨,涌现出了很多基于API服务的优秀解决方案方案作品。本届API大赛主题为“智慧开放,互链解决”,基于广义的API经济理念,将不局限于API服务、工具、数据, 而是将AP…

BAT 力捧的 AI 项目再次爆发,这些程序员都受影响!

从2017年起,人工智能大火,几家国际大厂无论是微软 Build、Facebook F8 还是稍后的 Google I/O,莫不把“AI优先”的大旗扯上云霄。百度 AI 开发者大会,想必大家都被这次“宏颜祸水”惊呆了,但是在大会上我更关心的是李彦…

【2018新年巨献】像阿里巴巴一样高效工作!(含视频、文章、PDF文件)

摘要: Work Like Alibaba 通过线下沙龙、线上直播、内容输出三个维度,携手阿里云的典型企业用户,联合云栖社区、阿里云、钉钉阿里产品,将阿里的前沿产品技术理念、敏捷研发模式、智能运维方法、智能办公、移动办公等渐渐渗透到外部…

mysql_unbuffered_query pdo_php中mysql操作的buffer知识

php与mysql的连接有三种方式,mysql,mysqli,pdo。不管使用哪种方式进行连接,都有使用buffer和不使用buffer的区别。什么叫使用buffer和不使用buffer呢?客户端与mysql服务端进行查询操作,查询操作的时候如果获…

AliOS Things自组织网络安全认证架构概述

摘要: AliOS Things自组织网络(uMesh)结合阿里云Link ID设备身份认证平台为物联网嵌入式设备提供了自主安全认证授权接入无线mesh网络的解决方案,并且兼容IEEE802.1X端口控制访问协议和EAP(RFC3748)扩展认证…

屡试不爽的互联网架构三大马车!

戳蓝字“CSDN云计算”关注我们哦!作者:朱晔来源:https://www.cnblogs.com/lovecindywang/p/9617542.html这里所说的三架马车是指微服务、消息队列和定时任务。如下图所示,这里是一个三驾马车共同驱动的一个立体的互联网项目的架构…

如何像阿里巴巴一样高效跨企业项目协作

摘要: 在云效Work Like Alibaba第五期直播中,阿里巴巴研发协同平台高级技术专家,云效项目协作域的技术负责人余鹏(花名秉承)带来了《如何像阿里巴巴一样高效跨企业项目协作》的精彩分享。本次分享主要介绍阿里巴巴是如…

Flowable 6.4.1数据库自动建表错误 SQLSyntaxErrorException: Table 'flowable.act_id_property' doesn't exist

跟着官方Demo学flowable6.4.1,在内存里建表没问题,移到数据库建表就报错 请教了大神才知道,是因为之前本机上建过相同的表(Mysql8.0以上版本改成了false),解决办法就是设置默认在本数据库建表&#xff0c…

mysql csdn 知乎_CSDN 怎么样?

按照程序员的风格,无论是学习一门新语言还是搭建某个框架,习惯性上来就是一个HelloWorld,因为计算机的开山鼻祖当年用计算机向人类发出的第一声呐喊就是这么做的,但是今天却不得不得以再见CSDN来开启我个人博客的生涯。从标题中开…

MaxCompute - ODPS重装上阵 第一弹 - 善用MaxCompute编译器的错误和警告

摘要: MaxCompute (ODPS) ( 注1 )是阿里云自主研发的具有业界领先水平的分布式大数据处理平台, 尤其在集团内部得到广泛应用,支撑了多个BU的核心业务。 ODPS2.0除了持续优化性能外,也致力于提升SQL语言的用户体验和表达能力,提高广…

双十一丝般顺滑体验背后:阿里云洛神网络虚拟化系统揭秘

摘要: 摘要:2017年12月20日在北京云栖大会上,阿里云高级技术专家梵叶在计算与网络分论坛上做了主题分享《双十一丝般顺滑体验背后:阿里云洛神网络虚拟化系统揭秘》。为大家介绍了洛神系统的发展过程,系统架构&#xff…

Springboot-Flowable 快速开发工作流

文章目录一、什么是flowable?官方文档:二、技术选型三、Flowable与springBoot项目整合3.1. 添加依赖3.2. yml 文件配置3.3. 创建数据库3.4. 定义流程文件3.5. 测试controller3.6. 图片乱码处理四、启动项目,初始化表结构五、测试验证5.1. 创建…