- 博客(43)
- 收藏
- 关注
原创 MySQL-实验1-初始MySQL
要求主键列的数据唯一,并且不允许为空,主键能够唯一的标识表中的每一条记录,可以结合外键来定义与不同数据表之间的关系。我们知道数据库中的表可以存放很多数据,如果把表中的每一个数据比作一个人的话,那么。在数据库的使用过程中我们经常要限制字段的取值,比如有些字我们不能让它为空,我们就需要添加非空约束,本关我们就来学习如何添加这些常用的约束。为了完成本关任务,你需要掌握: 1.怎么添加唯一约束;操作完之后点击评测,我会对你的创建的数据库和表进行测试,如果数据库和表都创建成功,我会输出如下结果,否则会显示报错信息。
2024-06-01 17:13:18
752
原创 MySQL-实验10-综合练习
打开人口普查rkpc数据库,湖南人口hnpeople数据表结构如图所示,各字段含义如下 cs(城市)、qx(区县)、rk(人口)、man(男)、woman(女)、child(儿童)、adult(成人)、old(老人)湖南人口hnpeople数据表结构如图所示,各字段含义如下 cs(城市)、qx(区县)、rk(人口)、man(男)、woman(女)、child(儿童)、adult(成人)、old(老人) hnpeople数据表结构。建立视图view1,显示区县人口大于100w的城市cs、区县qx和人口rk。
2024-05-31 17:59:38
529
原创 MySQL-实验9-存储过程
存储函数由sql语句和过程语句组成的代码片段 可以定义输入参数(无需使用in),没有输出参数。在begin前通过returns 语句指定返回值类型 在函数体中通过return返回值Returns BEGIN函数体return 返回值END如果开启了 bin-log, 必须在begin之前指定一个参数DETERMINISTIC。
2024-05-31 17:54:24
733
原创 MySQL-实验8-索引与视图
视图(view)是一种虚拟存在的表,是一个逻辑表,本身并不包含数据。通过视图,可以展现基表(用来创建视图的表)的部分数据;视图数据来自定义视图的查询表。我们知道了视图的定义,那么,为什么要使用它呢?因为视图有如下优点:①. 简单:使用视图的用户完全不需要关心后面对应的表的结构、关联条件和筛选条件,对用户来说已经是过滤好的复合条件的结果集;②. 安全:使用视图的用户只能访问他们被允许查询的结果集,对表的权限管理并不能限制到某个行或列,但是通过视图就可以简单的实现;
2024-05-31 17:49:22
873
原创 MySQL-实验7-数据库编程(存储过程、触发器)
任务描述本关任务:创建存储过程pro_del_sc,根据学号和课程号删除score表中的数据,学号和课程号由存储过程的参数传入。基本表介绍下面给出每个表的表名,列名和说明。请严格按编程任务指定的表名、列名、约束名。表1 学生表(student)表2 课程表(course)表3 成绩表(score)开始你的任务吧,祝你成功!
2024-05-31 17:44:21
907
原创 MySQL-实验6-多表数据查询和嵌套查询
本关任务: 第一题 查询曾经借过图书的读者的读者证号和姓名 第二题 查询曾经没有被借阅的图书的条形码和书名 第三题 查询与孙思旺借过相同图书的读者的读者证号和姓名,按读者证号升序排列 第四题 查询借阅过李白全集的读者所借过的其他图书的书名 按书名升序排列。第一题 查询与李白全集同一个出版社的图书的书名(不包括李白全集) 第二题 查询高于图书的平均售价(sj)的图书的书名和售价 第三题 查询售价最高的图书的条形码、书名和售价 第四题 查询售价最低的图书的条形码、书名和售价。
2024-05-31 17:39:23
1786
原创 MySQL-实验2-数据库和数据表的管理
删除数据库 drop database 数据库名 删除数据库是将已经存在的数据库从磁盘空间上清除,清除之后,数据库中的所有数据也将一同被删除。本关任务:建立数据表 为了完成本关任务,你需要掌握: 如何选择数据库 如何创建数据表 设置数据表的原则 如何显示数据表的结构。为了完成本关任务,你需要掌握:1.如何在数据表添加字段,2.字段类型的设置规则。为了完成本关任务,你需要掌握:1.如何删除数据表 2.查看数据库的所有数据表。本关任务:删除读者(reader)数据表,显示数据库中所有的数据表。
2024-05-31 17:10:17
960
原创 MySQL-实验3-数据表的管理
本关任务:在reader数据表中插入多条数据 姓名是黄小小,性别是男,身份是研究生,电话是13316789987 姓名是刘大任,性别是男,身份是工作人员,电话18012341234 姓名是邓朝阳,性别是女,身份是研究生,电话是17716554432 提示:数据表reader的姓名、性别、身份、电话号码字段是xm,xb,sf,dhhm 读者证号是自增字段,其值会自动产生。对于指定数据表中符合条件的记录,用指定的表达式的值来更新指定的字段。对于指定数据表中符合条件的记录,用指定的表达式的值来更新指定的字段。
2024-05-31 16:53:09
761
原创 MySQL-实验4-数据查询(二)
从表1中取出每一条记录,去表2中与所有的记录进行匹配,匹配必须是某个条件在表1中与表2中相同,最终才会保留结果,否则不保留。我们在这里只是将left修改成了right,但是基准表变化了,是以department表的数据去匹配employee表,所以左外连接能做到的查询,右外连接也能做到,仅展现的效果有所不同。不能匹配,其它表的字段都置空(其中,没有部门的员工和部门没有员工的部门都没有被查出来,这就是内连接的特点,只查询在连接表中有对应的记录,其中。分以上的学生的姓名和学生的成绩以及学生所在的班级。
2024-05-31 16:41:58
774
原创 MySQL-期末题库-判断题45道
SQL SERVER中,触发器的执行是在数据的插入、更新或删除之前执行的。SQL语言的视图定义和视图操作功能在一定程度上支持了数据的逻辑独立性。在数据库的三级模式结构中,外模式是描述数据库中数据的全局逻辑结构的。在数据库的三级模式结构中,模式是描述数据库中数据的全局逻辑结构的。当数据库的内模式发生改变时,用户编写的应用程序必须随之改变。视图具有与表相同的功能,在视图上也可以创建触发器。数据库的完整性是指数据库中的数据的全面性。关系中每一列的分量必须是同类型的数据。创建唯一性索引的列可以有一些重复的值。
2024-05-31 15:51:50
355
原创 MySQL-期末题库-填空题题78道
现实世界的事物反映到人的头脑中经过思维加工成数据,这一过程要经过3个领域,依次是客观世界、信息世界和数据世界。创建数据库除可以使用图形界面操作外,还可使用命令创建数据库关系数据模型中,二维表的行称为元组|记录。数据库系统中,最主要的用户是DBA。表是数据库中存放数据的基本单位。唯一标识实体的属性集称为码。SELECT语句中,与0个或多个字符匹配的通配符是。数据独立性分成逻辑数据独立性和物理数据独立性两级。
2024-05-27 15:04:03
369
原创 MySQL-期末题库-简答题14道
1、设有三个关系:S(S#SNAMEAGESEXBPLACE(家庭地址),DEPARTMENT(学院)SC(S#C#GRADEC(C#CNAMETEACHER写出下列语句的关系代数表达式。(1)检索选修课程名为多媒体的学生学号与姓名。(2)检索家在山东的男学生的学号和姓名。(3)检索学号为96010学生所学课程的课程名与任课教师名。
2024-05-27 14:24:36
962
原创 MySQL-笔记-01.数据库概论
数据库可以理解为存放数据的仓库,但是数据库中的数据并不是随意存放的,必须满足一定的规则,否则会影响查询效率。研究数据库的根本任务是研究如何科学地组织和管理数据,以提供可共享的、安全可靠的数据。当概念模式发生改变时,数据库管理员负责改变相应的映射关系, 使外模式保持不变,这样也就没有必要修改应用程序,从而保证了数据的逻辑独立性。它是对数据库用户(包括开发人员和最终用户)能够看见和使用的局部数据逻辑结构的描述,是与某一应用程序相关的数据的逻辑表示。是用来描述数据,数据关系,数据语义,数据约束的工具。
2024-05-20 14:38:13
453
原创 MySQL-笔记-11.数据库设计
详细调查现实世界中要处理的对象(如组织、部门、企业等),充分了解该对象当前数据管理系统(手工系统或计算机系统)的工作概况,尽可能多地收集数据,明确用户的各种需求,然后在此基础上确定新系统的功能。与需求分析相反,概念结构设计采用自底向上、逐层设计与合并的方法,先设计底层的局部概念结构(局部 E-R 图),然后将它们逐层合并起来,最终形成完整的全局概念结构(全局 E-R 图)。“学生”实体集中的“院系”、“课程”实体集中的“开课院系”以及“教师”实体集中的“所属部门”实际上是同样的含义,即异名同义。
2024-05-19 18:50:54
691
原创 MySQL-笔记-10.关系模式的规范化理论
例:在关系模式SCD中,sno与sname、gender和depart之间都有一种逻辑依赖关系,即一个sno只对应一个学生,而一个学生只能属于一个学院,因此当sno的值确定之后,该学生的sname、gender、depart的值也随之被确定了。定义:设 R(U)是一个关系模式,U 是 R 的属性集合,X 和 Y 是 U 的子集。对于 R(U)的任意一个可能的关系 r,如果 r 中不存在两个元组,它们在 X 上的属性值相同,而在 Y 上的属性值不同,则称“X 函数确定 Y”或“
2024-05-19 17:07:50
723
原创 MySQL-笔记-09.存储过程及触发器的使用
表示输出参数,要求在调用存储过程时,必须为该参数传入一个用户会话变量(全局变量),用于将存储过程运算中的结果带出到调用处使用。表示输入输出参数,要求在调用存储过程时,必须为该参数传入一个有确定值的用户会话变量(全局变量),用于在存储过程运算中使用,同时,又可利用该参数将值从存储过程中带出。1)定义存储过程时,需指定其名称,用户名称并给出参数(如果该存储过程带有参数)调用执行指定的存储过程。调用存储过程时,网络中传送的只是调用语句,而不需要在网络中传送存储过程中的SQL语句代码。
2024-04-29 15:14:25
842
原创 MySQL-笔记-08.数据库编程
MySQL提供了丰富的内置函数,方便用户对数据进行相应的处理,同时用户也可以自定义函数。(1)内置函数。内置函数是一组预定义的函数,是MySQL的一部分,按MySQL中定义的方式运行且不能修改。在MySQL中,内置函数主要用来获得系统的有关信息、执行数学计算和统计、实现数据类型的转换等。MySQL中常用的内置函数,包括字符串函数、数学函数、日期和时间函数、系统函数等。(2)用户定义函数。在MySQL中,由用户定义的MySQL函数即为用户定义函数。它将频繁执行的功能语句块封装到一个命名实体中,该实
2024-04-29 14:49:05
866
原创 MySQL-笔记-06.数据高级查询
左外连接指定在结果集中除了包括由内连接返回的所有行之外,还包括左表中所有不满足连接条件的行,并将结果集中右表的输出列设置为NULL。右外连接指定结果集中除了包括由内连接返回的所有行之外,还包括右表中所有不满足连接条件的行,并将结果集中左表的输出列设置为NULL。在嵌套查询中,上层查询块称为外层查询或父查询,下层查询块称为内层查询或子查询。IN 是属于的意思,等价于“=ANY”,即等于子查询结果集中的任何一个值。,包括查询条件和查询结果涉及的表,确定是单表查询,还是多表查询,确定FROM子句中的表名。
2024-04-17 16:58:42
926
转载 MySQL-数据库-习题
部门(部门号,名称,经理名,电话),其中部门号为主码。2)参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:等于S中某个元组的主码值或者取空值(F的每个属性值均为空值);事务中的回滚(ROLLBACK)是数据库滚回到事务开始时的状态,具体来说是在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态。
2024-04-17 15:49:37
469
2
原创 MySQL-实验-单表、多表数据查询和嵌套查询
统计每本书借阅的次数,显示书名和借阅次数(借阅次数命名为jycs),按借阅次数降序排列,借阅次数相同的按书名降序排列。统计每个出版社的图书的借阅次数,显示出版社的名称和借阅次数,按借阅次数降序排列,借阅次数相同的按出版社降序排列。统计借阅次数在2次以上的图书的借阅的次数,显示书名和借阅次数,按借阅次数降序排列,借阅次数相同的按书名降序排列。统计研究生读者借阅的次数,显示姓名和借阅次数,按借阅次数降序排列,借阅次数相同的按姓名降序排列。查询借阅过李白全集的读者所借过的其他图书的书名 按书名升序排列。
2024-04-15 14:18:22
1809
4
原创 MySQL-笔记-05.数据更新与单表查询
为了增加查询结果的可读性,可以通过指定列别名的方式改变查询结果的列标题列别名改变的只是查询结果的列标题,并没有改变数据表中的列名。【例12】查询 student表中全部学生的姓名和性别。要求用汉字作为列标题,且去掉重名的学生。SELECT DISTINCT sname AS 姓名, ssex 性别。
2024-04-08 19:13:35
2034
原创 MySQL-笔记-04.数据库及表基本操作
数据的完整性是指保护数据库中数据的准确性、有效性和一致性,以防止错误数据的插入导致无效操作。数据表的约束分为列约束和表约束。约束解释列约束针对特定字段的约束,包含在其字段定义中,紧跟字段其他定义之后,用空格隔开,无需指定字段名表约束则与字段定义相互独立,不包含在字段定义中,常用于对多个字段的约束,与字段定义用逗号分隔,定义表约束时必须指定要约束的字段名称关系数据库管理系统有3类完整性约束:实体完整性参照完整性和用户定义完整性。完整性约束。
2024-04-08 17:39:42
927
原创 MySQL-笔记-03.数据类型
例如InnoDB有储引擎中NULL 既需要额外存储开销,又要增加磁盘 I/O次数和计算开销。(6)尽量少用text类型,非用不可时最好将 text 字段与经常操作的表分开,以减少磁盘I/O开销,提高系统性能。数据类型的选择需要根据实际需求进行选择,并考虑数据存储和查询的效率。(4)尽采用精确小数类型(例如decimal),而不采用浮点数类型;(3)尽量用内置的日期时间数据类型,不用字符串来存储日期和时间;(1)能存储所需数据的最短小、计算最快捷的数据类型;只能存储所列值之一或为。
2024-04-08 16:16:49
479
原创 MySQL经典题目—从听歌流水中找到18-25岁用户在2022年每个月播放次数top 3的周杰伦的歌曲
从听歌流水中找到18-25岁用户在2022年每个月播放次数top 3的周杰伦的歌曲。-- 2.生成排名:根据每一首歌的播放量生成每个月中的播放量排名,使用的是窗口函数:ROW_NUMBER() 和 over()-- 1.多表关联:找出每个月周杰伦每一首歌的的播放量。-- 3.返回排名前3的数据:使用where筛选条件。
2024-03-28 07:30:00
383
原创 MySQL经典题目1--求用户最长的连续登录天数”
- 请用SQL实现,求“2023年1月1日-2023年1月31日用户最长的连续登录天数”?①先对id和日期进行去重。②通过窗口函数进行排序。1.建库建表填写数据。
2024-03-28 07:00:00
245
原创 嵌入式技术及应用-【Ubuntu】实验9- linux字符驱动程序之LED实验
是设备驱动程序中设备控制接口函数,一个字符设备驱动通常会实现设备打开、关闭、读、写等功能,在一些需要细分的情境下,如果需要扩展新的功能,通常以增设。(2)编写开发板GPIO (通用IO)的GPB5(即led 1接的引脚)测试程序,控制led1亮和灭。扮演着重要角色,本文将以驱动开发为侧重点,从用户空间到内核空间纵向分析。(2)了解S3C2440微处理器GPIO驱动程序的编写方法。(1)了解S3C2440微处理器GPIO的功能;按步骤依次写出程序、运行结果等(可截屏)(1)分析GPIO驱动程序。
2024-03-14 00:30:00
189
原创 嵌入式技术及应用-【Ubuntu】实验8-驱动程序结构实验
在未来的学习和工作中,我们将继续学习和探索Linux驱动的相关知识,为我们的专业领域做出更大的贡献。3、以root身份登录,挂载目标代码,并查看输出调试信息,本次相关操作均要求到下载的当前目录(含Dev_hello.ko)在终端下输入命令lsmod,表示查看当前已挂载模块(此时会看到Dev_hello.ko)4、在终端下输入命令lsmod,表示查看当前已挂载模块(此时不再看到Dev_hello.ko)3、在终端下输入命令rmmod Dev_hello.ko,表示卸载Dev_hello.ko。
2024-03-13 06:00:00
328
原创 嵌入式技术及应用-【Ubuntu】实验7-网络通讯实验
TCP/IP协议是网络通信的核心协议,它规定了如何在不同的设备之间进行数据传输和通信。通过实验,我们成功地搭建了服务端和客户端,并实现了客户端与服务器之间的数据传输,了解了TCP/IP协议格式,基本掌握网络通信的编程方法。(1)编写客户端和服务器端程序,把客户端程序下载到开发板运行,服务器端程序在pc机上运行。(2)要求服务器端传送一个文件(图像文件或文本文件)到客户端。按步骤依次写出程序、运行结果等(可截屏)(1)了解TCP/IP协议格式;(2)掌握网络通信的编程方法。虚拟机软件、一台计算机。
2024-03-12 10:00:00
447
原创 嵌入式技术及应用-【Ubuntu】实验6-多线程实验
本实验的代码中采用的有界缓冲区拥有3个单元,每个单元为5个字节。为了尽量体现每个信号量的意义,在程序中生产过程和消费过程是随机(采取0~5s的随机时间间隔)进行的,而且生产者的速度比消费者的速度平均快2倍左右(这种关系可以相反)。使用3个信号量,avail和full分别用于解决生产者和消费者线程之间的同步问题,mutex用于解决这两个线程之间的互斥问题。通过编写经典的“生产者—消费者”问题的实验,进一步熟悉Linux中的多线程编程,并且掌握用信号量处理线程间的同步和互斥问题。虚拟机软件、一台计算机。
2024-03-11 07:00:00
424
原创 嵌入式技术及应用-【Ubuntu】实验5-串口通讯实验
(telnet登陆时root的密码:fa 可以在windows(要在控制面板的程序与功能开通telnet),可以在虚拟机) 例:telnet 192.168.0.245。3、了解主机与开发板的连接和通信(包括串口和网络连接、主机与开发板之间的文件传输)。(串口名称:ttySAC3新板,ttySAC1或ttySAC2旧板)用arm-linux-gcc编译出wwcom_reader可执行文件。1、了解linux环境下串行程序设计的方法,设备文件系统的使用方法;分别执行即可实现字符串的写入和读取。
2024-03-10 16:57:37
406
原创 嵌入式技术及应用-【Ubuntu】实验4-linux应用开发实验
1.编写多进程程序,该实验有3个进程,其中一个为父进程,其余两个是该父进程创建的子进程,其中一个子进程运行“ls -l”指令,另一个子进程在暂停5s之后异常退出,父进程先用阻塞方式等待第一个子进程的结束,然后用非阻塞方式等待另一个子进程的退出,等待收集到第二个子进程结束的信息,父进程就返回。实验流程图如图4.1所示。通过编写多进程程序,熟练掌握fork()、exec()、wait()和waitpid()等函数的使用;通过编写有名管道多路通信实验,进一步掌握管道的创建、读写等操作。
2024-03-10 16:52:36
244
原创 嵌入式技术及应用-【Ubuntu】实验3-Makefile实验
解:在Makefile中,通常会定义一些变量来存储编译选项和编译目标。为了将hello.c文件编译到目标平台中运行,需要根据目标平台的特性修改Makefile中的变量参数(如,CFLAGS、LDFLAGS、LIBS、INSTALL_DIR等)①CFLAGS:这是编译C源代码的编译器选项。可能需要添加或修改某些选项,以适应目标平台的编译器特性或优化级别。②LDFLAGS:这是链接器选项,用于指定链接过程中的参数,根据目标平台的特定需求,可能需要修改链接器选项,例如指定特定的库文件路径或链接器选项。
2024-03-10 16:38:07
922
原创 嵌入式技术及应用-【Ubuntu】实验2-简单的Linux编程
从源代码test.c到执行代码a.out,总共经历了4个编译必不可少的步骤,分别是预处理、编译、汇编、链接。2. gdb调试过程大致有:单步执行,跳入函数,跳出函数,设置断点,设置观察点,查看变量等。:预处理(主要进行宏替换以及头文件的包含展开,不会检查错误)(1)用vi编写一个简单程序(打印小于100的质数)。:编译(编译生成汇编文件,会检查语法是否有错误):汇编(将汇编文件编译成目标文件(二进制文件))用vi、gcc、gdb进行编程、调试和编译。(2)用gcc、gdb编译并调试该程序。
2024-03-10 16:26:25
276
原创 嵌入式技术及应用-【Ubuntu】利用TCP Socket实现PC机与目标板的通讯
1、利用TCP Socket实现PC机与目标板的通讯,目标板作为服务端,服务端按要求给。1、利用TCP Socket实现PC机与目标板的通讯,目标板作为服务端,服务端按要求给。1、利用TCP Socket实现PC机与目标板的通讯,目标板作为服务端,服务端按要求给。3、了解主机与开发板的连接和通信(包括串口和网络连接、主机与开发板之间的文件传输)。传送不同的文件(可以使用多线程机制、非阻塞或异步式处理)。传送不同的文件(可以使用多线程机制、非阻塞或异步式处理)。作业要求:1)交电子文档,需要源代码。
2024-03-09 12:34:54
602
2
原创 嵌入式技术及应用-【Ubuntu】【交叉编译】实现跑马灯并以开发板为服务器通过cgi实现远程控制
在进行这次Linux字符驱动程序之LED实验的过程中,我深入了解了内核编程的基本概念和流程,基本熟悉了S3C2440微处理器GPIO的功能以及GPIO驱动程序的编写方法和调试方法并通过LED控制,进一步理解了硬件与软件之间的交互原理,熟悉了网页设计html的部分基本开发思路。(编写测试程序,例:通过cgi实现远程控制(模拟控制,如控制led1灯)。(编写测试程序,例:通过cgi实现远程控制(模拟控制,如控制led1灯)。(编写测试程序,例:通过cgi实现远程控制(模拟控制,如控制led1灯)。
2024-03-09 12:34:14
575
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人