string SqlText = \cno = '\+ this.dataGridView[2, i].Value.ToString() + \and sno = '\+ this.dataGridView[0, i].Value.ToString() + \
DA.ExeSQL(SqlText); } }
MessageBox.Show(\修改成功!\ }
DialogResult result = MessageBox.Show(\是否删除此记录?\\提示!\MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (this.dataGridView.Rows.Count != 0) {
if (result == DialogResult.Yes) {
string SqlText = \from sc where sno='\+ this.dataGridView[0, this.dataGridView.CurrentCellAddress.Y].Value.ToString() +
\
and
cno
=
'\
+
this.dataGridView[2,
this.dataGridView.CurrentCellAddress.Y].Value.ToString() + \
DataAccess DA = new DataAccess(); DA.ExeSQL(SqlText); this.DBDataGrid();
MessageBox.Show(\删除成功!\ }
else if (result == DialogResult.No) {
return; } }
(3)添加会跳转到课程管理界面。
new FormCourse().ShowDialog();
(4)后台程序
每调用一条sql语句时都会有一个和数据库链接的过程,所以把数据库连接的过程写成
一个类封装起来,大大提高了代码的利用率、和复用度。
关键代码:
class DataAccess {
SqlConnection conn;
static string Str = \Security=True\
public DataAccess() {
conn = new SqlConnection(Str); conn.Open(); }
//执行单个sql语句
public int ExeSQL(string sql) {
SqlCommand cmd = new SqlCommand(sql, this.conn); try {
cmd.ExecuteNonQuery(); return 1; }
catch (System.Data.SqlClient.SqlException ex) {
MessageBox.Show(ex.Message.ToString()); return -1; } finally {
cmd.Dispose(); this.conn.Close();
} }
// 判断数据库是否有记录,有记录则返回真,无则返回假 public bool IsRead(string sql) {
SqlCommand cmd = new SqlCommand(sql, this.conn); SqlDataReader dr = cmd.ExecuteReader(); try {
if (dr.Read()) {
return true; } else {
return false; } }
catch (System.Data.SqlClient.SqlException ex) {
MessageBox.Show(ex.Message.ToString()); return false; } finally {
dr.Close(); cmd.Dispose(); this.conn.Close(); } }
public DataTable ExeSQLdt(string sql) { try {
SqlDataAdapter da = new SqlDataAdapter(sql, conn); DataTable dt = new DataTable(); da.Fill(dt); return dt; }
catch (System.Data.SqlClient.SqlException ex) {
MessageBox.Show(ex.Message.ToString()); return null; } finally {
this.conn.Close(); } } }
5.1 运行维护
本系统维护主要包括以下内容:
1.权限维护。管理员需要对用户的用户名、密码和权限进行维护,给每名学生分配享用的用户名和密码,确定查询级别。
2.考试信息管理。考试时间安排及是否有成绩信息要经常进行更新。 3.成绩管理。及时发布已经出来的成绩,以供学生查阅。 5.2 系统的改进与提高
由于各种原因,本系统有许多缺点。针对本系统的一些缺点,在二期开发时主要在以下方面进行改进:
1、加强后台管理页面的建设。本系统只是面向用户,对成绩的管理只靠人工在后台操作,
费时又费力。加强后台管理系统的建设,各项操作由程序执行,方便、准确,又节省人工。 2、各模块之间的联系比较混乱。加强各模块之间的联系,条理清楚,链接明确。 三、课程设计(综合实验)总结或结论
1.本文设计的学生学籍管理信息系统的功能如下:
(1)添加用户:仅管理员和教师有此权限,对学生账号(学号)信息以及个人详细信息进行添加。
(2)删除用户:仅管理员和教师有此权限,对已经毕业或中途辍学的学生进行删除信息。
(3)查询信息:可看到学生的所有详细信息。
(4)修改信息。仅管理员有此权限,查询到学生信息,对学生的信息进行修改 2.体会:通过本次数据库课程设计我从中学习到了许多课本中没有的知识,更重要的是从该课程设计中对自己的动手能力和动脑能力有了更大层次的提高,切实提高了自己的综合能力,使得将所学的知识同实际的运用相结合,并对数据库知识的了解和运用,尤其是数据库中常用的检索操作和更新操作,以及权限的分配和安全性保护等等,有了更深层次的理解;对oracle数据库的触发器和存储过程的运用有了很大的了解和认识,能够根据实际的情况来编写适当的触发器和存储过程,并显示正确的处理结果;同时,通过该设计也充分的将所学的语言和数据库知识有效的结合,创新性的开发出一个具备比较合理的功能的可视化图形界面的数据库软件,为今后的实际工作的开发项目有了很大程度的帮助。 四、参考文献
(1)宋雨著,软件工程,
(2) 孙永强等著,Visual C#.NET入门与提高,清华大学出版社,2002年。 (3)章立民著,SQL Server 2000中文版完全实战--入门篇,中国铁道出版社,2001年。
(4)Jay Hilyard等著,C#经典实例,第2版,中国电力出版社,2007年6月。 (5)李永平。管理信息系统。北京:科学出版社,2004。
(6)张刚。信息系统开发实践教程,成都:电子科技大学出版社,2001.7。 (7)于华。基于3层C/S结构的管理信息系统开发。微型机与应用,2000。 (8)杨正洪,郑齐健。SQL Server 7关系数据库系统管理与开发指南,北京:机械工业出版社,2000。