收藏 分销(赏)

人口查询系统作品设计说明书.doc

上传人:天**** 文档编号:2248424 上传时间:2024-05-23 格式:DOC 页数:24 大小:613.50KB 下载积分:10 金币
下载 相关 举报
人口查询系统作品设计说明书.doc_第1页
第1页 / 共24页
人口查询系统作品设计说明书.doc_第2页
第2页 / 共24页


点击查看更多>>
资源描述
2016—2017学年第一学期期末考试 《C#程序设计》实践考核 作品设计说明书 项目名称: 人口查询系统 专 业: 计算机网络技术 学 号: 姓 名: 任课教师: 2016 年 12 月 25 日 考核项目及要求 考核内容:设计实现XX村庄人口查询系统,完成村民信息查询功能,查询时可以根据出生年月、年龄、年龄段、健康状况等条件进行操作,查询结果可导出表格存档。 考核要求: 1. 正确设置开发环境,正确配置服务器。 2. 界面美观大方,布局合理。 3. 实现与用户交互,及时响应用户的请求。 4. 删除村户时该户所包含的村民信息也应删除。 5. 能够根据出生年月、年龄、年龄段进行查询。 6. 若查询结果中的数据过多,需要进行分页显示。 7. 查询结果导出到表格存档时,可以过滤掉部分村民。 8. 使用MVC三层架构,体现学生解决实际问题的能力。 目录 《C#程序设计》实践考核 1 作品设计说明书 1 目录 4 第一章系统需求分析 4 1.1数据库(ACCESS)简单介绍 4 1.2 Visual.C#.2010简单介绍 5 1.3 系统开发的实现方式 5 1.4系统开发技术支持 6 1.5系统功能分析 6 第二章 系统设计 6 2.1 设计目标 6 2.2功能结构图 6 2.3数据库设计 7 2.3.1建立数据库。 7 2.3.2创建表 7 第三章软件设计 8 3.1总体设计 8 3.1.1登陆界面设计 8 3.1.2 用户信息主界面设计 9 3.1.3 子界面设计 9 3.2详细设计 9 第四章测试与总结 17 4.1测试 17 4.2总结 21 第一章系统需求分析 1.1数据库(ACCESS)简单介绍 SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。SQL是高级的非过程化编程语言,是沟通数据库服务器和客户端的重要工具,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以,具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的 SQL接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。 1.2 Visual.C#.2010简单介绍 支持Windows Azure,微软云计算架构迈入重要里程碑,助力移动与嵌入式装置开发,三屏一云商机无限,实践当前最热门的 Agile/Scrum 开发方法,强化团队竞争力。升级的软件测试功能及工具,为软件质量严格把关。搭配Windows 7,Silverlight4 与 Office,发挥多核并行运算威力,创建美感与效能并重的新一代软件。支持最新C++标准,增强IDE,切实提高程序员开发效率。是微软开发的一种面向对象的编程语言,是微软.NET开发环境的重要组成部分。它是为生成在.NET Framework 上运行的多种应用程序而设计的。C# 简单、功能强大、类型安全,而且是面向对象的。C#凭借它的许多创新,在保持 C 样式语言的表示形式和优美的同时,实现了应用程序的快速开发。 1.3 系统开发的实现方式 在系统建立在数据库(SQL),Visual.C#.2010中,使用SQL设计相应的数据记录,方便在测试时的使用。使用Visual.C#.2005为窗体设计主体工具,进行相应的窗体的设计的实现。 1.4系统开发技术支持 本系统须在相应计算机,能安装开发工具(ACCESS与Visual.C#.2005)。 1.5系统功能分析 1、能够删除村户时该户所包含的村民信息也删除。 2、能够根据姓名、出生年月、年龄等进行查询。 3、能够查询结果中的数据过多,需要进行分页显示。 4、能够查询结果导出到表格存档时,可以过滤掉部分村民。 第二章 系统设计 2.1 设计目标 本系统运行时将产生四个程序文件,分别是Form1.cs,Form2.cs,Program.cs,SQLHelper.cs其中Form1.csForm2.cs是窗体设计时代码编辑区。另外,还应该包含一个数据库test文件。 2.2功能结构图 健康状况 1、数据库关系E-R图: 家庭住址 id test 身份证号 name 出生年月 pwd 人口信息 用户登录 门牌号 姓名 年龄 民族 性别 2、验证过程流程图: 用户 登录 密码 主页面 用户信息 用户搜索 删除用户 添加用户 2.3数据库设计 2.3.1建立数据库。 2.3.2创建表 1、创建人口信息表,并添加数据。 2、创建用户登录表,并添加数据。 第三章软件设计 3.1总体设计 3.1.1登陆界面设计 在登陆界面包括用户名,密码(为label控件)的输入,含有登陆(为button控件)命令。当用户名和密码(为textbox控件)都正确时,会出现登陆成功并能进入下一个界面,否则,该系统将会出现“登录失败”。 3.1.2 用户信息主界面设计 人口信息主界面是整个系统的核心部分,该界面能够显示村庄人口的基本信息。该界面主要包括两个Tabcontral控件,四个button控件用来执行上一页,下一页,全部信息,导出命令。 3.1.3 子界面设计 在子界面包括用户搜索,添加用户,删除用户界面的设计: 用户搜索界面包括一个datagridview控件主要显示人口信息查询的结果,一个button控件用于搜索用户,九个checkbox控件,用来显示我们所要查找人口信息的属性,六个textbox控件和两个combobox控件(该控件可以显示下拉信息,方便查找)。 添加用户界面主要通过输入该用户信息对该村庄的用户进行添加,主要包括九个label控件,一个combobox控件(用来显示性别男女),八个textbox控件和一个button控件用来执行添加命令操作。 删除个用户界面主要通过输入该村庄人口任意关键词就可以对该用户进行删除,主要包括九个label控件一个combobox控件(用来显示性别男女),八个textbox控件和一个button控件用来执行删除命令操作。 3.2详细设计 1、用户登录界面如下图所示: 编码如下: private void button1_Click(object sender, EventArgs e) { string user = 用户.Text.Trim(); string pwd = 密码.Text.Trim(); SqlConnection conn = new SqlConnection("server=127.0.0.1;database=人口调查;uid=sa;pwd=123"); conn.Open(); SqlCommand cmd = new SqlCommand("select * from 用户登录 where name='" + user + "' and pwd = '" + pwd + "'", conn); int m = (int)cmd.ExecuteScalar(); if (m == 1) { MessageBox.Show("登陆成功!"); Form2 form2 = new Form2(); form2.Show(); } else { MessageBox.Show("登录失败!"); } } 2、查找用户信息等操作主界面 1)用户信息界面操作 全部信息代码如下: private void but_info_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection("server=127.0.0.1;database=人口调查;uid=sa;pwd=123"); conn.Open(); DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter("select * from 人口信息",conn); da.Fill(ds); dataGridView1.DataSource = ds.Tables[0]; conn.Close(); } 下一页信息代码如下: private void but_next_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection("server=127.0.0.1;database=人口调查;uid=sa;pwd=123"); conn.Open(); DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter("select top 5 * from 人口信息 where 姓名 not in(select top 5 姓名 from 人口信息)", conn); da.Fill(ds); dataGridView1.DataSource = ds.Tables[0]; conn.Close(); } 上一页信息代码如下: private void but_between_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection("server=127.0.0.1;database=人口调查;uid=sa;pwd=123"); conn.Open(); DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter("select top 5 * from 人口信息", conn); da.Fill(ds); dataGridView1.DataSource = ds.Tables[0]; conn.Close(); } 导出信息代码如下: private void but_table_Click(object sender, EventArgs e) { ExportExcel("",dataGridView1); } public void ExportExcel(string fileName, DataGridView 表格) { string saveFileName = ""; SaveFileDialog saveDialog = new SaveFileDialog(); saveDialog.DefaultExt = "xls"; saveDialog.Filter = "Excel文件t|*.xls"; saveDialog.FileName = fileName; saveDialog.ShowDialog(); saveFileName = saveDialog.FileName; HSSFWorkbook workbook = new HSSFWorkbook(); MemoryStream ms = new MemoryStream(); NPOI.SS.UserModel.ISheet sheet = workbook.CreateSheet("Sheet1"); int rowCount = 表格1.Rows.Count; int colCount = 表格1.Columns.Count; for (int i = 0; i < rowCount; i++) { NPOI.SS.UserModel.IRow dataRow = sheet.CreateRow(i); for (int j = 0; j < colCount; j++) { if (表括格1.Columns[j].Visible && 表格1.Rows[i].Cells[j].Value != null) { NPOI.SS.UserModel.ICell cell = dataRow.CreateCell(j); cell.SetCellValue(表格1.Rows[i].Cells[j].Value.ToString()); } } } 2)用户搜索界面操作 private void but_serch_Click(object sender, EventArgs e) { string name2 = xingming1.Text.Trim(); string sex2 = xingbie1.Text.Trim(); string minzu2 = minzu1.Text.Trim(); int age2 = Int32.Parse(this.nianling1.Value.ToString()); string menpaihao2 = menpaihao1.Text.Trim(); string chushengnianyue2 = chusheng1.Text.Trim(); string num22 = shenfen1.Text.Trim(); string info = jiating1.Text.Trim(); string jiankangzhuangkuang2 = jiankang1.Text.Trim(); SqlConnection conn = new SqlConnection("server=127.0.0.1;database=人?人口调查;uid=sa;pwd=123"); conn.Open(); SqlCommand cmd = new SqlCommand("select * from 人口信息 where 姓名='" + name2 + " ' or 性别='" + sex2 + "' or 民?族?='" + minzu2 + "' or 年龄='" + age2 + "'or 年ê龄='" + age2 + "' or 门牌号='" + menpaihao2 + "' or 出生年月='" + chushengnianyue2 + "'or 身份证号='" + num22 +"' or 家庭住址·='" + info + "' or 健康状况='" + jiankangzhuangkuang2 + "'",conn); SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds); dataGridView2.DataSource = ds.Tables[0]; conn.Close(); } 3)添加用户信息操作界面 编译语言如下所示: private void button1_Click(object sender, EventArgs e) { string name = xingming.Text.Trim(); string sex = xingbie.Text.Trim(); string mz = minzu.Text.Trim(); int age = Int32.Parse(this.nianling.Value.ToString());//insert into tab_info values('" + name + "','','') string num = menpaihao.Text.Trim(); string csny = chushen.Text.Trim(); string sfzh = shenfen.Text.Trim(); string info = jiating.Text.Trim(); string jkzk = jiankang.Text.Trim(); SqlConnection conn = new SqlConnection("server=127.0.0.1;database=人口调查;uid=sa;pwd=123"); conn.Open(); SqlCommand cmd = new SqlCommand("insert into 人口信息 values('" + name + "','" + sex + "','" + mz + "','" + age + "',' " + num + "','" + csny + "','" + sfzh + "','" + info + "','" + jkzk + "')", conn); SqlDataAdapter da = new SqlDataAdapter(); da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds); MessageBox.Show("添加成功|!?"); } private void button2_Click(object sender, EventArgs e) { xingming.Text = ""; xingbie.Text = ""; minzu.Text = ""; nianling.Text = ""; menpaihao.Text = ""; chushen.Text = ""; shenfen.Text = ""; jiating.Text = ""; jiankang.Text = ""; nianling.Value = 0; } 4)删除用户操作界面 代码如下: private void button3_Click(object sender, EventArgs e) { string name2 = xingming2.Text.Trim(); string sex2 = xingbie2.Text.Trim(); string minzu2 = minzu22.Text.Trim(); int age2 = Int32.Parse(this.nianling1.Value.ToString()); string menpaihao2 = menpaihao22.Text.Trim(); string chushengnianyue2 = chusheng2.Text.Trim(); string num22 = shenfen2.Text.Trim(); string info = jiating2.Text.Trim(); string jiankangzhuangkuang2 = jiankang2.Text.Trim(); SqlConnection conn = new SqlConnection("server=127.0.0.1;database=人口调查;uid=sa;pwd=123"); conn.Open(); SqlCommand cmd = new SqlCommand("delete 人口信息 where 姓名='" + name2 + " ' or 性别='" + sex2 + "' or 民族='" + minzu2 + "' or 年ê龄='" + age2 + "'or 年龄='" + age2 + "' or 门牌号='" + menpaihao2 + "' or 出生年月='" + chushengnianyue2 + "'or 身份证号='" + num22 + "' or 家庭住址·='" + info + "' or 健康状况='" + jiankangzhuangkuang2 + "'", conn); SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { MessageBox.Show("删除成功|!?"); } MessageBox.Show("删除成功|!?"); } 第四章测试与总结 4.1测试 1)用户登录界面 输入正确的用户名及密码会登陆成功 否则 2)登陆成功后出现该界面(用户信息主界面)。 3)点击全部信息按钮。 4)点击上一页按钮。 5)点击导出按钮。 6)用户搜索界面。 7)添加用户界面 输入用户信息 点击重置按钮,信息全部删除 输入用户信息,点击添加按钮,会出现那添加成功 删除用户界面 输入任意关键字就可以删除成功,只要改数据库有该用户信息 4.2总结 1、对这次制作报告有深刻的理解。 2、对Visual Studio在实践中的应用有深刻的理解,在实践的基础上,把所学过的知识应用于世纪应用中,更深刻理解了c#的基本语句的实际应用。 3、通过实验课程设计激发了我学习的积极性,培养了我独立发现问题、分析问题、解决问题的能力。更增强了我与同学的交流沟通能力和共同解决合作的能力。 4、理解了c#的基本语句知识点一级学科之间的融合渗透:将之前学的编程基本知识应用到c#中。 2016-2017学年度第一学期期末考试 《C#程序设计》实践考核成绩报告单 排课编号:(2016-2017-1)-Z081309-00065-2 批阅日期: 2016年12月30日 姓名 班级 学号 评价项目 评分标准 分值 得分 备注 基础知识 知识结构运用合理 10 代码编写规范,变量、函数命名准确 20 注释编写详细 10 系统运行情况 系统运行高效稳定 10 界面设计简洁明了 10 控件使用合理 10 作品完成情况 系统能共完善 20 系统创新 10 合计 100 考核成绩 任课教师签字 复核人签字 目 录 第一章 总 论 1 一、项目提要 1 二、可行性研究报告编制依据 2 三、综合评价和论证结论 3 四、存在问题与建议 4 第二章 项目背景及必要性 5 一、项目建设背景 5 二、项目区农业产业化经营发展现状 11 三、项目建设的必要性及目的意义 12 第三章 建设条件 15 一、项目区概况 15 二、项目实施的有利条件 17 第四章 建设单位基本情况 19 一、建设单位概况 19 二、研发能力 20 三、财务状况 20 第五章 市场分析与销售方案 21 一、市场分析 21 二、产品生产及销售方案 22 三、销售策略及营销模式 22 四、销售队伍和销售网络建设 23 第六章 项目建设方案 24 一、建设任务和规模 24 二、项目规划和布局 24 三、生产技术方案与工艺流程 25 四、项目建设标准和具体建设内容 26 五、项目实施进度安排 27 第七章 投资估算和资金筹措 28 一、投资估算依据 28 二、项目建设投资估算 28 三、资金来源 29 四、年度投资与资金偿还计划 29 第八章 财务评价 30 一、财务评价的原则 30 二、主要参数的选择 30 三、财务估算 31 四、盈利能力分析 32 五、不确定性分析 33 六、财务评价结论 34 第九章 环境影响评价 35 一、环境影响 35 二、环境保护与治理措施 35 三、环保部门意见 36 第十章 农业产业化经营与农民增收效果评价 37 一、产业化经营 37 二、农民增收 38 三、其它社会影响 38 第十一章 项目组织与管理 40 一、组织机构与职能划分 40 二、项目经营管理模式 42 三、技术培训 42 四、劳动保护与安全卫生 43 第十二章 可行性研究结论与建议 46 一、可行性研究结论 46 二、建议 47
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 应用文书 > 技术指导

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服