




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京邮电大学C#与.NET4.0数据库开发 课程设计(论 文)题 目校友录管理系统专 业计算机科学与技术学生姓名付忠举班级学号B10041434指导教师欧晓鸥评阅教师指导单位南京邮电大学 日期: 2013年12月26日课程设计项目研究报告目 录第 1 章 项目简介11.1 项目名称11.2 开发人员11.3 指导教师1第 2 章 项目研究意义12.1 课程设计概述12.2 设计构思12.3 研究意义2第 3 章 模块分析及设计23.1系统功能结构图23.2系统数据流程图3第4 章 数据库设计44.1数据库需求分析44.2 E-R图44.3 数据表设计44.3.1登录用户信息表:54.3.2校友录信息表5第5 章 课程设计项目进度表6第6 章 达到的效果761 程序设计思想762 程序最终实现结果:7第7 章 重要的源程序10第8章 设计心得 .21数学与计算机系 - 19 -第 1 章 项目简介1.1 项目名称校友录管理系统1.2 开发人员1.3 指导教师欧晓鸥第 2 章 项目研究意义2.1 课程设计概述日益繁多的人际交往使得我们很难搞清楚与每个人之间的联系方式,特别是对于做经常出差的人来说更是难,所以通讯录能够便捷的给我们带来所需要的相关信息。而随着计算机的普及,人们的生活摆脱了传统式的记事本、电话簿,越来越多的靠计算机来帮助人们记住这些事情,极其简便。这就需要有一个使用的校友录管理系统,用户可以方便的通过自己电脑的校友录管理系统,来随时查阅自己所需要的信息,而不必再大费周折去翻开那繁琐的记事本。校友录管理系统主要分为五个功能模块:用户登录与注册、用户查询、添加记录、修改记录、删除记录。这些功能可以够基本实现你的应用需求。2.2 设计构思校友录管理系统功能需求分析:用户登录与注册:实现不同用户的注册跟登录通讯录。显示全部:实现用户对存在于数据库中的数据显示,方便用户了解数据存储情况。查找记录:实现用户在本软件数据库中查找自己需要的数据功能。添加记录:实现用户添加一条完整的记录,包括姓名、性别、生日、电话、邮箱、地址。修改记录:用户对数据库中已存在的记录进行修改,然后保存已经修改过的数据。删除记录:用户对数据库中已经存在的记录进行行删除操作。2.3 研究意义 校友录管理系统是一个专门针对储存用户联系方式以及一些简单个人信息的实用管理系统,它方便了用户对众多客户、朋友、同事等个人信息的储存和快速查阅的功能,大大减少了查找过程的时间。第 3 章 模块分析及设计3.1系统功能结构图 校友录管理系统 注册 登录显示全部添加查找注册用户修改删除退出系统 3.2系统数据流程图 用户注册登录校友录管理系统 校友录管理系统 主界面 主界面显示全部添加查找修改删除退出系统第4 章 数据库设计4.1数据库需求分析针对校友录管理系统,分别对用户登录、添加通讯录和查找、删除以及修改数据进行详细的调研和分析,总结出如下的需求信息:1.每条原始记录要有姓名、生日、电话、邮箱、地址信息,其中姓名不能为空。2.保证查询到的数据与姓名相一致3.根据相应姓名删除对应的全部数据4.2 E-R图姓名性别生日电话邮箱地址用户名 密码 用户 操作 信息4.3 数据表设计数据库名称:校友录管理系统,共有2个表: 1、用户表(Users) 2、校友录联系表(Contact)4.3.1登录用户信息表:4.3.2通讯录信息表第5 章 课程设计项目进度表日期完成的工作2013-12.4 12.11查阅相关资料,项目可行性研究,研究报告2013-12.1212.18数据采集,确定表格,数据类型,系统开发技术,运行环境2013-12.1912.25子模块的程序设计和调试2013-12.262014-1.1程序调试,撰写课程设计总结报告2014-1.2提交课程设计纸质和电子版材料 第6章 达到的效果61 程序设计思想 校友录管理系统设计,它的内容对于计算机来说是至关重要的,校友录管理系统为计算机的使用者提供充足的信息和快捷的查询手段。用C#语言构建的校友录管理系统设计,通过课上学到的和查阅一些文献的一些关于结构体、函数以及循环函数的运用和字符串的处理等基本知识可以初步的实现通讯录的显示、添加、查找、删除、修改等校友录简单而用的一些实用的功能,给人们带来更多的方便。本管理系统设计合理、操作方便、运行稳定、功能完备,具有较高的实用价值62 程序最终实现结果:校友录管理系统的登录界面: 当用户登录成功时,界面跳转到主界面: 如果是新用户则单击登录界面的注册按钮跳转到注册界面: 在主界面中分别设有显示全部、添加、查找、修改、删除、退出系统按钮,点击显示全部按钮则将显示数据库中的全部成员: 单击查找菜单,按姓名查找方式,输入想要查找的名字,点击查找按钮并清空文本框: 单击退出系统,则将关闭所有的窗口。第7 章 重要的源程序连接数据库:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data.SqlClient;namespace tong_xun_lu_guan_li public static class DBClass public static String strConn = Data source=SKQ3HEOVTLD8XZYSQLEXPRESS;Database= 通讯录管理系统;integrated security = SSPI; public static SqlConnection conn = new SqlConnection(strConn); 登录界面:namespace tong_xun_lu_guan_li public partial class Form1 : Form public Form1() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e) Register reg = new Register(); reg.Show(); this.Hide(); private void button2_Click(object sender, EventArgs e) if (textBox1.Text = | textBox2.Text = ) MessageBox.Show(用户名和密码不能为空); else DBClass.conn.Open(); DataSet dsMydataBase = new DataSet(); SqlCommand cmd = new SqlCommand(); cmd.Connection = DBClass.conn; cmd.CommandText = select UsersName from Users where UsersName = + textBox1.Text + ; cmd.ExecuteNonQuery(); if (cmd .ExecuteScalar() = null ) MessageBox.Show(用户名不存在!); textBox1.Clear(); textBox2.Clear(); DBClass.conn.Close(); return; else cmd.CommandText = select Userspwd from Users where UsersName = + textBox1.Text + ; cmd.ExecuteNonQuery(); if (textBox2.Text != cmd.ExecuteScalar().ToString() MessageBox.Show(密码错误); textBox1.Clear(); textBox2.Clear(); DBClass.conn.Close(); else if (textBox2.Text = cmd.ExecuteScalar().ToString() DBClass.conn.Close(); MessageBox.Show( 登录成功!); Home ho = new Home(); ho.Show(); this.Hide(); else Application.Exit(); private void textBox2_TextChanged(object sender, EventArgs e) textBox2.PasswordChar=*; private void button3_Click(object sender, EventArgs e) Application.Exit(); 注册界面:namespace tong_xun_lu_guan_li public partial class Register : Form public Register() InitializeComponent(); private void Register_Load(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e) try if (textBox1.Text = | textBox2.Text = ) MessageBox.Show(用户名和密码不能为空); else DBClass.conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = DBClass.conn; cmd.CommandText = Insert into Users(UsersName,Userspwd) Values( + textBox1.Text + , + textBox2.Text + ); cmd.ExecuteNonQuery(); DBClass.conn.Close(); MessageBox.Show(成功注册!); DataSet dsMyDataBase = new DataSet(); SqlDataAdapter daBaseInform = new SqlDataAdapter(Select UsersName From Users, DBClass.conn); daBaseInform.Fill(dsMyDataBase, BaseInform); dataGridView1.DataSource = dsMyDataBase.TablesBaseInform; textBox1.Clear(); textBox2.Clear(); catch (Exception ex) MessageBox.Show(ex.Message.ToString() + 打开数据库失败!); DBClass.conn.Close(); private void button2_Click(object sender, EventArgs e) Form1 L = new Form1(); L.Show(); this.Hide(); 主界面:namespace tong_xun_lu_guan_li public partial class Home : Form public Home() InitializeComponent(); protected override void OnClosing(CancelEventArgs e) Application.Exit(); private void Home_Load(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e) try DBClass.conn.Open(); DataSet dsMyDataBase = new DataSet(); SqlDataAdapter daBaseInform = new SqlDataAdapter(Select * from Contact, DBClass.conn); daBaseInform.Fill(dsMyDataBase, BaseInform); dataGridView1.DataSource = dsMyDataBase.TablesBaseInform; DBClass.conn.Close(); catch (Exception ex) MessageBox.Show(ex.Message.ToString() + 打开数据库失败!); DBClass.conn.Close(); private void button2_Click(object sender, EventArgs e) Form1 L = new Form1(); L.Show(); this.Hide(); private void button3_Click(object sender, EventArgs e) if (textBox1.Text = ) MessageBox.Show(请输入要添加的姓名!); textBox1.Clear(); textBox4.Clear(); textBox7.Clear(); textBox8.Clear(); else if (textBox1.Text != ) DBClass.conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = DBClass.conn; cmd.CommandText = Insert into Contact(姓名,性别,生日,电话,邮箱,地址) Values( + textBox1.Text + , + comboBox1.Text + , + dateTimePicker1.Text + , + textBox4.Text + , + textBox7.Text + , + textBox8.Text + ); cmd.ExecuteNonQuery(); DBClass.conn.Close(); MessageBox.Show(添加成功!); DataSet dsMyDataBase = new DataSet(); SqlDataAdapter daBaseInform = new SqlDataAdapter(Select * From Contact, DBClass.conn); daBaseInform.Fill(dsMyDataBase, BaseInform); dataGridView3.DataSource = dsMyDataBase.TablesBaseInform; private void button4_Click(object sender, EventArgs e) this.Close(); private void button7_Click(object sender, EventArgs e) if (textBox6.Text = ) MessageBox.Show(请输入要删除的姓名!); else if (textBox6.Text != ) DBClass.conn.Open(); DataSet dsMydataBase = new DataSet(); SqlCommand cmd = new SqlCommand(); cmd.Connection = DBClass.conn; cmd.CommandText = select 姓名 from Contact where 姓名 = + textBox6.Text + ; cmd.ExecuteNonQuery(); if (cmd.ExecuteScalar() = null) MessageBox.Show(用户名不存在!); textBox6.Clear(); DBClass.conn.Close(); return; else cmd.CommandText = delete from Contact where姓名= + textBox6.Text + ; cmd.ExecuteNonQuery(); DBClass.conn.Close(); MessageBox.Show(删除成功); DataSet dsMyDataBase = new DataSet(); SqlDataAdapter daBaseInform = new SqlDataAdapter(Select * From Contact, DBClass.conn); daBaseInform.Fill(dsMyDataBase, BaseInform); dataGridView4.DataSource = dsMyDataBase.TablesBaseInform; textBox6.Clear(); private void button8_Click(object sender, EventArgs e) this.Close(); private void button9_Click(object sender, EventArgs e) if (textBox9.Text = ) MessageBox.Show(请输入要修改的姓名!); textBox9.Clear(); textBox12.Clear(); textBox13.Clear(); textBox14.Clear(); else if (textBox9.Text != ) DBClass.conn.Open(); DataSet dsMydataBase = new DataSet(); SqlCommand cmd = new SqlCommand(); cmd.Connection = DBClass.conn; cmd.CommandText = select 姓名 from Contact where 姓名 = + textBox9.Text + ; cmd.ExecuteNonQuery(); if (cmd.ExecuteScalar() = null) MessageBox.Show(用户名不存在!); textBox9.Clear(); textBox12.Clear(); textBox13.Clear(); textBox14.Clear(); DBClass.conn.Close(); return; else cmd.CommandText = update Contact set 姓名= + textBox9.Text + , + 性别= + comboBox2.Text + , + 生日= + dateTimePicker2.Text + , + 电话= + textBox12.Text + , + 邮箱= + textBox13.Text + , + 地址= + textBox14.Text + where 姓名= + textBox9.Text + ; cmd.ExecuteNonQuery(); DBClass.conn.Close(); MessageBox.Show(修改成功!); DataSet dsMyDataBase = new DataSet(); SqlDataAdapter daBaseInform = new SqlDataAdapter(Select * From Contact, DBClass.conn); daBaseInform.Fill(dsMyDataBase, BaseInform); dataGridView5.DataSource = dsMyDataBase.TablesBaseInform; textBox9.Clear(); textBox12.Clear(); textBox13.Clear(); textBox14.Clear(); private void button5_Click(object sender, EventArgs e) try if (textBox5.Text = ) MessageBox.Show(查找的姓名不能为空!); else if (textBox5.Text != ) DBClass.conn.Open(); DataSet dsMydataBase = new DataSet(); SqlCommand cmd = new SqlCommand(); cmd.Connection = DBClass.conn; cmd.CommandText = select 姓名 from Contact where 姓名 = + textBox5.Text + ; cmd.ExecuteNonQuery(); if (cmd.ExecuteScalar() = null) MessageBox.Show(用户名不存在!); textBox5.Clear(); DBClass.conn.Close(); return; else string searchString = select * from Contact where 姓名= + textBox5.Text + ; SqlDataAdapter dataSelect = new SqlDataAdapter(searchString, DBClass.conn); DataTable dt = new DataTable(); dataSelect.Fill(dt); dataGridView2.DataSource = dt.DefaultView; this.dataGridView2.RowHeadersVisible = true; DBClass.conn.Close(); textBox5.Clear(); catch (Exception ex) MessageBox.Show(ex.Message.ToString() + 打开数据库失败!); DBClass.conn.Close(); private void button6_Click(object sender, EventArgs e) Application.Exit(); private void button10_Click(object sender, EventArgs e) Application.Exit(); private void button11_Click_1(object sender, EventArgs e) Application.Exit(); private void button13_Click(object sender, EventArgs e) try DBClass.conn.Open(); DataSet dsMyDataBase = new DataSet(); SqlDataAdapter daBaseInform = new SqlDataAdapter(Select * from Contact, DBClass.conn); daBaseInform.Fill(dsMyDataBase, BaseInform); dataGridView3.DataSource = dsMyDataBase.TablesBaseInform; DBClass.conn.Close(); catch (Exception ex) MessageBox.Show(ex.Message.ToString() + 打开数据库失败!); DBClass.conn.Close(); private void button12_Click(object sender, EventArgs e) try DBClass.conn.Open(); DataSet dsMyDataBase = new DataSet(); SqlDataAdapter daBaseInform = new SqlDataAdapter(Select * from Contact, DBClass.conn); daBaseInform.Fill(dsMyDataBase, BaseInform); dataGridView2.DataSource = dsMyDataBase.TablesBaseInform; DBC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 20xx年装修施工合同2篇
- 雕塑设计与制作公司员工保密合同
- 安全方面培训目的课件
- 电梯工程分包方案模板(3篇)
- 球磨机系统安全培训课件
- 安全文明施工培训
- 环保水处理岗位知识培训课件
- 防洪工程安全方案(3篇)
- 地下防水的工程方案(3篇)
- 初中语文古诗词教学策略分析
- 动物无害化处理场建设项目可行性研究报告建议书
- 2025-2030年中国中高端猪肉市场发展现状及营销策略分析报告
- 全国林业碳汇计量监测技术指南(试行)
- DBJ33T 1289-2022 住宅厨房混合排气道系统应用技术规程
- 低温杜瓦瓶安全操作规程(4篇)
- 水库白蚁防治施工方案设计
- 《套餐销售技巧培训》课件
- 第一单元 分数乘法(单元测试)(含答案)-2024-2025学年六年级上册人教版数学
- 次氯酸钠培训
- 《射频通信全链路系统设计》 课件 第5、6章 射频通信发射机设计、射频通信时钟系统设计
- DBJ46-070-2024 海南省民用建筑外门窗工程技术标准
评论
0/150
提交评论