学生学籍管理系统的设计与实现

沈阳航空航天大学

课 程 设 计 报 告

课程设计名称:软件综合课程设计

课程设计题目:学生学籍管理系统的设计与实现

院(系): 计算机学院 专 业: 计算机科学与技术 班 级: 04010101 学 号: [1**********]15 姓 名: 指导教师: 丁一军

沈阳航空航天大学

课程设计任务书

目 录

1 课程设计介绍 .............................................................................................................. 2 1.1 课程设计内容 ........................................................................................................ 2 1.2 课程设计要求 ........................................................................................................ 2 1.3 需求分析简述 ........................................................................................................ 2 2 数据库设计 .................................................................................................................. 3 2.1 实体关系(E-R)图 ................................................................................................... 3 2.2实体图 . .................................................................................................................... 4 2.3数据库表 . ................................................................................................................ 5 3 功能设计 ...................................................................................................................... 7 3.1 系统功能模块 ........................................................................................................ 7 整体程序…….. ......................................................................................................... 7 3.2 各功能模块程序流程图 ........................................................................................ 8 4 调试与分析 ................................................................................................................ 13 4.1 调试过程 .............................................................................................................. 13 4.2 程序执行过程 ...................................................................................................... 13 参考文献 ........................................................................................................................ 19 总结 ................................................................................................................................ 20 附 录(关键部分程序清单) .................................................................................. 21

1 课程设计介绍

1.1 课程设计内容

设计程序,实现对宿舍管理的基本操作,系统主要功能如下:

1. 实现对学生信息的查询。

2. 实现学生基本信息的添加、删除、修改。 3. 实现学生表彰,处分信息的添加、修改。 4. 实现对学生助学贷款的全部查询、添加和删除。 5. 实现对学生休学,退学信息的管理。

1.2 课程设计要求

1. 学生信息的查询。

2. 实现学生基本信息的添加、修改。 3. 要求按班级,年级对基本信息进行统计。 4. 要求能按关键字进行查询。 5. 上述各项信息的查询。

1.3 需求分析简述

随着计算机科学技术的不断发展,各个学校对学生学籍的管理也由原先的手动管理转变为计算机操作管理,这不但节省了大量的人力物力,而且还提高了工作效率。本系统的设计就是用于学生学籍的管理系统,通过使用该系统平台能够实现对学生信息的管理。实现学生基本信息的添加、修改。实现学生表彰,处分信息的添加、修改。实现对学生助学贷款的全部查询、添加和删除。实现对学生休学,退学信息的管理。

2 数据库设计

2.1 实体关系(E-R)图

图2.1系统E-R 图

2.2实体图

图2.2类别实体图

2.3数据库表

表2.1 学生信息表

表2.2 贷款信息表

表2.3 处分信息表

表2.4 表彰信息表

表2.5 休学学生信息表

3 功能设计

3.1 系统功能模块

整体程序如图3.1所示

图3.1 功能模块图

3.2 各功能模块程序流程图

1. 登录模块流程图,如图3.2所示。

图3.2登录程序流程图

2. 查询模块流程图,如图3.3所示。

图3.3查询程序流程图

3. 添加模块流程图,如图3.4所示。

图3.4添加程序流程图

4. 修改模块流程图,如图3.5所示。

图3.5修改程序流程图

5. 删除模块流程图,如图3.6所示。

图3.6删除程序流程图

4 调试与分析

4.1 调试过程

在调试程序时主要遇到以下几类问题:

1. 当程序运行时空指针异常,是变量作用域问题。 2. 数据从数据库中读出失败,因为ado 语句写错。 3. 操作数据库数据时报错,是数据类型与变量类型不符。 4. 操作数据库时报错,因为数据库没打开。 5. sql 语句执行失败,是sql 语句书写不规范。

4.2 程序执行过程

1. 登录界面,如图4.1所示。

图4.1登陆界面图

2. 主界面,如图4.2所示。

图4.2主界面图

3. 查询操作,如图4.3所示。

图4.3查询界面图

4. 学生信息查询,如图4.4所示。

图4.4所有学生信息查询界面图

5. 贷款信息查询,如图4.5所示。

图4.5贷款信息查询界面图

6. 学生档案的录入,如图4.6所示。

图4.6 学生档案录入界面图

7. 助学贷款的录入,如图4.7所示。

图4.7助学贷款录入界面图

8. 休学退学办理,如图4.8所示。

图4.8休学退学界面图

参考文献

[1] 王国胜,刘攀.C#软件开发课堂[M].北京:清华大学出版社,2009

[2] 郑宇军, C#语言程序设计基础[M]. 北京:清华大学出版社,2009

[3] 高英,Access 数据库应用系统开发与实例[M].北京:清华大学出版社,2010

[4] 柴煜,王云,ADO.NET 数据库访问技术案例式教程北京[M]:清华大学出版社,2010

[5] 严蔚敏,吴伟民. 数据结构[M].北京:清华大学出版社,2007.

[6] 王珊. 数据库技术与联机分析处理[M].北京:北京科学出版社,2004.

[7] 钱雪忠. 数据库原理及应用[M].北京:邮电大学出版社,2007.

[8] Ryan Stephens.SQL入门经典[M].北京,人民邮电出版社,2010.

总结

附 录(关键部分程序清单)

程序代码

using System;

using System.Collections.Generic;

using System.Linq;

using System.Windows.Forms;

namespace student

{

static class Program

{

///


/// 应|用?程¨¬序¨°的Ì? 主¡Â入¨? 口¨²点Ì? 。¡ê

///

[STAThread ]

static void Main()

{

Application .EnableVisualStyles();

Application .SetCompatibleTextRenderingDefault(false );

Application .Run(new Form1());

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class DL : Form

{

public DL()

{

InitializeComponent();

}

private void DL_Load(object sender, EventArgs e)

{

textBox1.Focus();

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" )

{

MessageBox .Show(" 请? 输º? 入¨? 用?户¡ì名? 和¨ª密¨¹码?" , " 错䨪误¨提¬¨¢示º?" ); }

else

{

OleDbConnection add = new OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

add.Open();

OleDbCommand cmd = new OleDbCommand ("" , add);

string sql = "select user from UserInfo where user='" + textBox1.Text.Trim() + "' and password='" + textBox2.Text.Trim() + "'" ;

cmd.CommandText = sql;

if (null != cmd.ExecuteScalar())

{

Form1 main = new Form1();

main.Tag = this .FindForm();

main.ShowDialog();

add.Close();

}

else

{

MessageBox .Show(" 用?户¡ì名? 或¨°密¨¹码? 错䨪误¨", " 登Ì? 录? 失º¡ì败㨹" ); add.Close();

}

}

}

private void button2_Click(object sender, EventArgs e)

{

textBox1.Clear();

textBox2.Clear();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace student

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

}

AddUser adduser;

private void 添¬¨ª加¨用?户¡ìToolStripMenuItem_Click(object sender, EventArgs e)

{

if (adduser == null || adduser.IsDisposed)

{

adduser = new AddUser ();

adduser.Show();

}

}

DealUser dealuser;

private void 删¦? 除y 用?户¡ìToolStripMenuItem_Click(object sender, EventArgs e)

{

if (dealuser == null || dealuser.IsDisposed)

{

dealuser = new DealUser ();

dealuser.Show();

}

}

AddStuInfo addstuinfo;

private void 档̦Ì案ã? 录? 入¨?ToolStripMenuItem_Click(object sender, EventArgs e)

{

if (addstuinfo == null || addstuinfo.IsDisposed)

{

addstuinfo = new AddStuInfo ();

addstuinfo.Show();

}

}

ApdateStuInfo apdatestuinfo;

private void 学¡ì生¦¨²信? 息¡é查¨¦询¡¥ToolStripMenuItem_Click(object sender, EventArgs e) {

if (apdatestuinfo == null || apdatestuinfo.IsDisposed)

apdatestuinfo = new ApdateStuInfo ();

apdatestuinfo.Show();

}

AddLoan addloan;

private void 助¨²学¡ì贷ä? 款? 录? 入¨?ToolStripMenuItem_Click(object sender, EventArgs e) {

if (addloan == null || addloan.IsDisposed)

addloan = new AddLoan ();

addloan.Show();

}

SeeLoan sLoan;

private void 助¨²学¡ì贷ä? 款? 查¨¦询¡¥ToolStripMenuItem_Click(object sender, EventArgs e) {

if (sLoan == null || sLoan.IsDisposed)

sLoan = new SeeLoan ();

sLoan.Show();

}

private void 表À¨ª彰? 与?处ä|分¤? 信? 息¡éToolStripMenuItem_Click(object sender, EventArgs e) {

}

DeletStudent DS;

private void 退ª? 学¡ì管¨¹理¤¨ªToolStripMenuItem_Click(object sender, EventArgs e)

{

if (DS == null || DS.IsDisposed)

DS = new DeletStudent ();

DS.Show();

}

Suspend Sus;

private void 休Y 学¡ì管¨¹理¤¨ªToolStripMenuItem_Click(object sender, EventArgs e)

{

if (Sus == null || Sus.IsDisposed)

Sus = new Suspend ();

Sus.Show();

}

Honor Hon;

private void 表À¨ª彰? 信? 息¡é查¨¦询¡¥ToolStripMenuItem_Click(object sender, EventArgs e) {

if (Hon == null || Hon.IsDisposed)

Hon = new Honor ();

Hon.Show();

}

HonorAdd HA;

private void 表À¨ª彰? 信? 息¡é管¨¹理¤¨ªToolStripMenuItem_Click(object sender, EventArgs e) {

if (HA == null || HA.IsDisposed)

HA = new HonorAdd ();

HA.Show();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class AddLoan : Form

{

public AddLoan()

{

InitializeComponent();

}

private void AddLoan_Load(object sender, EventArgs e)

{

textBox1.Focus();

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "" || textBox4.Text.Trim() == "" )

{

MessageBox .Show(" 请? 填¬? 写¡ä完ª¨º整? 信? 息¡é!ê?" , " 错䨪误¨提¬¨¢示º?" );

}

else

{

OleDbConnection add = new

OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

//add.Close();

add.Open();

OleDbCommand cmd = new OleDbCommand ("" , add);

string sql;

sql = "select LoanNum from LoanInfo where LoanNum='" + textBox1.Text.Trim() + "'" ; cmd.CommandText = sql;

if (cmd.ExecuteScalar() == null )

{

sql = "insert into LoanInfo values('" + textBox1.Text.Trim() + "','" +

textBox2.Text.Trim() + "','" + textBox3.Text.Trim() + "','" + textBox4.Text.Trim() + "','" + comboBox1.Text.Trim() + "')" ;

cmd.CommandText = sql;

cmd.ExecuteNonQuery();

MessageBox .Show(" 用?户¡ì添¬¨ª加¨成¨¦功|!ê?" , " 成¨¦功|提¬¨¢示º?" ); add.Close();

this .Close();

}

else

{

MessageBox .Show(" 该? 用?户¡ì已°? 经-存ä? 在¨²,ê? 请? 重? 新? 输º? 入¨? !ê?" , " 错

䨪误¨提¬¨¢示º?" );

add.Close();

}

}

}

private void button2_Click(object sender, EventArgs e)

{

this .Close();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class AddStuInfo : Form

{

public AddStuInfo()

{

InitializeComponent();

}

private void label1_Click(object sender, EventArgs e)

{

}

private void AddStuInfo_Load(object sender, EventArgs e)

{

OleDbConnection add = new OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

add.Open();

DataSet ds = new DataSet ();

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "" || textBox4.Text.Trim() == "" || textBox5.Text.Trim() == "" || comboBox1.Text.Trim() == "" ||

comboBox2.Text.Trim() == "" || comboBox3.Text.Trim() == "" )

{

MessageBox .Show(" 你? 填¬? 写¡ä的Ì? 信? 息¡é不? 完ª¨º整? ,ê? 请? 继¨¬续? 填¬? 写¡ä完ª¨º整? !ê?" , " 错䨪误¨提¬¨¢示º?" );

}

else

{

OleDbConnection add = new OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

add.Open();

string sql;

sql = "select * from StudentInfo where sNum='" + this .textBox1.Text.Trim() + "'" ; OleDbCommand cmd = new OleDbCommand (sql, add);

sql = "insert into StudentInfo values('" + textBox1.Text.Trim () + "','" + textBox2.Text.Trim () + "','" + comboBox1.Text.Trim() + "','" + textBox3.Text.Trim () + "','" + textBox4.Text.Trim () + "','" + comboBox2.Text.Trim() + "','" + textBox5.Text.Trim () + "','" + comboBox3.Text.Trim() + "')" ;

cmd.CommandText = sql;

cmd.ExecuteNonQuery();

MessageBox .Show(" 学¡ì生¦¨²学¡ì籍? 信? 息¡é注Á¡é册¨¢成¨¦功|!ê?" , " 成¨¦功|信? 息¡é" ); add.Close();

}

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class AddUser : Form

{

public AddUser()

{

InitializeComponent();

}

private void AddUser_Load(object sender, EventArgs e)

{

// DataSet ds = new DataSet();

//OleDbConnection cn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.mdb");

//OleDbDataAdapter adp = new OleDbDataAdapter("",cn);

//adp.Fill(ds);

textBox1.Focus();

}

private void button1_Click_1(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "" ) {

MessageBox .Show(" 请? 填¬? 写¡ä完ª¨º整? 信? 息¡é!ê?" , " 错䨪误¨提¬¨¢示º?" ); }

else

{

if (textBox2.Text.Trim() != textBox3.Text.Trim())

{

MessageBox .Show(" 两¢? 次ä? 密¨¹码? 输º? 入¨? 不? 一°? 致? ,ê? 请? 重? 新? 输º? 入¨? !ê?" , " 错䨪误¨提¬¨¢示º?" );

}

else

{

OleDbConnection add = new

OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

//add.Close();

add.Open();

OleDbCommand cmd = new OleDbCommand ("" ,add);

string sql;

sql = "select user from UserInfo where user='" + textBox1.Text.Trim() + "'" ; cmd.CommandText = sql;

if (cmd.ExecuteScalar() == null )

{

sql = "insert into UserInfo values('" + textBox1.Text.Trim() + "','" +

textBox2.Text.Trim() + "')" ;

cmd.CommandText = sql;

cmd.ExecuteNonQuery();

MessageBox .Show(" 用?户¡ì添¬¨ª加¨成¨¦功|!ê?" , " 成¨¦功|提¬¨¢示º?" ); add.Close();

this .Close();

}

else

{

MessageBox .Show(" 该? 用?户¡ì已°? 经-存ä? 在¨²,ê? 请? 重? 新? 输º? 入¨? !ê?" , " 错䨪误¨提¬¨¢示º?" );

add.Close();

}

}

}

}

private void button2_Click_1(object sender, EventArgs e)

{

this .Close();

}

private void label1_Click(object sender, EventArgs e)

{

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class ApdateStuInfo : Form

{

DataSet ds = new DataSet ();

OleDbDataAdapter adp = null ;

public ApdateStuInfo()

{

InitializeComponent();

}

private void ApdateStuInfo_Load(object sender, EventArgs e)

{

string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql = "Select * from StudentInfo";

adp = new OleDbDataAdapter (sql, cn);

adp.Fill(this .ds, "StudentInfo" );

this .dataGridView1.DataSource = this .ds.Tables["StudentInfo" ];

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class DealUser : Form

{

//定¡§义°? 数ºy 据Y 集¡¥对? 象¨

DataSet ds = new DataSet ();

OleDbDataAdapter adp =null ;

public DealUser()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

string cn="Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql="Select * from UserInfo";

adp=new OleDbDataAdapter (sql,cn);

adp.Fill(this .ds, "UserInfo" );

this .dataGridView1.DataSource = this .ds.Tables["UserInfo" ];

BindingSource bs = new BindingSource ();

bs.DataSource = this .ds.Tables["UserInfo" ];

bindingNavigator1.BindingSource = bs;

}

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) {

}

private void DealUser_Load(object sender, EventArgs e)

{

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class DeletStudent : Form

{

void LoadData()

{

DataSet ds = new DataSet ();

string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection connection = new OleDbConnection (cn);

connection.Open();

string sql = "Select * from StudentInfo";

adp = new OleDbDataAdapter (sql, cn);

adp.Fill(ds, "StudentInfo" );

this .dataGridView1.DataSource = ds.Tables["StudentInfo" ];

}

OleDbDataAdapter adp = null ;

public DeletStudent()

{

InitializeComponent();

}

private void DeletStudent_Load(object sender, EventArgs e)

{

LoadData();

}

private void 办㨬理¤¨ª休Y 学¡ìToolStripMenuItem_Click(object sender, EventArgs e) {

if (dataGridView1.SelectedRows.Count

{

MessageBox .Show(" 请? 选? 中D 其? 中D 一°? 行D !ê?" );

return ;

}

}

private void 办㨬理¤¨ª退ª? 学¡ìToolStripMenuItem_Click(object sender, EventArgs e) {

if (dataGridView1.SelectedRows.Count

{

MessageBox .Show(" 请? 选? 中D 其? 中D 一°? 行D !ê?" );

return ;

}

int ID = Convert .ToInt32(dataGridView1.SelectedRows[0].Cells[0].Value); string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection connection = new OleDbConnection (cn);

connection.Open();

string sql = string .Format("Delete from StudentInfo where sNum ={0}", ID); OleDbCommand cmd=null ;

cmd = new OleDbCommand (sql, connection);

cmd.ExecuteNonQuery();

MessageBox .Show(" 删¦? 除y 成¨¦功|!ê?" );

LoadData();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class SeeLoan : Form

{

OleDbDataAdapter adp = null ;

public SeeLoan()

{

InitializeComponent();

}

private void SeeLoan_Load(object sender, EventArgs e)

{

DataSet ds = new DataSet ();

string cn="Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql="Select * from LoanInfo";

adp=new OleDbDataAdapter (sql,cn);

adp.Fill(ds,"LoanInfo" );

this .dataGridView1.DataSource = ds.Tables["LoanInfo" ];

}

private void button1_Click(object sender, EventArgs e)

{

DataSet ds = new DataSet ();

string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql = "Select * from LoanInfo where LoanType ='"+comboBox1.Text.Trim()+"'" ; adp = new OleDbDataAdapter (sql, cn);

adp.Fill(ds, "LoanInfo" );

this .dataGridView1.DataSource = ds.Tables["LoanInfo" ];

}

}

}

沈阳航空航天大学

课 程 设 计 报 告

课程设计名称:软件综合课程设计

课程设计题目:学生学籍管理系统的设计与实现

院(系): 计算机学院 专 业: 计算机科学与技术 班 级: 04010101 学 号: [1**********]15 姓 名: 指导教师: 丁一军

沈阳航空航天大学

课程设计任务书

目 录

1 课程设计介绍 .............................................................................................................. 2 1.1 课程设计内容 ........................................................................................................ 2 1.2 课程设计要求 ........................................................................................................ 2 1.3 需求分析简述 ........................................................................................................ 2 2 数据库设计 .................................................................................................................. 3 2.1 实体关系(E-R)图 ................................................................................................... 3 2.2实体图 . .................................................................................................................... 4 2.3数据库表 . ................................................................................................................ 5 3 功能设计 ...................................................................................................................... 7 3.1 系统功能模块 ........................................................................................................ 7 整体程序…….. ......................................................................................................... 7 3.2 各功能模块程序流程图 ........................................................................................ 8 4 调试与分析 ................................................................................................................ 13 4.1 调试过程 .............................................................................................................. 13 4.2 程序执行过程 ...................................................................................................... 13 参考文献 ........................................................................................................................ 19 总结 ................................................................................................................................ 20 附 录(关键部分程序清单) .................................................................................. 21

1 课程设计介绍

1.1 课程设计内容

设计程序,实现对宿舍管理的基本操作,系统主要功能如下:

1. 实现对学生信息的查询。

2. 实现学生基本信息的添加、删除、修改。 3. 实现学生表彰,处分信息的添加、修改。 4. 实现对学生助学贷款的全部查询、添加和删除。 5. 实现对学生休学,退学信息的管理。

1.2 课程设计要求

1. 学生信息的查询。

2. 实现学生基本信息的添加、修改。 3. 要求按班级,年级对基本信息进行统计。 4. 要求能按关键字进行查询。 5. 上述各项信息的查询。

1.3 需求分析简述

随着计算机科学技术的不断发展,各个学校对学生学籍的管理也由原先的手动管理转变为计算机操作管理,这不但节省了大量的人力物力,而且还提高了工作效率。本系统的设计就是用于学生学籍的管理系统,通过使用该系统平台能够实现对学生信息的管理。实现学生基本信息的添加、修改。实现学生表彰,处分信息的添加、修改。实现对学生助学贷款的全部查询、添加和删除。实现对学生休学,退学信息的管理。

2 数据库设计

2.1 实体关系(E-R)图

图2.1系统E-R 图

2.2实体图

图2.2类别实体图

2.3数据库表

表2.1 学生信息表

表2.2 贷款信息表

表2.3 处分信息表

表2.4 表彰信息表

表2.5 休学学生信息表

3 功能设计

3.1 系统功能模块

整体程序如图3.1所示

图3.1 功能模块图

3.2 各功能模块程序流程图

1. 登录模块流程图,如图3.2所示。

图3.2登录程序流程图

2. 查询模块流程图,如图3.3所示。

图3.3查询程序流程图

3. 添加模块流程图,如图3.4所示。

图3.4添加程序流程图

4. 修改模块流程图,如图3.5所示。

图3.5修改程序流程图

5. 删除模块流程图,如图3.6所示。

图3.6删除程序流程图

4 调试与分析

4.1 调试过程

在调试程序时主要遇到以下几类问题:

1. 当程序运行时空指针异常,是变量作用域问题。 2. 数据从数据库中读出失败,因为ado 语句写错。 3. 操作数据库数据时报错,是数据类型与变量类型不符。 4. 操作数据库时报错,因为数据库没打开。 5. sql 语句执行失败,是sql 语句书写不规范。

4.2 程序执行过程

1. 登录界面,如图4.1所示。

图4.1登陆界面图

2. 主界面,如图4.2所示。

图4.2主界面图

3. 查询操作,如图4.3所示。

图4.3查询界面图

4. 学生信息查询,如图4.4所示。

图4.4所有学生信息查询界面图

5. 贷款信息查询,如图4.5所示。

图4.5贷款信息查询界面图

6. 学生档案的录入,如图4.6所示。

图4.6 学生档案录入界面图

7. 助学贷款的录入,如图4.7所示。

图4.7助学贷款录入界面图

8. 休学退学办理,如图4.8所示。

图4.8休学退学界面图

参考文献

[1] 王国胜,刘攀.C#软件开发课堂[M].北京:清华大学出版社,2009

[2] 郑宇军, C#语言程序设计基础[M]. 北京:清华大学出版社,2009

[3] 高英,Access 数据库应用系统开发与实例[M].北京:清华大学出版社,2010

[4] 柴煜,王云,ADO.NET 数据库访问技术案例式教程北京[M]:清华大学出版社,2010

[5] 严蔚敏,吴伟民. 数据结构[M].北京:清华大学出版社,2007.

[6] 王珊. 数据库技术与联机分析处理[M].北京:北京科学出版社,2004.

[7] 钱雪忠. 数据库原理及应用[M].北京:邮电大学出版社,2007.

[8] Ryan Stephens.SQL入门经典[M].北京,人民邮电出版社,2010.

总结

附 录(关键部分程序清单)

程序代码

using System;

using System.Collections.Generic;

using System.Linq;

using System.Windows.Forms;

namespace student

{

static class Program

{

///


/// 应|用?程¨¬序¨°的Ì? 主¡Â入¨? 口¨²点Ì? 。¡ê

///

[STAThread ]

static void Main()

{

Application .EnableVisualStyles();

Application .SetCompatibleTextRenderingDefault(false );

Application .Run(new Form1());

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class DL : Form

{

public DL()

{

InitializeComponent();

}

private void DL_Load(object sender, EventArgs e)

{

textBox1.Focus();

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" )

{

MessageBox .Show(" 请? 输º? 入¨? 用?户¡ì名? 和¨ª密¨¹码?" , " 错䨪误¨提¬¨¢示º?" ); }

else

{

OleDbConnection add = new OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

add.Open();

OleDbCommand cmd = new OleDbCommand ("" , add);

string sql = "select user from UserInfo where user='" + textBox1.Text.Trim() + "' and password='" + textBox2.Text.Trim() + "'" ;

cmd.CommandText = sql;

if (null != cmd.ExecuteScalar())

{

Form1 main = new Form1();

main.Tag = this .FindForm();

main.ShowDialog();

add.Close();

}

else

{

MessageBox .Show(" 用?户¡ì名? 或¨°密¨¹码? 错䨪误¨", " 登Ì? 录? 失º¡ì败㨹" ); add.Close();

}

}

}

private void button2_Click(object sender, EventArgs e)

{

textBox1.Clear();

textBox2.Clear();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace student

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

}

AddUser adduser;

private void 添¬¨ª加¨用?户¡ìToolStripMenuItem_Click(object sender, EventArgs e)

{

if (adduser == null || adduser.IsDisposed)

{

adduser = new AddUser ();

adduser.Show();

}

}

DealUser dealuser;

private void 删¦? 除y 用?户¡ìToolStripMenuItem_Click(object sender, EventArgs e)

{

if (dealuser == null || dealuser.IsDisposed)

{

dealuser = new DealUser ();

dealuser.Show();

}

}

AddStuInfo addstuinfo;

private void 档̦Ì案ã? 录? 入¨?ToolStripMenuItem_Click(object sender, EventArgs e)

{

if (addstuinfo == null || addstuinfo.IsDisposed)

{

addstuinfo = new AddStuInfo ();

addstuinfo.Show();

}

}

ApdateStuInfo apdatestuinfo;

private void 学¡ì生¦¨²信? 息¡é查¨¦询¡¥ToolStripMenuItem_Click(object sender, EventArgs e) {

if (apdatestuinfo == null || apdatestuinfo.IsDisposed)

apdatestuinfo = new ApdateStuInfo ();

apdatestuinfo.Show();

}

AddLoan addloan;

private void 助¨²学¡ì贷ä? 款? 录? 入¨?ToolStripMenuItem_Click(object sender, EventArgs e) {

if (addloan == null || addloan.IsDisposed)

addloan = new AddLoan ();

addloan.Show();

}

SeeLoan sLoan;

private void 助¨²学¡ì贷ä? 款? 查¨¦询¡¥ToolStripMenuItem_Click(object sender, EventArgs e) {

if (sLoan == null || sLoan.IsDisposed)

sLoan = new SeeLoan ();

sLoan.Show();

}

private void 表À¨ª彰? 与?处ä|分¤? 信? 息¡éToolStripMenuItem_Click(object sender, EventArgs e) {

}

DeletStudent DS;

private void 退ª? 学¡ì管¨¹理¤¨ªToolStripMenuItem_Click(object sender, EventArgs e)

{

if (DS == null || DS.IsDisposed)

DS = new DeletStudent ();

DS.Show();

}

Suspend Sus;

private void 休Y 学¡ì管¨¹理¤¨ªToolStripMenuItem_Click(object sender, EventArgs e)

{

if (Sus == null || Sus.IsDisposed)

Sus = new Suspend ();

Sus.Show();

}

Honor Hon;

private void 表À¨ª彰? 信? 息¡é查¨¦询¡¥ToolStripMenuItem_Click(object sender, EventArgs e) {

if (Hon == null || Hon.IsDisposed)

Hon = new Honor ();

Hon.Show();

}

HonorAdd HA;

private void 表À¨ª彰? 信? 息¡é管¨¹理¤¨ªToolStripMenuItem_Click(object sender, EventArgs e) {

if (HA == null || HA.IsDisposed)

HA = new HonorAdd ();

HA.Show();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class AddLoan : Form

{

public AddLoan()

{

InitializeComponent();

}

private void AddLoan_Load(object sender, EventArgs e)

{

textBox1.Focus();

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "" || textBox4.Text.Trim() == "" )

{

MessageBox .Show(" 请? 填¬? 写¡ä完ª¨º整? 信? 息¡é!ê?" , " 错䨪误¨提¬¨¢示º?" );

}

else

{

OleDbConnection add = new

OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

//add.Close();

add.Open();

OleDbCommand cmd = new OleDbCommand ("" , add);

string sql;

sql = "select LoanNum from LoanInfo where LoanNum='" + textBox1.Text.Trim() + "'" ; cmd.CommandText = sql;

if (cmd.ExecuteScalar() == null )

{

sql = "insert into LoanInfo values('" + textBox1.Text.Trim() + "','" +

textBox2.Text.Trim() + "','" + textBox3.Text.Trim() + "','" + textBox4.Text.Trim() + "','" + comboBox1.Text.Trim() + "')" ;

cmd.CommandText = sql;

cmd.ExecuteNonQuery();

MessageBox .Show(" 用?户¡ì添¬¨ª加¨成¨¦功|!ê?" , " 成¨¦功|提¬¨¢示º?" ); add.Close();

this .Close();

}

else

{

MessageBox .Show(" 该? 用?户¡ì已°? 经-存ä? 在¨²,ê? 请? 重? 新? 输º? 入¨? !ê?" , " 错

䨪误¨提¬¨¢示º?" );

add.Close();

}

}

}

private void button2_Click(object sender, EventArgs e)

{

this .Close();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class AddStuInfo : Form

{

public AddStuInfo()

{

InitializeComponent();

}

private void label1_Click(object sender, EventArgs e)

{

}

private void AddStuInfo_Load(object sender, EventArgs e)

{

OleDbConnection add = new OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

add.Open();

DataSet ds = new DataSet ();

}

private void button1_Click(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "" || textBox4.Text.Trim() == "" || textBox5.Text.Trim() == "" || comboBox1.Text.Trim() == "" ||

comboBox2.Text.Trim() == "" || comboBox3.Text.Trim() == "" )

{

MessageBox .Show(" 你? 填¬? 写¡ä的Ì? 信? 息¡é不? 完ª¨º整? ,ê? 请? 继¨¬续? 填¬? 写¡ä完ª¨º整? !ê?" , " 错䨪误¨提¬¨¢示º?" );

}

else

{

OleDbConnection add = new OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

add.Open();

string sql;

sql = "select * from StudentInfo where sNum='" + this .textBox1.Text.Trim() + "'" ; OleDbCommand cmd = new OleDbCommand (sql, add);

sql = "insert into StudentInfo values('" + textBox1.Text.Trim () + "','" + textBox2.Text.Trim () + "','" + comboBox1.Text.Trim() + "','" + textBox3.Text.Trim () + "','" + textBox4.Text.Trim () + "','" + comboBox2.Text.Trim() + "','" + textBox5.Text.Trim () + "','" + comboBox3.Text.Trim() + "')" ;

cmd.CommandText = sql;

cmd.ExecuteNonQuery();

MessageBox .Show(" 学¡ì生¦¨²学¡ì籍? 信? 息¡é注Á¡é册¨¢成¨¦功|!ê?" , " 成¨¦功|信? 息¡é" ); add.Close();

}

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class AddUser : Form

{

public AddUser()

{

InitializeComponent();

}

private void AddUser_Load(object sender, EventArgs e)

{

// DataSet ds = new DataSet();

//OleDbConnection cn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\MyProject\\student\\student\\sdatabase.mdb");

//OleDbDataAdapter adp = new OleDbDataAdapter("",cn);

//adp.Fill(ds);

textBox1.Focus();

}

private void button1_Click_1(object sender, EventArgs e)

{

if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "" || textBox3.Text.Trim() == "" ) {

MessageBox .Show(" 请? 填¬? 写¡ä完ª¨º整? 信? 息¡é!ê?" , " 错䨪误¨提¬¨¢示º?" ); }

else

{

if (textBox2.Text.Trim() != textBox3.Text.Trim())

{

MessageBox .Show(" 两¢? 次ä? 密¨¹码? 输º? 入¨? 不? 一°? 致? ,ê? 请? 重? 新? 输º? 入¨? !ê?" , " 错䨪误¨提¬¨¢示º?" );

}

else

{

OleDbConnection add = new

OleDbConnection ("Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb");

//add.Close();

add.Open();

OleDbCommand cmd = new OleDbCommand ("" ,add);

string sql;

sql = "select user from UserInfo where user='" + textBox1.Text.Trim() + "'" ; cmd.CommandText = sql;

if (cmd.ExecuteScalar() == null )

{

sql = "insert into UserInfo values('" + textBox1.Text.Trim() + "','" +

textBox2.Text.Trim() + "')" ;

cmd.CommandText = sql;

cmd.ExecuteNonQuery();

MessageBox .Show(" 用?户¡ì添¬¨ª加¨成¨¦功|!ê?" , " 成¨¦功|提¬¨¢示º?" ); add.Close();

this .Close();

}

else

{

MessageBox .Show(" 该? 用?户¡ì已°? 经-存ä? 在¨²,ê? 请? 重? 新? 输º? 入¨? !ê?" , " 错䨪误¨提¬¨¢示º?" );

add.Close();

}

}

}

}

private void button2_Click_1(object sender, EventArgs e)

{

this .Close();

}

private void label1_Click(object sender, EventArgs e)

{

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class ApdateStuInfo : Form

{

DataSet ds = new DataSet ();

OleDbDataAdapter adp = null ;

public ApdateStuInfo()

{

InitializeComponent();

}

private void ApdateStuInfo_Load(object sender, EventArgs e)

{

string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql = "Select * from StudentInfo";

adp = new OleDbDataAdapter (sql, cn);

adp.Fill(this .ds, "StudentInfo" );

this .dataGridView1.DataSource = this .ds.Tables["StudentInfo" ];

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class DealUser : Form

{

//定¡§义°? 数ºy 据Y 集¡¥对? 象¨

DataSet ds = new DataSet ();

OleDbDataAdapter adp =null ;

public DealUser()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

string cn="Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql="Select * from UserInfo";

adp=new OleDbDataAdapter (sql,cn);

adp.Fill(this .ds, "UserInfo" );

this .dataGridView1.DataSource = this .ds.Tables["UserInfo" ];

BindingSource bs = new BindingSource ();

bs.DataSource = this .ds.Tables["UserInfo" ];

bindingNavigator1.BindingSource = bs;

}

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) {

}

private void DealUser_Load(object sender, EventArgs e)

{

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class DeletStudent : Form

{

void LoadData()

{

DataSet ds = new DataSet ();

string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection connection = new OleDbConnection (cn);

connection.Open();

string sql = "Select * from StudentInfo";

adp = new OleDbDataAdapter (sql, cn);

adp.Fill(ds, "StudentInfo" );

this .dataGridView1.DataSource = ds.Tables["StudentInfo" ];

}

OleDbDataAdapter adp = null ;

public DeletStudent()

{

InitializeComponent();

}

private void DeletStudent_Load(object sender, EventArgs e)

{

LoadData();

}

private void 办㨬理¤¨ª休Y 学¡ìToolStripMenuItem_Click(object sender, EventArgs e) {

if (dataGridView1.SelectedRows.Count

{

MessageBox .Show(" 请? 选? 中D 其? 中D 一°? 行D !ê?" );

return ;

}

}

private void 办㨬理¤¨ª退ª? 学¡ìToolStripMenuItem_Click(object sender, EventArgs e) {

if (dataGridView1.SelectedRows.Count

{

MessageBox .Show(" 请? 选? 中D 其? 中D 一°? 行D !ê?" );

return ;

}

int ID = Convert .ToInt32(dataGridView1.SelectedRows[0].Cells[0].Value); string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection connection = new OleDbConnection (cn);

connection.Open();

string sql = string .Format("Delete from StudentInfo where sNum ={0}", ID); OleDbCommand cmd=null ;

cmd = new OleDbCommand (sql, connection);

cmd.ExecuteNonQuery();

MessageBox .Show(" 删¦? 除y 成¨¦功|!ê?" );

LoadData();

}

}

}

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace student

{

public partial class SeeLoan : Form

{

OleDbDataAdapter adp = null ;

public SeeLoan()

{

InitializeComponent();

}

private void SeeLoan_Load(object sender, EventArgs e)

{

DataSet ds = new DataSet ();

string cn="Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql="Select * from LoanInfo";

adp=new OleDbDataAdapter (sql,cn);

adp.Fill(ds,"LoanInfo" );

this .dataGridView1.DataSource = ds.Tables["LoanInfo" ];

}

private void button1_Click(object sender, EventArgs e)

{

DataSet ds = new DataSet ();

string cn = "Provider=Microsoft.ACE.OLEDB.12.0;Data

Source=D:\\MyProject\\student\\student\\sdatabase.accdb";

OleDbConnection deal = new OleDbConnection (cn);

deal.Open();

string sql = "Select * from LoanInfo where LoanType ='"+comboBox1.Text.Trim()+"'" ; adp = new OleDbDataAdapter (sql, cn);

adp.Fill(ds, "LoanInfo" );

this .dataGridView1.DataSource = ds.Tables["LoanInfo" ];

}

}

}


相关内容

  • 学生成绩管理系统需求文档
  • 学生成绩管理系统需求文档 一. 项目概述 1. 开发背景 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用,然而在计算机应用普及以前我国大部分高校的学生信息管理仅靠人工进行管理和操作,这种管理方式存在着许多缺点,如:效率低 ...

  • 学生信息管理系统项目数据库说明书
  • 学生信息管理系统项目 数据库设计说明书 文档作者: 项目组长: 批 准 人: 批准日期: 目 录 目 录 . ............................................................................................... ...

  • 深入理解落实[中小学生学籍管理办法]
  • 深入理解落实<中小学生学籍管理办法> 推进基础教育治理体系和能力现代化 教育部基础教育一司 杜柯伟 一.制定出台<中小学生学籍管理办法>的重大意义 (一)基础教育治理体系和治理能力建设的需要.管理方式的变革.建设学籍信息管理系统,是教育治理体系的重要内容,是治理能力现代化的基 ...

  • 南昌大学毕业设计开题报告
  • 南昌大学 毕业设计(论文)开题报告 题目:研究生学籍管理信息系统设计与实现 学 专 班 学 姓级:号:名:2001级四班01081510 20050315一.选题的依据及意义: 选题的依据:随着信息科技的高速发展,当今社会步入了数字化生存的时代,各种信息和数据越来越膨胀,潜移默化地影响我们的生活.目 ...

  • 学籍管理系统
  • 学籍管理系统 目录 一.学籍管理系统概述 . .................................................................................................. 2 1.1项目的背景与意义 . ............ ...

  • 学生学籍档案系统
  • 文档名称: 需求规格说明书 项目名称: 学生学籍管理系统项目负责人:陈滨,薛刚,李金泽,盛佳文 1引言 1.1编写目的 对所针对的学生学籍管理系统作了细致的分析和描述,为使用者和开发者提供了详细的说明.为软件的开发和后期的使用以及维护作帮助. 1.2项目背景 1.3参考资料 [1] 张海潘.< ...

  • 综合测评管理系统实验报告
  • 目 录 摘 要............................................................................................................................................... ...

  • 浅谈[中小学校管理评价]中的教育资源管理
  • 浅谈<中小学校管理评价>中的信息化建设 工作之余,带着一颗虔诚的心,用两个多月的时间认真阅读了由教育部部长袁仁贵主编的<中小学校管理评价>一书.我觉得此书就是我们中小学校管理评价的行动指南,让我们明确方向,认真阅读,更有利于今后工作的开展.近期经过对此书的阅读,我受益匪浅,我 ...

  • 数据库-学生学籍管理系统
  • 目录 一.系统定义 . ............................................................................................ 1 二.需求分析 . .................................. ...

  • 全国学籍系统异常情况处理汇总
  • 全国学籍系统异常情况处理汇总 一.省内自主招生提示非毕业生,全省学生查询学籍在"毕业结业"状态. 毕业学校的上级教育行政主管部门可以修改学生结束学业类型.回退毕业生. 尝试通过省内转学,需要跨年级的,请找跳板学校或者联系省里. 鉴于此,2015年做毕业操作的时候,轻易不要给结业. ...