PB学生信息管理系统及编程小程序开发

版权申诉
0 下载量 130 浏览量 更新于2024-11-12 收藏 297KB RAR 举报
系统实现了学生信息数据的基本输入功能,并包含了求水仙花数和素数等小程序,用于辅助编程和算法练习。" 知识点详细说明: 1. PB(PowerBuilder)简介: PowerBuilder是由Sybase公司推出的一款面向对象的数据库开发工具,主要用于开发客户/服务器(Client/Server)和分布式Web应用。PB拥有强大的数据窗口技术,可以帮助开发者快速设计出复杂的数据管理界面,处理数据库事务。由于其拖放式界面设计和数据窗口对象,PB成为了一种开发数据库应用的高效工具。 2. 学生信息管理系统概念: 学生信息管理系统是一种用于学校或教育机构管理学生基本信息、成绩、选课、考勤等数据的软件系统。通常这类系统会包含学生信息的录入、查询、修改、删除等功能,以提高管理效率和数据准确性。管理系统可由各种编程语言开发,例如Java、C#、PHP、Python等,而PB也是一种常见的开发语言。 3. 水仙花数定义及求解方法: 水仙花数(Narcissistic number),也被称为阿姆斯特朗数(Armstrong number),是指一个n位数,其各位数字的n次幂之和等于该数本身。例如153是一个三位的水仙花数,因为1^3 + 5^3 + 3^3 = 153。在编程中,求解水仙花数通常涉及到循环、数学运算和字符串处理。 4. 素数的定义及求解方法: 素数(Prime number),也称质数,是指在大于1的自然数中,除了1和它本身以外不再有其他因数的数。判断素数的程序通常需要遍历从2到该数的平方根之间的所有整数,来检查是否存在除了1和它本身之外的因数。在编程中,素数的算法是基本算法之一,对于理解循环和条件判断等编程基础概念非常有帮助。 5. 小程序开发: 在本资源中提到的小程序指的可能是嵌入在学生信息管理系统中的一些辅助功能模块,用于执行特定的数学计算任务,比如求解水仙花数和素数。这类小程序可以视为系统功能的补充,提供用户额外的算法练习机会,帮助用户更好地理解编程逻辑和算法原理。 6. 编程实验和PD(Program Design): PD通常指程序设计,而在这里提到的大学生PD实验可能是一种实践课程或教学活动,其目的是让学生通过编写代码、设计系统界面、实现功能来达到教学目标,加深对编程和软件开发的理解。开发学生信息管理系统作为PD实验的课题,能够让学生在实践中学习如何规划、设计并实现一个完整的软件项目。 7. 文件压缩和压缩软件: 提到的压缩文件“pb.rar”表明该资源已被打包成RAR格式,通常使用WinRAR等压缩软件进行压缩和解压缩操作。RAR格式相比于ZIP格式具有更高的压缩率,尤其适用于文件体积较大时的压缩存储。 总结: 本资源是针对大学生PD实验设计的学生信息管理系统,采用PowerBuilder作为开发语言,实现了基础的学生信息管理功能,并集成了求解水仙花数和素数等数学问题的小程序。系统的设计和编码过程对于初学者掌握数据库操作、编程逻辑、算法实现等技能非常有帮助。同时,该资源还涉及了文件压缩技术,展示了如何使用RAR格式对文件进行压缩和存储。

select c.area_name,c.mon,c.count,ifnull(c1.count1,0),ifnull(c1.count1,0)/count * 100 from ( select a.area_name,MONTH(pb.wlpb_create_time) mon,count(pb.id) count from bc_company_info b inner join ( select b.id from wk_ledger_produce_gather g left join bc_company_info b on b.id =g.bci_id where g.wlpg_year =2022 group by b.id HAVING sum(g.wlpg_total_produce) >=30 UNION select b.id from wk_plan_info p left join wk_plan_danger d on d.wpi_id = p.id left join bc_company_info b on b.id = p.bci_id where p.wpi_year = 2022 group by b.id HAVING sum(d.wpd_this_produce) >30) b1 on b1.id = b.id left join wk_ledger_produce_bill pb on pb.bci_id = b.id left join sys_area a on a.id = b.bci_city where pb.wlpb_create_time >'2023-01-01 00:00:00' group by b.bci_city,MONTH(pb.wlpb_create_time) ) c left join ( select a.area_name,MONTH(pb.wlpb_create_time) mon,count(pb.id) count1 from bc_company_info b inner join ( select b.id from wk_ledger_produce_gather g left join bc_company_info b on b.id = g.bci_id where g.wlpg_year =2022 group by b.id HAVING sum(g.wlpg_total_produce) >=30 UNION select b.id from wk_plan_info p left join wk_plan_danger d on d.wpi_id = p.id left join bc_company_info b on b.id = p.bci_id where p.wpi_year = 2022 group by b.id HAVING sum(d.wpd_this_produce) >30) b1 on b1.id = b.id left join wk_ledger_produce_bill pb on pb.bci_id = b.id left join sys_area a on a.id = b.bci_city where pb.wldb_end_from != 1 and pb.wlpb_create_time >'2023-01-01 00:00:00' group by b.bci_city,MONTH(pb.wlpb_create_time)) c1 on c.area_name = c1.area_name and c.mon = c1.mon 这段SQL怎么优化

2023-06-09 上传