- 博客(34)
- 收藏
- 关注
原创 MYSQL数据库进阶篇——视图
视图是一种虚拟的表,视图中的数据并不在数据库中真实存在,也就是说,视图只保存查询的sql逻辑,不保存查询结果。1.语法2.检查使用with check option子句创建视图时,MYSQL会检查正在更改的每一行(增删改),为了符合定义。可以基于另一个视图来创建新视图,MYSQL会检查两个视图的一致性,有两个选项:①CASCADED②LOCAL 默认是①CASCADED:3.视图更新要使视图可更新,视图的行和基础表的行之间必须是一对一的关系,如果包含以下任何一项,视图不可更新
2024-09-11 23:44:16 290
原创 MYSQL数据库进阶篇——存储过程
用户定义变量指用户自己定义的变量,用户变量不用提前声明,直接用“@变量名”使用即可,作用域为当前连接。例如:用户定义的变量不需要声明或初始化,默认为null;例如:3.局部变量局部变量是根据·定义在局部生效的变量,通过declare声明,可用作存储过程内的局部变量和输入参数,范围在begin...end之间。
2024-09-11 23:43:57 584
原创 MYSQL数据库进阶篇——触发器
强制实施业务规则:通过在触发器中编写逻辑,可以在特定的表上自动执行业务规则,例如检查输入的数据是否符合要求,或者限制某些操作的执行。数据同步:通过在触发器中编写逻辑,可以在多个表之间自动同步数据,例如在一个表中插入一条数据时,自动在另一个表中插入相应的数据。复杂的默认值计算:通过在触发器中编写逻辑,可以在特定的表上自动计算默认值,例如根据其他字段的值计算出一个新的字段的值。数据校验:通过在触发器中编写逻辑,可以在特定的表上自动校验数据的正确性,例如检查数据的唯一性、完整性等。
2024-09-11 23:42:48 288
原创 MYSQL数据库——InnoDB存储引擎
Change Buffer 针对于非唯一二级索引页,在执行DML语句时,如果这些数据Page没有在Buffer Pool中,不会直接操作磁盘,而会将数据变更存在更改缓冲区(Change Buffer)中,在未来数据被读取中,再将数据合并恢复到Buffer Pool中,再将合并后的数据刷新到磁盘中。在磁盘中,InnoDB 存储引擎将 数据、索引、表结构和其他缓存信息等 存放的空间称为 表空间(Tablespace),它是 物理存储中的最高层,由 段Segment、区Extent、页Page、行Row 组成。
2024-09-11 23:42:16 989
原创 MYSQL数据库——MYSQL管理
用于服务器生成的二进制日志以二进制格式保存,所以如果想要检查这些文本的文本格式,就会用到mysqlbinlog日志管理工具。备份内容包含创建表,及插入表的SQL语句。mysqlshow客户端对象查找工具,用来很快地查找存在哪些数据库、数据库中的表表中的列或者索引。mysqlimport是客户端数据导入工具,用来导入mysqldump加-T参数后导入的文本文件。这是一个执行管理操作的客户端程序,可以用它来检查服务器的配置和当前状态,创建并删除数据库等。不是指mysql服务,而是指mysql的客户端工具。
2024-09-11 23:41:15 395
原创 计算机网络第三章——数据链路层
数据链路层是计算机网络中的一层,位于网络协议栈的第二层。它的主要任务是在物理层提供的传输介质上实现可靠的数据传输,并为网络层提供一个透明的通信通道。数据链路层通过封装数据成为帧(Frame),在网络节点之间传递和管理这些帧。:链路是指从一个节点到相邻节点的一段物理线路,中间无任何节点。:把实现控制数据运输的协议的硬件和软件加到链路上,功成数据链路。注:网卡和其相应的软件驱动程序实现了这些协议,一般都包含物理层和数据链路层的功能。:数据链路层对等实体间在水平方向进行逻辑通信的协议数据单元(PDU)
2023-12-31 13:19:40 1004
原创 计算机网络第五章——传输层
数据链路层以及网络层共同解决了将主机通过异构网络互联起来所面临的问题,实现了主机与主机之间的通信。而传输层的任务就会是传输层是主机才有的层次。
2024-09-24 14:18:20 1008
原创 error:Framework ‘Pods_xxx‘ not found解决方法
报错“Framework Pod_xxx.framework找不到”通常意味着你的项目正在尝试链接或使用一个名为。1.点击项目蓝色图标,在左侧Target部分,点击你当前的项目。的框架,但是这个框架并没有被正确地添加到项目中。
2024-09-13 21:53:30 588
原创 iOS开发----轮播图实现
()return pc}()在代理方法的第二个实现方法里我们所使用的cell是自定义的,这里的cell是UICOllectionViewCell轮播图3-CSDN直播。
2024-09-13 21:31:02 1183
原创 MySOL数据库进阶篇——存储引擎
存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,不是基于数据库的,所以存储引擎也被称为表类型。常见的MySQL存储引擎包括以下几种:1.InnoDB存储引擎InnoDB存储引擎是MySQL中最常用的一个存储引擎,也是默认的存储引擎。它支持ACID事务,具有行级锁定和外键约束等特性,适合于应用于事务性和高并发的应用程序。InnoDB支持数据的热备份和恢复,并提供了高效的缓存机制。2.MyISAM存储引擎MyISAM不支持事务,并且对于更新操作会锁定整个表,但是在。
2024-09-12 15:58:42 937
原创 MySQL数据库基础篇——事务
事务就是由单独单元的一个或多个sql语句组成,在这个单元中,每个sql语句都是的。而整个单独单元是作为一个的整体存在。往通俗的讲,事务就是一个整体,里面的内容要么都执行成功,要么都不成功。不可能存在部分执行成功而部分执行不成功的情况。对于MySQL存储引擎,Innodb支持事务,而myIsam等不支持事务。
2024-09-12 15:58:12 454
原创 MYSQL数据库基础篇——多表查询
所以在多表查询中,我们往往需要消除笛卡尔积。我们可以给多表查询加上连接查询的条件即可。2.外连接:左外连接:查询左表所有数据,以及两张表交集部分数据;右外连接:查询右表所有数据,以及两张表交集部分数据。顾名思义,即可以多张表一起查询,只需在select查询语句后面添加多张表名即可。这是因为多表查询得到的是多表组合的集合,这种现象称为笛卡尔积。3.自连接:当前表与自身的连接查询,自连接必须使用表别名。实现: 在多的一方建立外键,指向一的一方的主键。1.内连接:相当于查询A、B交集部分数据。
2024-09-11 23:48:25 384
原创 MYSQL数据库基础篇——DDL
DDL:DDL是数据定义语言,用来定义数据库对象。输入;得到结果:输入;例如执行下面语句:输入然后展示数据库即可得到结果:注意:创建的数据库名必须与已创建的数据库不同名,不然会报错。如果在数据库名称前加上if not exists可以不报错,也不会创建。当然,也可以在创建的数据库名后面添加数据库默认字符集,例如:输入:[]里面的表示可以省略。输入:然后我们输入:可以查询当前使用的数据库:例如:例如:例如:例如:例如为上述的test表中添加date类型的time,注释为“考试时间”:例如:在上述建表中,用到了
2024-09-11 23:46:14 553
原创 MYSQL数据库基础篇——MYSQL的安装与使用
mysql -u表示用于登录的用户名,后面的root就是用户名称,之前讲到,安装mYSQL时默认用户名是root,-p表示指定密码,即登录密码。首先打开命令提升符,并输入net start mysql80可以启动,输入net stop mysql80可以停止。这里选择第一个,当然,有可能你的版本下的MYSQL并没有这个选项,那么我们可以选择。注意:如果报以下错误,则可以尝试通过管理员的方式打开命令提示符进行操作。输入mysql -u root -p,然后输入密码就好了。然后显示下面的界面说明连接成功了;
2024-09-11 23:45:23 596
原创 计算机网络第二章——物理层
物理层的作用:尽可能地屏蔽掉传输媒体和通信手段的差异(解决各种传输媒体上传输比特0和1的问题),使得物理层上面的数据链路层感觉不到这些差异,这样数据链路层只需要考虑如何完成本层的协议和服务,而不必考虑网络具体的传输媒体和通信手段是什么。物理层的主要任务:确定与传输媒体接口有关的一些特性,有以下几种:1.机械特性:指明接口所用的接线器的形状与尺寸,引脚数目和排列,固定和锁定装置等2.电气特性:规定在接口电缆各条线上传播比特流时电压的范围3.功能特性:接口电缆各条信号线的作用。
2023-12-01 21:12:01 80 1
原创 计算机网络第一章——概述
路由器就是进行分组交换的关键构件,路由器收到一个分组,然后先暂时存储,检查其首部,查找转发表,按照首部中的目的地址,找到合适的接口转发出去,把分组交给下一个路由器,这样一步步地以存储转发的方式,把分组交付最终的目的主机。因为计算机数据传送是突发式的,因此电路交换的通信线路利用率很低,只有当连续发送大量数据且数据传送时间远大于连接时间时,才推荐使用电路交换。在协议的控制下,两对等实体在水平方向上的逻辑通信使本层能向上一层服务,实现本层协议需要使用下一层提供的服务,即:协议水平,服务垂直。
2023-12-01 20:20:35 387 1
原创 C语言之文件操作
存储在内存储器的集合,一般称为表,如数组;而存储在外部介质上的信息集合称为文件,如磁盘文件。文件通常是驻留在外部介质(如磁盘等)上的,,能够做到永久保存,使用时才调入内存。文件的分类:从用户的角度:普通文件和设备文件普通文件程序文件:源文件(后缀为.c)、目标文件(后缀为.obj)、可执行程序(.exe);数据文件:一组待输入处理的原始数据,或者是一组输出的结果。设备文件:与主机相连的各种外部设备,如显示器、打印机、键盘等。
2023-03-14 12:16:07 486
原创 C语言之自定义类型——结构体------位段
位段的声明和结构体成员类似,不过:1.位段的成员必须是int、unsigned/signed int、或char;2.位段成员名后面要有:加数字。如struct S{int a:3;int b:5;int c:7;}s;此时的s就是位段类型,那么s的大小是多少呢?
2023-03-01 23:12:54 101
原创 C语言之自定义类型——结构体详解
结构体变量的定义一般是结构体加变量名,如:这里的A就是结构体变量名,并且在这里我们还对A变量进行了整体初始化(初始化会一一对应)它的方式有多种,如:当然如果我们觉得每次定义都要写这么长很麻烦,我们可以用typedef进行类型重定义,如:这里运用typedef 把struct book结构体类型转名为BK,也能实现相同的效果。这里讲到typedef,那就不得不与#define 进行对比了,这两者还是有区别的。
2023-02-15 22:22:07 637
原创 C语言之汉诺塔问题
在一块铜板装置上,有三根杆(编号TOWER1、TOWER2、TOWER3),在A杆自下而上、由大到小按顺序放置10个金盘(如图1)。操作规则:每次只能移动一个盘子,并且在移动过程中三根杆上都始终保持大盘在下,小盘在上,操作过程中盘子可以置于三根任一杆上,问:总共至少需要移动几步?这么一看递归也是个神奇的东西,不过在解决问题时我们依然要考虑用迭代还是递归,递归对内存的开辟大,容易发生。先把n个盘子的最上面的n-1个移动到TOWER2上,然后把底下的这一个移动TOWER3上,以此类推:这实际上就是一个递归。
2023-02-14 21:05:33 133
原创 C语言之操作符
一般来说,C语言的操作符分为10种,它们分别是:算术操作符,移位操作符,位操作符,赋值操作符,单目操作符,关系操作符,逻辑操作符,条件操作符,逗号操作符以及小标引用、函数调用和结构成员。接下来让我们进行一一介绍。算术操作符操作符/做的是除法,/操作的两个数如果都是整数,那么就执行整数除法,会忽略小数部分,但如果有一个是浮点数,那结果就是浮点数。操作符%是取模运算,它与其它4种不一样,它的两个操作数一定要是整数,结果是整除后的余数。
2023-02-02 23:46:55 214
原创 C语言之static
static修饰局部变量,会改变其存储类型(由栈区变为静态区),从而改变其生命周期,修饰全局变量和函数时,会使其无法在其它文件里被使用,而只能在本文件使用。
2023-02-01 21:06:39 158 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人