版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Web前端开发(中级)(上册)SQL基本语法工业和信息化人才培养工程系列丛书1+X证书制度试点培训用书第三章01SQL语句简介数据定义语句,定义了不同数据库、表、列、索引等数据库对象。常用的语句关键字包括CREATE、DROP、ALTER等。DDL(DataDefinitionLanguages)语句数据操纵语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性。常用的语句关键字包括INSERT、DELETE、UPDATE、SELECT等。DML(DataManipulationLanguages)语句数据控制语句,定义了数据库、表、字段、用户的访问权限和安全级别。常用的语句关键字包括GRANT、REVOKE等。DCL(DataControlLanguages)语句SQL语句简介02MySQL基本数据类型整数类型的划分是根据存储空间的大小和表示范围的大小来划分的,具体如下表所示。MySQL基本数据类型数值类型CHAR与VARCHARBINARY与VARBINARYTEXT与BLOBENUMSETMySQL基本数据类型字符串类型MySQL提供了多种日期和时间类型,包括YEAR、TIME、DATE、DATETIME、TIMESTAMP,以供用户使用。MySQL基本数据类型日期和时间类型03数据插入INSERT语句就是插入语句,语法格式如下:INSERT INTO表名VALUES (值1,值2,…);此时,VALUES后面的值的排列要与该表中存储的列名排列一致。也可以指定要插入数据的列,语法格式如下:INSERT INTO表名(列1,列2,)VALUES (值1,值2,);此时,VALUES后面的值的排列要与INTO子句后面的列名排列一致。数据插入04数据修改表里的记录值可以通过UPDATE命令进行修改,语法格式如下:UPDATE表名SET列名新值WHERE列名一某值;例如,将emp表中ename值为“ssla”的记录的sal值从2000修改为4000,命令执行结果如下图所示。数据修改05数据删除如果记录不再需要,则可以用DELETE命令进行删除,语法格式如下:DELETE. FROM表名WHERE列名值;例如,将emp表中ename值为llis的记录全部删除,命令执行结果如下图所示。数据删除06数据查询最简单的查询方式是将记录全部选出,可以使用“*”表示要查询所有字段,如下图所示。数据查询常规查询在大多数情况下,用户并不需要查询表内所有记录,而是需要根据特定条件来查询部分数据,此时,可以用WHERE关键字实现条件查询。条件查询的语法格式如下:SELECT字段FROM表名WHERE条件;条件查询数据查询将emp表和dept表中的部门编号的集合显示出来,命令运行结果如下图所示。数据查询联合查询emp表中的deptno值有重复,使用DISTINCT进行不重复查询,命令运行结果如下图所示。数据查询不重复查询模糊查询在MySQL中,有时需要使用模糊查询,这时就需要用到LIKE关键字了,语法格式如下:SELECT字段FROM表名WHERE字段LIKE值;由于这里的值是模糊的,因此需要用到通配符,有以下两种匹配方式:“%”的使用;“_”的使用。数据查询在查询时,查询出来的结果集中记录个数可能有很多,通常我们会使用ORDERBY关键字来进行排序,语法格式如下:排序查询数据查询限制查询在使用查询语句时,经常要返回前几条或者中间某几条数据,这时就需要使用LIMIT关键字进行限制查询,语法格式如下:SELECT字段LIMIT起始偏移量,行数;数据查询在很多情况下,用户需要进行一些汇总操作,如统计地区数、商品数等,这时就要用到SQL的聚合操作了。聚合语句的语法格式如下:聚合数据查询连接内连接:在使用数据库查询语句时,单表的查询有时不能满足项目的业务需求,在项目开发过程中,有很多需求都要涉及多表的连接查询。左连接与右连接:左连接是指以左边的表的数据为基准,去匹配右边的表的数据。如果匹配到相应数据,则显示匹配结果;如果匹配不到相应数据,则显示为NULL.左连接的关键字是LEFTJOIN。数据查询07事务假设这样一个场景:我们去买东西,一般都是先付钱,卖家收到钱再发货。将这个场景用数据库来表示就是,第一步,从用户的账户中减去一部分金额;第二步,把减去的金额添加到商家的账户上。但是万一遇到特殊的情况,我们已经成功完成了第一步,从用户的账户中扣除了钱,这时突然停电,系统出现了故障,没有完成第二步。这就产生了一个问题:用户账户的钱被扣除了,商家账户中却没有增加扣除的钱。事务事务概述3.隔离性(lsolation)4.持久性(Durability)数据库的事务具有四大特性-ACID。1.原子性(Atomicity)2.一致性(Consistency)事务事务的四大特性事务提交我们仍然回到本节开始提到的场景,用户去商家买东西,从用户的账户中扣除钱后发生了系统故障,导致扣钱成功但商家未收到钱。采用事务的解决办法分为两步:第一步,执行扣除钱和增加钱操作;第二步,将执行结果“提交”给数据库。事务与事务提交结合使用的,是事务的回滚操作。当事务中多条SQL语句在执行过程中由于系统故障等原因,导致部分语句执行不成功时,事务中已执行成功的语句结果应该回退至未执行状态,这个操作称为事务回滚。事务回滚事务08本章小结本章主要介绍了SQL基本语法,从SQL语句的使用范围和类型方面引入,介绍了数据的“增删改查”四种操作语句的语法结构与实际使用方法,其中,数据查询语句除了介绍常规查询。还介绍了多种特定条件下的查询方式,丰富了查询应用场景。除此之外,本章还介绍了数据库中事务的概念与四大特性,以及事务的使用方法。本章小结Web前端开发(中级)(上册)索引、分区与视图工业和信息化人才培养工程系列丛书1+X证书制度试点培训用书第四章01数据库索引数据库的索引可以划分为几种类型,如下表所示。数据库索引索引概述BTree索引与Hash索引BTree索引BTree索引与Hash索引:MySQL的BTree索引是建立在n叉树(BTree)之上的一种索引方式。Hash索引:MySQL的哈希索引(Hash索引)是基于哈希表实现的,只有精确匹配索引列的查询才有效,对于每一行数据,存储引擎都会对所有的索引列计算一个哈希码(Hashcode)。数据库索引索引的建立和使用索引的建立有多种时机,可以在创建表的同时进行创建,也可以在创建表之后进行添加。在创建表的同时创建索引的语法格式如下:数据库索引创建唯一索引不仅可以提高访问速度,还可以避免数据出现重复。唯一索引可以有多个但索引列的值必须唯一,同时索引列的值允许有空值。如果能确定某个数据列只包含彼此各不相同的值,则在为这个数据列创建索引时应该使用关键字UNIQUE,并将其定义为唯一索引。数据库索引唯一索引和联合索引使用方法:在SELECT语句前加上EXPLAIN,如下图所示。数据库索引EXPLAIN语句执行结果如下图所示。数据库索引EXPLAIN语句分析案例MySQL优化MySQL的优化大体可以分为3部分,即索引的优化、SQL语句的优化和表的优化。数据库索引02数据库分区MySQL分区的优点和缺点如下表所示。数据库分区分区概述我们来看以下示例,创建一个QQ空间的日志表,建表语句如下:数据库分区MySQL分区的依据01020304RANGE分区HASH分区LIST分区KEY分区数据库分区分区类型创建test表,并以日期作为分区列。建表语句如下:数据库分区RANGE分区LIST分区LIST分区类似于RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进行分区。LIST分区通过使用“PARTITIONBYLIST(expr)”来实现,其中“expr”是某列值或基于某列值返回一个整数值的表达式,然后通过“VALUESIN(valuelist)”的方式来定义每个分区,其中“valuelist”是一个通过逗号分隔的整数列表。使用LIST分区的注意事项如下所述。数据库分区HASH分区HASH分区是基于用户定义的表达式的返回值进行选择的分区,该表达式使用将要插入到表中的这些行的列值进行计算。这个函数可以包含MySQL中有效的、产生非负整数值的任何表达式。数据库分区KEY分区允许多列,而HASH分区只允许一列。如果在有主键或唯一键的情况下,KEY分区列可不指定,默认为主键或唯一键,如果没有主键或唯一键,则必须显性指定列。KEY分区对象必须为列,而不能是基于列的表达式。KEY分区和HASH分区的算法不一样
。数据库分区KEY分区03数据库视图视图是从一个或几个基本表(或视图)中导出的虚拟的表。在系统的数据字典中仅存放视图的定义,不存放视图对应的数据。视图是原始数据库数据的一种变换,是查看表中数据的另外一种方式。可以将视图看作一个移动的窗口,通过它可以看到感兴趣的数据。视图概述数据库视图创建视图在数据库中,视图的创建语句的语法格式如下:数据库视图修改视图修改视图可以使用ALTER语句或CREATEORREPLACE语句。ALTER语句的语法格式如下:数据库视图删除视图可以使用DROP语句,用户可以一次删除一个或多个视图,语法格式如下:删除视图数据库视图查询视图包括查询数据库中包含哪些视图,以及查询某一视图中包含哪些数据内容等。其中,查询视图中包含哪些数据的方式与查询表数据一样。可以使用SELECT语句,这里不再赘述,只简要介绍查询数据库中包含哪些视
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土方调配协议书
- 借款保证合同模板2024年
- 跨境补偿贸易合同实务指导
- 国际贸易运输合同2024年
- 个体门面出租协议书
- 2024年新款服装生产合作协议
- 口罩合同书2024年
- 无子女无财产离婚协议书的编写技巧
- 2024年服装供货长期合同
- 家庭灯具采购协议案例
- 某单位物业服务项目投标方案
- 35KV场内集电线路工程强条执行检查表
- 【多旋翼无人机的组装与调试5600字(论文)】
- 减速机知识及维修课件
- 内部项目跟投协议书(正)
- 一年级下册英语教学设计-Unit 4 food Lesson1- 人教新起点
- 5000头奶牛养殖场新建项目环境评估报告书
- 建设美丽中国通用课件
- 花卉园艺师国家职业资格二级理论知识试卷
- 光伏项目概算计算表
- 植物检疫学复习题及答案(详细)
评论
0/150
提交评论