- 博客(34)
- 收藏
- 关注
原创 实验13 数据库权限管理
随着实验的推进,我在执行创建角色(CREATE ROLE)、授予权限(GRANT)以及插入、更新、删除数据等操作时,在利用stu1进行操作时是非常顺利的,尽管一开始在插入数据的格式问题卡住了一会,但是凭借着之前十多次的数据库实验,让我很快就找到了错误原因,但是在对stu2和stu3进行操作的时候,我真的多次遭遇“没有执行此操作的权限”的错误提示。总的来说,这是一次非常有价值的学习经历。也让我意识到我在权限体系设置这方面的学习存在问题,需要花费较多时间学习,补充自己的知识储备,为之后更难的学习过程做好准备。
2025-05-23 13:08:36
866
原创 实验5数据查询
最让我有成就感的应该就是当多表查询结果运行出来的那一个,满满当当的表格给我的那种充实感,好像代表这自己的努力就展现在眼前这些方格子里的内容,之前的学习内容在查询时大多都是一次查询的内容较少,没有那种直接冲击力,并不能体会到数据库这个课程的学习魅力在哪,感觉肉眼反而能够更快的找出需要的数据,但是这次实验涉及到了好多查询内容都是比较难检索到的内容,单凭肉眼确实无法直接检索到,这时候我就感受到了数据库的魅力,通过代码就可以得到你想要的数据,这一点大大减少了我们在检索大量数据的时候所花费的时间。
2025-05-19 11:16:12
844
原创 实验6分类汇总
面对各种问题和挑战,我不再急于求成,而是耐心地寻找解决方案,询问身边的同学或者是借助不同的人工智能,并从中总结经验教训。多表连接查询我觉得是最难且震撼的吧。然后就是,在处理聚集函数时,比如查询每门课程的平均分、最高分和最低分,我意识到直接使用MAX()、AVG()、MIN()这样的函数虽然简单,但如果想要结果更清晰易读,给这些计算出来的值命名是非常重要的(虽然我前面几次验证性实验的查询结果没有显示“最高分”,“最低分”,“平均分”这几点,但是通过询问AI,我在后续的设计性实验则显示出了“平均分”等表明)。
2025-05-17 13:12:09
644
原创 实验九视图索引
在为视图添加索引的过程中,我也遇到了不少困难,比如提示“不能为未绑定架构的视图创建索引”、“必须先创建聚集索引”等。为了克服这些问题,我学会了使用 WITH SCHEMABINDING 创建视图,并确保所有引用的表和列都加上了 dbo. 前缀,同时还必须首先创建唯一的聚集索引,保证视图中没有聚合函数或复杂的表达式。在这次数据库实验中,我学习了视图和索引的功能及其应用,让我对数据库设计有了更深的理解。与普通视图不同,索引视图的数据是物理存储的,这使得它能够显著提高查询性能,特别是对于那些频繁使用的复杂查询。
2025-05-14 17:49:13
769
原创 实验11(触发器)
在查资料的过程中对部分内容大致有所了解,但是要让我解释清楚或是把他们之间关系划分清楚是不太能完成的,一些偏理论性的东西我可以比较好的学习和解决,但是涉及到实操和代码迁移我是比较难完成的,比如:通过本次实验,我理解了 SQL Server 中触发器的工作机制。从最开始的简单 INSERT、DELETE、UPDATE 触发器,到后面复杂的数据联动、完整性控制、视图更新等高级用法,我发现数据库真的是一个非常难的课程,在这过程中,我有比较多的困惑都没有解决,如:如何判断字段是否被更新?这是一次非常有挑战性的实验。
2025-05-12 11:11:06
305
原创 数据库实验10
甚至还有一些没有解决的问题,如在设计性实验中返回该生平均分和班级排名时返回的是一个空值,这肯定是不对的,还有就是当创建函数后发现函数内部的值有问题但是又不能直接重新再创建一遍时该怎么处理会比较合适?3.编写函数FCJAXXX,参数为姓名或姓名一部分,返回该生的所有课程的成绩(学号,姓名,课程名,成绩等级);4.编写函数FclassXXX,参数为班级,返回该班男、女生平均分前二名 (学号,姓名,课程名,成绩,平均)某学生选了某课程后,要退选,该课程的当前选课人数减1,并删除其对应的成绩。
2025-05-10 23:54:01
852
原创 DBa作业
处理D → E:在R2中,D → E不满足BCNF(因为D不是超键),将D与其决定的属性E提取出来,形成一个新的关系模式R2_1(D, E),剩下的属性和依赖为R2_2(A, D, F),其依赖集为{(A, D) → F}。处理A → B 和 A → C:将A与其决定的属性B和C提取出来,形成一个新的关系模式R1(A, B, C),剩下的属性和依赖为R2(A, D, E, F),其依赖集为{D → E, (A, D) → F}。观察分解结果:子模式T4(A, D, F)已经包含了候选键(A, D)。
2025-05-07 17:30:19
1204
2
原创 E-R图作业
在设计在线购物平台数据库的时候,我才真正体会到,一个好的数据库设计得从用户的需求出发,仔细分析哪些是实体、哪些是联系,然后一点点地构建起来。零件有零件号、重量和价格。仓库(仓库号,仓库主任姓名,电话) 拥有(车间号,厂名) 雇佣(车间号,职工号)组成(产品号,零件号) 存储产品(仓库号,产品号) 存储零件(仓库号,零件号)单位(单位名) 职工(职工号) 设备(设备号) 供应商(供应商名)工程(工程名) 隶属(单位名,职工号) 工作(职工号,工程名)聘用(商店编号(外码),职工编号(外码),聘期,工资)
2025-05-05 21:04:39
720
原创 表管理(约束)实验
这次的作业真的是有史以来耗时最久的一次,大量的时间都花在了设计性实验修改表的部分,在修改表的第一和第二小题中,我出现了比较多的错误,像什么主键约束,外键约束,我刚开始都没能正确找到所要处理的主键和外键内容,导致经常执行后出现什么约束不存在,约束名称不正确,表中没有定义任何约束等问题,在这里我真的试错了很多次,慢慢地我学会了仔细查看对应表中的约束,还有就是表与表之间也存在着主键外键的约束,这也是比较容易出错的地方,但是还好在花费了一个多小时后我终于处理完了修改表中的第一第二小问。
2025-05-02 15:49:36
631
原创 简单表管理
答:我觉得至少应该涉及4个表,商品、员工、顾客、销售记录这几个部分的表,其中商品中可以提到商品的名称、价格、类型之类的,员工中可以涉及员工的id、姓名、职位、电话、入职时间等,顾客中可以涉及到顾客的id、姓名以及在该商场体统中的会员号等信息,销售记录中可以涉及到商品id、员工id、顾客信息、还有销售时间和具体数量等信息。最后,其实我也不太明白是否我本次的实验还有未实现的功能或是什么,希望在未来的课程中可以了解到更多数据库原理这门课程的知识以及魅力所在吧。– 把 sname 改为 nchar(4)
2025-04-30 10:29:30
369
原创 课堂案例分析
该案例通过面向对象的方式设计了一个学生管理系统,该系统允许用户添加、删除、以及按姓名、专业和 GPA 搜索学生信息,并展示所有学生的列表。在面向对象编程中,“类”是封装数据和行为的基本单元。本文通过设计一个简单的Student类,探讨如何利用面向对象的思想(封装、继承、多态)来组织代码,实现对学生信息的管理与操作。功能描述:这是Student类的构造方法,用于创建Student对象时初始化学生的姓名、年龄、性别、学号、专业和GPA。
2025-04-28 16:22:03
917
原创 博客打卡4.24
例如,在查询“张旭”教师任课的学生成绩以及有成绩不及格的学生信息时,均使用了EXISTS子查询来过滤符合条件的数据。这不仅帮助我更好地理解了子查询的工作机制,也提升了我在实际应用中灵活运用子查询的能力,是很方便且不容易出现查询错误的(但前提肯定是代码编写要正确哈)。13.查询所以成绩都及格的学生的信息(学号,姓名,课程号,课程名,成绩,最低成绩)(any ,some,all)14.查询成绩有不及格的学生的信息(学号,姓名,课程号,课程名,成绩, 最低成绩)(any ,some,all)
2025-04-24 23:47:05
629
原创 PTA打卡
最关键的就是装箱思路对每个物品,顺序扫描已有的箱子(从 1 到 box_count),找到第一个能够容纳该物品的箱子,并更新其剩余容量。我感觉这道题最关键的地方就是如何装箱,也就是装箱的策略,一定要对每个箱子的剩余容量,还有当前箱子的数量进行统计,这样子可以确保我们的每一步都是有计划的,不容易出现箱子装满或是箱子数量统计不到位的情况,还有就是每次装箱结束后不要忘记更新箱子的具体情况,不然会出现矛盾的情况。关于对称性的实现:实现沙漏图案的核心在于如何根据给定的总行数计算出每行所需的具体字符数及空格数。
2025-04-21 21:14:49
319
原创 数据库删除与更新数据
SELECT * FROM SCOREA065 WHERE SNO = (SELECT SNO FROM STUDENTA065 WHERE SNAME = ‘曾华庆’) AND CNO IN (SELECT CNO FROM COURSE065 WHERE TNO = (SELECT TNO FROM TEACHER065 WHERE TNAME = ‘张旭’));在进行初始数据是,我的代码中出现了“无法绑定由多个部分组成的标识符 ‘C.TNO’”的错误,特别是在第5条、第8条和第9条代码段中出现。
2025-04-19 22:03:40
530
原创 PTA题集4.17
还有就是边界情况:如果字符串长度为 1,直接输出 1;但是fgets的使用是之前做题没有涉及到的,所以这里需要查询较多的资料,遇到不会的时候还借助了一下AI等。其实对于这道题我觉得思路很重要,可能在学习这块内容的时候,我对哈希表的使用不是很明确,也不太确定使用方法适用于什么地方,所以在写这道题的时候,我借助了同学的想法并根据此寻找资料,最后才完成,遍历去重那块错误了蛮多次就是,总的来说这部分的知识点还是不够熟练。偶数长度的回文子串(中心两个相邻字符)),寻找最长的回文子串,最后记录所有回文子串的最大长度。
2025-04-17 23:52:25
227
原创 打卡3.1
这道题其实主要就是和高中物理有关的计算题啦,我们要抓住的一个点就是除第一次落地后,之后每次落地时,总距离增加两倍的当前反弹高度(因为反弹和落下各算一次)。其实这道题目我觉得最关键的就是要理解题目中描述的古风排序是什么意思,最开始我误以为是先从右往左排完第一排后再从上往下由第二排开始,后来发现应该是从上往下优先于从右往左,所以刚开始连题目都理解错误就去做就会出现编译错误,后来仔细看输出结果才发现自己的理解错误。古风排版规则是从右到左竖向排列,每列 N 个字符(最后一列可能不足 N 个!第 n 次反弹的高度。
2025-04-14 17:17:28
314
原创 打卡第二周
这道题中比较容易出现的错误是在打印空格的时候,公式写错导致打印空格次数不对,最终无法出现倒三角形;其实编程中的调试可能不是最令人愉快的部分,但它却是编程过程中不可或缺的一环。(每行前面需要打印一些空格,空格的数量等于当前行号 i。第 1 行前面有 1 个空格(num_spaces = 1),以此类推。(例:‘a’ + (char_index % 26) 的作用是:当 char_index 是 0 时,‘a’ + 0 输出 a。首先打印前置空格,然后再打印字母序列,最后千万不要忘记换行!
2025-04-12 22:08:08
281
原创 PTA练习思考
完成该题过程中我遇到的困难是比较多的,最开始因为一个很简单的问题而错误,就是我在更新区间的时候,恰好弄反了,但是完全无法得到我需要的运行结果;在完成这道题目的时候,我没有出现太多从错误问题,主要是比较清晰使用哪种排序方式,还有就是单位有反复确定(是否需要转化),其余的问题倒是不多,还有就是一定不要忘记初始化数组数据,这一点真的很重要,不难但是有时候容易遗漏。如果 f(a)⋅f(mid)<0,说明根在左半区间 [a,mid],则需要将b=mid否则,根在右半区间 [mid,b],则需要将a=mid.
2025-04-09 17:57:11
320
原创 博客打卡(pta题集)
以上是其中一部分题目的解题思路和总结,总体来说,前面几道题是比较简单的,涉及到的C语言知识也是较为常用的for循环,输入输出之类的,最后一个涉及到指针就是比较困难的了,如何选用合适的方法来完成题目是最为关键的,但是在寻找最合适方法的过程中也难免使用一些比较奇怪或是思考起来简单但是操作负责的内容,这时候需要有耐心地查询资料,一定要耐心、耐心、耐心!实在没法解决的时候可以询问身边的同学说不定别人的思路更好更快,但是前提是自己先有思考了。
2025-04-08 19:07:13
787
原创 学生管理系统(java)
该项目实现了对学生信息的基本管理功能,包括从文件加载学生数据、保存更新后的数据到文件、添加新学生、删除学生、修改现有学生信息以及根据学号、姓名或电话号码查询学生等功能。
2025-01-09 21:37:13
733
原创 Java网络编程课前问题列表
3)如果程序是基于TCP的Socket编程,那么代码中会有创建TCP Socket的细节,如使用Socket类而不是DatagramSocket类。4)不重要的短信息传送之类的功能更适合使用UDP,因为UDP开销小,传输速度快,适合实时性要求高且对丢包不敏感的应用。4)可以的,TCP是全双工通信协议,该程序可以同时进行从网络上读和向网络上写操作。1)TCP(传输控制协议)是面向连接的、可靠的、基于字节流的传输层通信协议。UDP(用户数据报协议)是无连接的、不可靠的、基于报文的传输层通信协议。
2024-11-22 22:26:38
300
原创 Java并发编程的课前问题列表
信号量(Semaphore):控制筷子的使用数量,例如可以设置一个信号量初始值为2(表示有两只筷子),每次吃饭前申请两个信号量(即拿到两只筷子),吃完饭后释放两个信号量。Bounce程序UI线程需要处理用户的输入、界面的绘制以及球的移动等多个任务,当任务过多时,会导致线程负载过重,从而影响界面的流畅性;BounceThread程序中每个球的移动逻辑都是在一个独立的线程中执行的,这样就不会阻塞UI线程,从而保证了界面的响应性和流畅性。1.以前编写的Java程序一般只能同时做一件事情(即只有一个执行流程)。
2024-11-16 16:59:42
233
原创 实验与作业:流与文件(课前问题列表)
在Java中,可以使用FileInputStream读取文件的字节数据,然后根据字符编码使用InputStreamReader将字节数据转换为字符数据。使用字符流时,对象需要先被转换为字符串,然后再进行存储,效率较低。字节流是处理字节序列的流,字符流是处理字符序列的流。文本文件则以字符形式存储数据,每个字符可能占用一个或多个字节(取决于字符编码)。在UTF-8编码下,一个英文字符通常占用1个字节,一个中文字符通常占用3个字节。在处理二进制数据时(如图像、音频文件等),使用字节级别的读写方法更加直接和高效。
2024-11-11 17:42:20
456
原创 异常处理机制的课前问题列表
在两者中,编译错误通常更容易解决,因为它们在代码编写阶段就能被发现;解决方法:尝试重启软件或设备,此外,确保软件版本是最新的,有时更新能修复已知的bug。示例:int[] x = new int[3];解决方法:检查网络连接是否稳定,尝试重新连接网络或切换到其他网络环境。即将原代码中的有“注意这里”的代码更换为现在给出的代码即可。解决方法:根据编译器的错误提示,修正代码中的语法错误。描述:代码中存在语法错误,导致无法编译通过。解决方法:通过调试工具定位并修正错误。可能类型:网络错误、服务器错误等。
2024-11-04 13:35:07
374
原创 课前问题列表
当检测到疑似垃圾邮件的时候,就将其存储起来。有的时候垃圾邮件比较多,有的时候垃圾邮件比较少。2.1 每个学期报选修课,一个学生可以选择多门选修课。想要找出既报了"音乐鉴赏"选修又报了"羽毛球"选修的所有学生,用哪些接口及实现类好呢?所有要抢某个车次的乘客被排到一个队列中,当该车次有余票时,就从等待队列的队头取出等待乘客帮其下单。2.2 现在想得到一个大名单,该名单包含了"音乐鉴赏"选修与"羽毛球"选修的学生名单(学生不能重复),要怎么办呢?2.3 找出选修了"音乐鉴赏"但未选修"羽毛球"的学生名单?
2024-10-29 17:15:41
372
原创 商城管理系统
在这个项目中,我们设计并实现了一个简单的购物平台,主要包括用户管理、产品管理和购物车管理三大模块。通过面向对象编程(OOP)的方法,我们创建了多个类来模拟现实生活中的购物场景,包括用户(User)、产品(Product)、购物车(ShoppingCart)以及购物车中的商品项(ShoppingCartItem)。此外,我们还设计了一个用户管理器(UserManager)来管理用户信息的注册、更新和删除等操作。通过本项目,我们成功地实现了一个简单的购物平台,涵盖了用户管理、产品管理和购物车管理等核心功能。
2024-10-21 20:54:22
894
原创 1.3 课前问题列表
2.详细描述:为什么某个类实现了Comparable接口,就可以对该类的集合(如数组、ArrayList)使用Arrays.sort进行排序?接口:只能包含抽象方法和默认方法,是一种实现关系,表示“能做什么(can-do)”的关系。一个类可以实现多个接口,这提供了更大的灵活性。抽象类:可以包含具体实现和抽象方法,是一种继承关系,表示“是一种(is-a)”的关系。Comparable接口是一个用于定义对象比较方法的接口。当一个类实现了Comparable接口,它就提供了与自身类型的其他对象进行比较的方法。
2024-10-07 18:54:27
325
原创 课前问题列表四
这种设计允许Java中的所有对象都能共享一些基本的行为,比如toString(), equals(), hashCode(), clone(), 和finalize()等方法的实现。默认情况下,Object类的toString()方法返回的是类名后跟“@”符号和该对象的哈希码的无符号十六进制表示。默认情况下,Object类的equals()方法比较的是两个对象的引用是否相同(即,它们是否是同一个对象)。3.String类覆盖了Object类的equals()方法,以比较两个字符串的内容是否相同。
2024-09-23 22:53:23
385
原创 课前问题列表
例如,可能需要Product(产品类),Cart(购物车类),CartItem(购物车项类)等。举例:在电商项目中,你可以有com.example.ecommerce.product包来存放所有与产品相关的类,com.example.ecommerce.cart包来存放购物车相关的类。通常是那些不依赖于对象状态的方法,即方法的执行不依赖于类的实例变量。通常情况下,getName这样的方法用于获取对象的某个属性(如学生的名字),因此它不应该被static修饰,因为它依赖于特定的Student对象实例。
2024-09-16 22:57:49
363
原创 学生信息管理系统(面向对象初步接触)
Main 类作为用户界面的核心,它通过控制台这一传统而强大的交互方式,与用户建立起直接的联系。在这个学生管理系统中,Main 类不仅充当了用户与系统之间沟通的桥梁,还巧妙地集成了 Student 类和 StudentManagementSystem 类的功能,实现了对学生信息的全面管理。
2024-09-14 01:51:18
1113
原创 课前问题列表
原因:在创建一个长度为3的整数数组时,初始化默认所有值均为0,arr[0]=2替代了前面的arr[0]=1,其中arr[1]=1没有改变,又创建了一个新的数组引用arrX,它指向了与arr相同的数组对象。改变了,java中的“按值传递”传递的是对象引用的值,而不是对象本身,changeArr方法接收到的strs参数实际上是指向args数组的同一个引用,因此可以改变。虽然不能改变一个已存在的字符串对象的内容,但是可以将strArr数组的第二个元素引用改为指向了一个新的字符串对象"xx"。
2024-09-09 20:27:28
727
原创 课前问题列表
问题一:使用Java能编写哪些类型的程序?试举至少两个例子。大数据处理、Web应用程序、桌面应用程序、移动应用程序问题二:Java号称“一次编译、处处运行”(Write Once, Run Anywhere!),怎么理解这句话?为使编译好的程序能运行,需先在操作系统安装什么?这句话指的是Java程序的跨平台特性;我需要在目标操作系统上安装Java虚拟机(JVM)问题三:对比c版本的与Java版本HelloWorld代码,有何不同?语法结构:C语言:使用#include预处理指令来包含标准输入输出库
2024-09-04 23:21:51
824
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅