随着信息技术的发展,数据库技术已经被广泛应用到各个领域中。学籍管理系统是数据库技术应用的典型案例之一。它通过对学生的信息进行有效的存储、管理和查询,实现了教育信息化的自动化管理。本文将对数据库学籍管理系统的代码进行详解。
一、数据库设计
数据库设计是学籍管理系统开发的之一步。需要确定数据库中需要存储的Target="_blank">数据类型及其结构。这里列出了学籍管理系统中需要存储的主要数据表:
1. 学生表(Student)
2. 课程表(Course)
该表存储课程的基本信息,包括课程编号、课程名称、学分等字段。
3. 学期表(Semester)
该表存储学期的基本信息,包括学期编号、学期名称等字段。
4. 选课表(Choose)
该表存储学生选课的信息,包括学生编号、课程编号、学期编号、成绩等字段。
5. 登录表(Login)
该表存储用户的登录信息,包括用户名、密码等字段。
在确定了数据库中需要存储的表及其字段之后,需要进行数据库的物理设计。这里采用MySQL数据库系统,通过SQL语句来创建表和定义字段。
二、代码实现
在数据库设计完成之后,进入数据库学籍管理系统代码的实现。这里采用PHP语言作为主要的开发语言,同时结合HTML和CSS来实现前端界面展示。
(一)登录模块
登录模块是系统的入口,用户需要通过登录模块才能使用系统的其他功能。这里采用了MySQL数据库中的Login表来存储用户的登录信息,包括用户名和密码。在用户输入正确的用户名和密码之后,系统会判断该用户的权限,因为学籍管理系统有多个角色,包括学生、教师和管理员等,不同用户具有不同的权限。如果是学生,则可以查看自己的基本信息和成绩信息,同时可以进行选课等操作;如果是教师,则可以查看学生的信息和成绩信息,同时可以进行课程的管理;如果是管理员,则可以对整个系统进行管理,包括添加、修改、删除学生、教师和课程等操作。
登录模块的代码如下所示:
header(“Content-Type:text/html; charset=utf-8”);
session_start();
$username=$_POST[‘username’];
$password=$_POST[‘password’];
$conn = mysqli_connect(“localhost”,”root”,””,”school”);
mysqli_set_charset($conn,”utf8″);
$sql=”select * from login where username=’”.$username.”‘ and password=’”.$password.”‘”;
$result=mysqli_query($conn,$sql);
$rows=mysqli_num_rows($result);
if($rows>0){
$row=mysqli_fetch_assoc($result);
$_SESSION[‘username’]=$row[‘username’];
$_SESSION[‘password’]=$row[‘password’];
$_SESSION[‘role’]=$row[‘role’];
header(“location:mn.php”);
echo “alert(‘用户名或密码错误’);history.go(-1);”;
(二)学生模块
学生模块是学籍管理系统的核心模块之一,它负责对学生的信息进行管理、查询和修改等操作。需要实现学生的基本信息的展示,包括学号、姓名、性别、年龄、出生日期、籍贯、专业和班级等信息。需要实现选课和查看成绩功能。选课功能需要查询课程表和学期表,获取当前学期的所有课程信息,并将其展示给学生进行选择;查看成绩功能需要查询选课表,获取学生的成绩信息进行展示。
学生模块的代码如下所示:
header(“Content-Type:text/html; charset=utf-8”);
session_start();
$username=$_SESSION[‘username’];
$password=$_SESSION[‘password’];
if(empty($username)||empty($password)){
echo “alert(‘请先登录’);window.location.href=’login.html’;”;
$role=$_SESSION[‘role’];
if($role!=’学生’){
echo “alert(‘您不是学生,无法进入该页面’);window.location.href=’mn.php’;”;
$conn = mysqli_connect(“localhost”,”root”,””,”school”);
mysqli_set_charset($conn,”utf8″);
$sql=”select * from student where username=’”.$username.”‘ and password=’”.$password.”‘”;
$result=mysqli_query($conn,$sql);
$row=mysqli_fetch_assoc($result);
$student_id=$row[‘id’];
$name=$row[‘name’];
$gender=$row[‘gender’];
$age=$row[‘age’];
$birthday=$row[‘birthday’];
$birthplace=$row[‘birthplace’];
$major=$row[‘major’];
$class=$row[‘class’];
if(isset($_POST[‘course_id’])){
$sql=”select * from course,semester where course.semester_id=semester.id and course.id=”.$_POST[‘course_id’];
$result=mysqli_query($conn,$sql);
$row=mysqli_fetch_assoc($result);
$course_id=$row[‘id’];
$course_name=$row[‘name’];
$credit=$row[‘credit’];
$semester_name=$row[‘name’];
$sql=”insert into choose(student_id,course_id,semester_id) values (‘$student_id’,’$course_id’,’$semester_id’)”;
mysqli_query($conn,$sql);
echo “alert(‘选课成功’);”;
else if(isset($_POST[‘term_id’])){
$sql=”select * from choose,course,semester where choose.course_id=course.id and choose.semester_id=semester.id and choose.student_id=’$student_id’ and semester_id=”.$_POST[‘term_id’];
$result=mysqli_query($conn,$sql);
$result=mysqli_query($conn,”select * from choose,course,semester where choose.course_id=course.id and choose.semester_id=semester.id and choose.student_id=’$student_id’”);
学籍管理系统-学生模块
学籍管理系统
退出
学号 |
---|
姓名 |
性别 |
年龄 |
籍贯 |
专业 |
班级 |
选修课程
$sql=”select * from course,semester where course.semester_id=semester.id and course.id not in (select course_id from choose where student_id=’$student_id’)”;
$result=mysqli_query($conn,$sql);
while($row=mysqli_fetch_assoc($result)){
课程编号 | 课程名称 | 学分 | 学期 | 操作 |
---|---|---|---|---|
成绩查询
选择学期
$sql=”select * from semester”;
$result=mysqli_query($conn,$sql);
while($row=mysqli_fetch_assoc($result)){
查询
$sql=”select * from choose,course where choose.course_id=course.id and student_id=’$student_id’ and semester_id=”.$_POST[‘term_id’];
$result=mysqli_query($conn,$sql);
while($row=mysqli_fetch_assoc($result)){
课程编号 | 课程名称 | 学分 | 成绩 |
---|
(三)教师模块
教师模块是学籍管理系统的另一个核心模块,它负责对学生的信息和成绩信息进行管理。教师模块的主要功能包括查询学生的基本信息、查询学生成绩、录入学生成绩、修改学生成绩等。与学生模块类似,教师模块也需要判断用户的权限,以确定能否访问该模块的功能。
教师模块的代码如下所示:
header(“Content-Type:text/html; charset=utf-8”);
session_start();
$username=$_SESSION[‘username’];
$password=$_SESSION[‘password’];
if(empty($username)||empty($password)){
echo “alert(‘请先登录’);window.location.href=’login.html’;”;
$role=$_SESSION[‘role’];
if($role!=’教师’){
echo “alert(‘您不是教师,无法进入该页面’);window.location.href=’mn.php’;”;
$conn = mysqli_connect(“localhost”,”root”,””,”school”);
mysqli_set_charset($conn,”utf8″);
if(isset($_POST[‘student_id’])){
$student_id=$_POST[‘student_id’];
$sql=”select * from student where id=’$student_id’”;
$result=mysqli_query($conn,$sql);
$row=mysqli_fetch_assoc($result);
$name=$row[‘name’];
$gender=$row[‘gender’];
$age=$row[‘age’];
$birthday=$row[‘birthday’];
$birthplace=$row[‘birthplace’];
$major=$row[‘major’];
$class=$row[‘class’];
$gender=”;
$birthday=”;
$birthplace=”;
if(isset($_POST[‘course_id’])){
$sql=”select * from course where id=”.$_POST[‘course_id’];
$result=mysqli_query($conn,$sql);
$row=mysqli_fetch_assoc($result);
$course_id=$row[‘id’];
$course_name=$row[‘name’];
$credit=$row[‘credit’];
$sql=”select *,choose.score as score from choose,student where choose.course_id=’$course_id’ and student.id=choose.student_id”;
$result=mysqli_query($conn,$sql);
else if(isset($_POST[‘student_id’])&&isset($_POST[‘term_id’])){
$student_id=$_POST[‘student_id’];
$term_id=$_POST[‘term_id’];
$sql=”select * from choose,course where choose.course_id=course.id and student_id=’$student_id’ and semester_id=’$term_id’”;
$result=mysqli_query($conn,$sql);
$result=mysqli_query($conn,”select * from course”);
学籍管理系统-教师模块
学籍管理系统
退出
姓名 |
---|
性别 |
年龄 |
籍贯 |
专业 |
班级 |
课程列表
while($row=mysqli_fetch_assoc($result)){
课程编号 | 课程名称 | 学分 | 操作 |
---|---|---|---|
成绩列表
while($row=mysqli_fetch_assoc($result)){
学号 | 姓名 | 成绩 | 操作 |
---|
成绩查询
学生编号: | |
学期选择: |
选择学期 $sql=”select * from semester”; $result=mysqli_query($conn,$sql); while($row=mysqli_fetch_assoc($result)){ |
2 %E6%95%B0%E6%8D%AE%E5%BA%93%E5%AD%A6%E7%B1%8D%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F%E4%BB%A3%E7%A0%81 数据库学籍管理系统代码### 1、使用下面的数据,用C设计一个简单的学籍管理系统,实现出最基本的功能。
求剩余部分
除了查询功能 其他的一模一样 给分后 其他隐链正梁藏的才能够显示
struct student_info
{ char number;/*学号*/棚运
char name;/*姓名*/
char gender;/*性别*/
char sushe_no;/*宿舍号*/
struct student_grade
char number;
char courseno; /*课程号*/
char coursename; /*课程名称*/
int xuefen;
int pingshicj;
int shiyancj;
int juanmiancj;
float zonghecj;
float shidecj;
typedef struct student_info stu_info;
typedef struct student_grade stu_grade;
int CourseInfoIndex=0;
int StudentInfoIndex=0;
stu_info *StuInfo=NULL;
stu_grade *StuCour=NULL;
int ReadStuInfo(void) //从原有的学生清枯信息文件中读取信息
StudentInfoIndex=0;
if((fp=fopen(“a.txt”,”rb”))==NULL)
while(!feof(fp))
if(fread(&StuInfo,sizeof(stu_info),1,fp)==1)
StudentInfoIndex++;
fclose(fp);
int WriteStuInfo(void) //将学生信息写入到文件中
if(StudentInfoIndex>=0)
if((fp=fopen(“a.txt”,”wb”))==NULL)
fwrite(StuInfo,sizeof(stu_info)*StudentInfoIndex,1,fp);
fclose(fp);
void PrintStuInfo(int index)
ReadStuInfo();
printf(“\nNow print the>
香港服务器首选树叶云,2H2G首月10元开通。树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云 服务器 和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
宝安职业技术学校可以上大学吗
上不了(本科)大学。 最多只能考大专。 职业学校的课程相对简单很多,所以上大专基本上是没问题的。 但是即便你考到很高分,但专业的选择上也是会比较狭隘吧。 好好努力吧。 。 。 有问题q我,我帮你解决。 然后好好上普高!
外地身份证过期可以在深圳办理吗
可以办理异地身份证时需提交的材料:需提交申请人户口簿、身份证、护照等公安机关签发的各类有效身份证件中任意一种,在身份证有效期内的不需要提供。 身份证办理时效:从2014年7月中旬开始,办理身份证需要10个工作日。 深圳市身份证同城快递服务:“身份证特快专递送证服务”是2013年深圳市政府民生实事项目之一,为深入开展办理第二代居民身份证便民利民服务工作,方便急需用证的群众及时领到居民身份证,根据居民身份证管理的相关规定,我市自9月27日起全面启动居民身份证同城快递服务。 此次开通办理居民身份证邮政快递服务是本着自愿的原则,市民可在派出所户政窗口办理申领、补领和换领居民身份证的同时,自愿申请邮政快递送证服务,届时只要正确填写相关的收件人姓名、联系电话、邮编和地址等信息,即可完成身份证快递服务的申请。 当办理好的居民身份证快递至市民时,市民只需凭居民身份证领取凭证和收件人的居民身份证(若收件人是申请人的提供户口簿即可),签收领取居民身份证。 市民办理身份证邮政快递服务只需在收取身份证的时候支付邮政快递公司15元快递费。 扩展资料:以下情形不的异地身份证申请不予受理,申请人需回户籍所在地公安机关办理:1.首次申领居民身份证的,或距居民身份证有效期满时间超过三个月,无正当换领理由;2. 申请人提交的身份信息与人口信息管理系统中登记不一致,或人口信息系统中二代居民身份证历史图像相差较大的、原籍图像信息准确性无法确定的;3.相貌特征发生较大变化,人口信息系统中本人二代居民身份证图像、本市《居民身份证数字相片采集检测回执》相片、现场人像不一致,且居民身份证未登记指纹信息,难以确认身份证的;4.申请人户籍被原籍锁定、冻结或被本市限制的,或属在逃人员,或有不良信用记录。 参考资料:深圳市公安局-办理异地身份证时需提交什么材料?深圳市公安局-什么情况下异地身份证在深圳市不予办理?
sql存储过程实例
CREATE OR REPLACEPROCEDURE procedure_namebeginFor c in (select column_a_name from table_a_name)loopupdate table_b_name set column_b_name=_a_name loop;end;
发表评论