下载 >  课程资源 >  专业指导 > 软件工程---研究生学分管理系统
3

软件工程---研究生学分管理系统

本文主要介绍研究生学分管理系统的开发的背景,系统分析,需求分析,系统设计方面的内容
2009-06-10 上传大小:221KB
分享
收藏 (1) 举报

评论 共0条

xub999 感觉还好,文档比较齐全,排版好像有点问题,如若附上程序就更好了
2014-11-03
回复
软件工程课程设计报告_学生成绩管理系统的结构化分析

软件工程课程设计报告_学生成绩管理系统的结构化分析

立即下载
软件工程课程设计(学生信息管理系统

学生管理系统是常见的一种管理系统,包括学生信息、家庭信息、奖惩信息、毕业信息,学生社会关系,学生成绩管理和学生课程信息管理等内容的设计。本系统正是为解决这一问题而设计的,大大减少了以往学生管理工作的工作量,提高了工作效率,适应时代的步伐。 本系统采用Sybase的ODB ODBC作为后台数据库,由于本次为课程设计,所需的数据库并不需要很大,因而不使用SQL Server;使用Borland JBuilder 2006 Enterprise作为开发前台软件。使用Windows XP操作系统作为开发平台。 。

立即下载
学分管理系统数据库课设及源码

完整的本科课程设计文档及源代码,无需修改,可直接使用。

立即下载
SSM项目源码__大学生学分管理系统

SSM 项目源码 大学生学分管理系统 ,采用ssm+easyui+mysql+eclipse开发完成。

立即下载
学分绩计算器南大版,支持从教务网直接导入成绩

非常SB但还是有点用处的一个小程序,使用C#语言,数据用XML,界面用dotnetbar。Bug相信存在很多,发现了请告诉我,不胜感激. 发现Bug或要源码请致Email:Abraham1@163.com

立即下载
学生学分管理系统

学生学分管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生学分管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。

立即下载
学生信息管理系统需求分析报告_很详细!(软件工程)

软件工程学生信息管理系统需求分析报告:压缩包中有ER图、数据流图、流程图、数据字典,以及报告文档!很详细!

立即下载
辽工大 java ee 课程设计 学生个人学分统计系统

辽工大java ee课程设计 学生个人学分统计系统

立即下载
学分管理系统 c++

c++设计的学分管理系统,用于大一大二同学进行的简单课程设计。

立即下载
黄淮学院软件工程考试试卷a_试卷

黄淮学院软件工程考试试卷a_试卷 黄淮学院软件工程考试试卷a_试卷

立即下载
学分查询系统开题报告

自己做的一个学分查询系统的开题报告,word版的,分段明确,可以直接做成PPT

立即下载
学分管理系统-C++课程设计

C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验C++课程设计的大型实验

立即下载
学分管理系统.doc

学分管理系统.doc 学分管理系统.doc 学分管理系统.doc

立即下载
高级软件工程研究生课程)

北京大学计算机科学与技术系<br>硕士研究生课程<br>共有PPT 11 章节<br>高级软件工程01(概述、DOT与对象模型)<br>高级软件工程02(CORBA概述)<br>高级软件工程03(IDL与ORB接口)<br>高级软件工程04(IR、POA.)<br>高级软件工程05(IIOP、现有产品、开发过程)<br>高级软件工程06(COM基础:接口与实现)<br>高级软件工程07(包含与聚合)<br>高级软件工程08(DCOM、自动化)<br>高级软件工程09(VC与COM、CORBA与COM比较)<br>高级软件工程10(SA概述、SA风格及实例)<br>高级软件工程11(DNA、MTS、MSMQ)

立即下载
软件工程实验报告_学生成绩管理系统

软件工程实验报告_学生成绩管理系统

立即下载
软件工程工资管理系统

目 录 数据库课程设计报告 1 1.开发环境和相关技术介绍 5 1.1开发环境 5 1.2相关技术介绍 5 2.需求分析 5 2.1系统需求和功能 5 2.1.2功能需求描述 6 2.1.2.1员工基本信息模块 6 2.1.2.2工资结构设置模块 6 2.1.2.3工资汇总模块 6 2.2数据字典 6 2.2.1数据结构 7 2.2.2数据项 7 2.2.3数据流 8 2.4安全性要求 8 2.5一致性要求 9 2.6完整性要求 9 3 概念结构设计 9 3.1设计方法和步骤 9 3.2概念结构E-R图 9 4.逻辑结构设计 9 4.1具体RDBMS数据模型转换 9 4.2系统结构图 10 5.数据库物理设计 10 5.1索引的选择建立 10 5.2数据存放位置 10 5.3确定系统配置 10 6.数据库实施 10 6.1数据库创建 10 6.1.1各数据表说明 10 6.1.2数据库创建 11 6.2数据库备份和恢复方案 13 6.2.1应用辅助工具进行备份和恢复 13 6.2.2分离数据库法 13 6.3用户界面设计和应用程序编码 13 6.3.1用户界面设计 13 6.3.2类文件功能描述 14 6.3.3主要代码分析 14 }7.系统测试方案和测试报告 21 7.1测试方案 21 7.2测试过程 21 7.2.1登陆测试 21 8.安装和使用说明 25 8.1安装说明 25 8.1.1安装VB6.0E 25 8.1.2安装Microsoft SQL Server 2000 ODBC驱动程序 25 8.1.3升级Microsoft SQL Server 2000数据库管理系统 25 8.1.4附加数据库 25 8.1.5可能出现情况 25 9.完成情况和总结 25 9.1总结 25 1.开发环境和相关技术介绍 1.1开发环境 项目名称: 工资管理系统 开发软件:vb6.0与Access 2000 运行环境:2000/XP/2003 1.2相关技术介绍 Microsoft SQL Server 2000数据库管理系统是微软公司研制开发的关系型数据库管理系统。该系统支持并扩展了SQL语言标准,可以运用标准SQL语句对数据进行操作,也可以使用功能强大的GUI工具进行灵活的数据管理。同时,系统还提供功能完善的API,可以在应用程序中调用这些API来实现与数据库系统的连接以及相关数据的操作。sp3是该系统的一个版本号,只有sp4以上的SQL 2000系统才能够支持纯ODBC连接方式。 Vb6.0功能强大的应用程序开发工具,主要支持基于面向对像化的语言的各种开发项目。 2.需求分析 2.1系统需求和功能 工资管理信息系统对企业加强工资管理有着重要的作用,就一般的大型企业来说,它的设计内容非常复杂而且繁多,比如拥有工资计算功能,工资统计功能,报表输出功能,而且设计的模块也很多,比如工资管理模块,工资统计模块,报表设计模块,打印输出模块,模糊查询模块等。 由于本软件主要是为作者工作的一家科技公司定制开发的。该公司是一家刚刚成立的公司,总体人员比较少,有正式员工20人,人员结构比较简单,学历比较高,基本拥有大专以上学历,部门划分也很清晰,而且人员的流动性不高,所以公司目前对工资管理的要求不高。因此,针对该公司而言,我们经过反复论证,最终确定了工资管理系统的设计方案,该工资管理系统的主要功能如图3.1所示: 2.1.2功能需求描述 2.1.2.1员工基本信息模块 员工基本信息模块具有员工信息输入、员工增删、员工信息查询三个功能,员工基本信息包括员工号、员工姓名、员工性别、所在部门、所在岗位、工龄和工资等级等信息。员工增删实现了对数据库中员工信息的增加和删除。员工可以通过员工号或员工姓名对员工信息进行查询。 2.1.2.2工资结构设置模块 根据该公司的工资管理实际情况,本系统将工资结构分为基础工资、岗位工资、工龄工资三部分。该模块可以对这三个工资类型设置工资等级,并对每个等级设置工资标准。 2.1.2.3工资汇总模块 用户在员工信息管理模块对该员工的工资等级进行输入以后,在工资汇总模块会自动对员工工资进行汇总。用户可以打印出工资汇总表,打印之前可以通过打印预览功能进行打预览。 2.2数据字典 该软件的数据库由下述四张数据表组成: 员工信息表、基础工资设置表、岗位工资设置表 1、 员工信息表 字段 字段名 类型 宽度 说明 1 员工号 字符型 3 数字 2 员工姓名 字符型 10 小于等于5个汉字 3 员工性别 字符型 2 “男”或“女” 4 岗位名称 字符型 14 小于等于7个汉字 5 工龄 数值型 2 1~99之间 6 工资等级 数值型 2 1~99之间 2、 基础工资设置表 字段 字段名 类型 宽度 说明 1 工资等级 数值型 2 1~99之间 2 工资标准 数值型 4 1~9999之间 3、 岗位工资设置表 字段 字段名 类型 宽度 说明 1 岗位名称 字符型 14 小于等于7个汉字 2 工资标准 数值型 4 1~9999之间 4、 工龄工资设置表 字段 字段名 类型 宽度 说明 1 工资等级 数值型 2 1~99之间 2 工资标准 数值型 4 1~9999之间 5、 管理员注册表 字段 字段名 类型 宽度 说明 1 注册名 字符型 10 任意字符 2 口令 字符型 10 英文字母或数字 2.2.1数据结构 工资总=(ID,编号) 管理=(用户名) 员工信息=(ID,编号) 2.2.2数据项 表2.1 数据项表 编号 标识符 类型 长度 所属表名 同义名 1 ID 自动编号 20 工资总 工资编号 2 编号 文本 50 工资总 员工编号 3 基本工资 数字 自动 工资总 员工基本工资 4 津贴 数字 自动 工资总 员工津贴 5 工资扣 数字 自动 工资总 所扣除的工资数 6 洗理 数字 自动 工资总 洗理费 7 书报 数字 自动 工资总 书报费 8 交通 数字 自动 工资总 交通费 9 资金 数字 自动 工资总 本月资金 10 日期 文本 255 工资总 发放资金日期 11 用户名 文本 50 管理 用户名称 12 密码 文本 50 管理 用户密码 13 ID 自动 4 员工信息 员工信息表ID 14 编号 文本 50 员工信息 员工编号 15 科室 文本 255 员工信息 员工所在科室 16 姓名 文本 255 员工信息 员工姓名 17 生日 文本 50 员工信息 员工生日 18 政治面貌 文本 50 员工信息 员工政治面貌 19 职务 文本 50 员工信息 员工职务 20 军烈属 文本 50 员工信息 员工军烈属 21 出勤天数 文本 50 员工信息 员工出勤天数 22 缺勤天数 文本 50 员工信息 员工缺勤天数 2.2.3数据流 表2.2 数据流表 编号 名称 来源 去向 组成 1 身份信息 系统管理员 应用系统 管理员帐户+密码 2 授权信息 应用系统 系统管理员 3 错误身份信息 应用系统 系统管理员 4 查询请求 系统管理员 应用系统 待查询对象识别符(如ID,编号) 5 查询结果 应用系统 系统管理员 被查询对象具体信息 6 管理请求 系统管理员 应用系统 识别符(ID,编号等)+管理类型 7 管理结果信息 应用系统 系统管理员 被管理对象处理结果 8 非法请求 应用系统 系统管理员 非法请求提示信息 2.4安全性要求 访问数据库时需要输入登陆帐号和密码。在数据库内设有管理员表,登陆系统时会要求输入管理员帐号和密码。登陆模块根据输入帐号和密码查管理员表,查到匹配记录则允许其登陆系统。管理员帐号和密码可以在系统中添加和修改。 2.5一致性要求 在管理系统相关的表之间,有较强的关联性。为了实现一致性的需求,各个表之间均建立起了相应的一致性约束。 2.6完整性要求 根据工资管理系统的要求,为保持数据的完整性,采用了数据库的事务机制,防止出现操作故障引起的数据不一致。 3 概念结构设计 3.1设计方法和步骤 采用自底而上的设计方法。先自顶向下地进行需求分析,对工资管理系统的需求进行逐步细化;然后再自底而上地设计概念结构,最终将各个局部应用的概念结构集合成为全局概念结构。 3.2概念结构E-R图 通过对局部应用的选择,逐一设计出分E-R图,并对各个分E-R图进行合并,生成初步E-R图,消除不必要的系统冗余,可以得出以下工资管理系统E-R图。 图3.1 工资管理系统E-R图 4.逻辑结构设计 4.1具体RDBMS数据模型转换 由于Microsoft SQL Server 2000系统支持上述数据模型,所以不用进行特定的转换。 4.2系统结构图 图4.1 系统结构图 5.数据库物理设计 5.1索引的选择建立 由于系统可能要涉及大量数据的操作,所以索引的建立就成为一种必需。本系统采用B+树索引方法,分别在各Customer,Diretory,Order和OrderDetail各个表的主键上建立索引。 5.2数据存放位置 本系统数据和索引存放在磁盘中。 5.3确定系统配置 根据具体需要配置。 6.数据库实施 6.1数据库创建 6.1.1各数据表说明 表6.1 数据表描述表 编号 数据表名称 类型 内容 01 管理 辅助表 记录管理员帐号,密码 02 工资总 主表 记录订员工总工资 03 员工信息 主表 记录员工基本信息 04 基础工资 主表 记录员工基础工资 05 工龄工资 主表 记录员工工龄工资 06 岗位工资 主表 保存员工岗位工资 6.1.2数据库创建 在Microsoft SQL Server 2000的企业管理器中完成数据库和数据表的创建,具体SQL脚本请参见附录gz.sql SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[wage]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[wage]( [name] [char](10) NOT NULL, [wage] [money] NULL, CONSTRAINT [PK_wage] PRIMARY KEY CLUSTERED ( [name] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[部门]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[部门]( [部门编码] [char](10) NOT NULL, [部门名称] [char](10) NULL, CONSTRAINT [PK_部门] PRIMARY KEY CLUSTERED ( [部门编码] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[员工信息]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[员工信息]( [工号] [char](10) NOT NULL, [姓名] [char](10) NULL, [部门编号] [char](10) NULL, [性别] [char](10) NULL, [身份证] [char](10) NULL, [帐号] [char](10) NULL, [家庭地址] [char](10) NULL ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[工资]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[工资]( [工号] [char](10) NOT NULL, [姓名] [char](10) NULL, [部门编码] [char](10) NULL, [性别] [char](10) NULL, [身份证号码] [char](10) NULL, [银行帐号] [char](10) NULL, [基本工资] [money] NULL, [奖金] [money] NULL, [应扣] [money] NULL, [应扣] [money] NULL, [保险] [money] NULL, [应发工资] [money] NULL, [实发工资] [money] NULL, [发放时间] [smalldatetime] NULL, CONSTRAINT [PK_工资] PRIMARY KEY CLUSTERED ( [工号] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[测试]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[测试]( [gz] [money] NULL, [dd] [datetime] NULL, [ss] [money] NULL, [aa] [char](10) NULL ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[汇总]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[汇总]( [部门编码] [char](10) NOT NULL, [基本工资] [money] NULL, [奖金] [money] NULL, [应扣工资] [money] NULL, [应发工资] [money] NULL, [保险] [money] NULL, [应发工资] [money] NULL, [实发工资] [money] NULL, CONSTRAINT [PK_汇总] PRIMARY KEY CLUSTERED ( [部门编码] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[用户信息]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[用户信息]( [用户名] [char](10) NOT NULL, [密码] [char](10) NULL, CONSTRAINT [PK_用户信息] PRIMARY KEY CLUSTERED ( [用户名] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] END 6.2数据库备份和恢复方案 6.2.1应用辅助工具进行备份和恢复 应用数据库辅助工具(如sqlbackuptools…)进行备份,选择所需要备份的数据库和目标地址即可进行数据备份,恢复数据库只需要指定备份文件和需要恢复的数据库即可进行数据恢复。 6.2.2分离数据库法 在企业管理器中右击需要备份的数据库,选择“所有任务”,“分离数据库”,执行分析操作,拷贝数据库MDF文件和LDF文件。 恢复方案:在企业管理器的控制台树中选择“数据库”节点,右击,“所有任务”,“附加数据库”,找到待恢复数据库的MDF文件,确定。 6.3用户界面设计和应用程序编码 6.3.1用户界面设计 本系统的用户界面用vb编写,主要由1个主界面和10个辅助对话框组成。主界面集合系统主要基本功能按键,辅助对话框负责采集用户输入信息和做基本的信息处理。 图10 用户界面 6.3.2类文件功能描述 NO. 类名 类型 功能 01 Main Frame 主窗口类,提供系统主要功能的调用接口 02 Database 辅助类 封装系统主要数据和方法,为其它类提供信息处理功能 03 About Dialog 关于对话框,主要显示系统信息和作者信息 04 AddDeleteUser Dialog 删除和新增管理员 05 AmendPassword Dialog 修改管理员密码 06 BookReturn Dialog 获得当前所选中 07 BookSubscribe Dialog 主要是完成员工信息的录入,包括新增、删除、修改及验收 08 Booktsjy Dialog 主要完成员工基本信息的录入 09 Land Dialog 登陆窗口 10 SelectBook Dialog 选择当前所选中的员工 11 Setdzda Dialog 设置员工信息 12 Setdzlb Dialog 设置工资的类别信息 13 Settsda Dialog 设置员工的档案信息 14 Settslb Dialog 设置员工的类别信息 15 Calculator Dialog 计算器 表4 类文件描述表 6.3.3主要代码分析 ============================================================================== Dim rs As ADODB.Recordset Dim con As New ADODB.Connection Dim mysql As String Dim gzxx, jj, kk, bf, hz As Node '声明TreeView1节点 Dim i, s As Integer 's用来记录数据库的字段数,I用来作为循环变量 Private Sub Command1_Click() prtfg1.打印 DataGrid1 End Sub Private Sub Command2_Click() Me.Hide Command1.Enabled = False End Sub Private Sub Form_Load() Set con = New ADODB.Connection con.ConnectionString = "provider=Microsoft.jet.oledb.4.0;data source=gzgl.mdb;persist security info=false" con.CursorLocation = adUseClient con.Open mysql = "select 姓名,科室,职务,基本工资,津贴,奖金,洗理,书报,交通,工资扣 from 员工信息,工资总 where 员工信息.编号=工资总.编号" Set rs = con.Execute(mysql) '设置TreeView1中所要显示的节点名称 Set gzxx = TreeView1.Nodes.Add(, , "gzxx", "工资信息") Set jj = TreeView1.Nodes.Add(, , "jj", "奖金汇总") Set kk = TreeView1.Nodes.Add(, , "kk", "扣款汇总") Set bf = TreeView1.Nodes.Add(, , "bf", "补助汇总") Set hz = TreeView1.Nodes.Add(, , "hz", "工资条信息") Set DataGrid1.DataSource = rs '设置DataGrid1数据源 s = rs.Fields.Count For i = 0 To s - 1 '循环设置DataGrid1中各列宽度 DataGrid1.Columns(i).Width = 1300 Next i Command1.Enabled = False '只有当显示了工资条信息后"打印"按钮才可以使用 End Sub Private Sub Form_Resize() '窗口位置和大小布局 TreeView1.Height = Me.Height - Toolbar1.Height DataGrid1.Width = Me.Width - TreeView1.Width DataGrid1.Height = Me.Height - Toolbar1.Height Toolbar1.Top = DataGrid1.Height Toolbar1.Width = Me.Width Command1.Left = Me.Width / 2 - (Command1.Width + Command2.Width) / 2 Command2.Left = Me.Width / 2 End Sub Private Sub TreeView1_Click() Select Case TreeView1.SelectedItem.Index Case 1 '单击"工资信息"节点 mysql = "select 姓名,科室,职务,基本工资,津贴,奖金,洗理,书报,交通,工资扣 from 员工信息,工资总 where 员工信息.编号=工资总.编号" Set rs = con.Execute(mysql) Set DataGrid1.DataSource = rs s = rs.Fields.Count For i = 0 To s - 1 DataGrid1.Columns(i).Width = 1300 Next i Case 2 '单击"奖金汇总"节点 mysql = "select 姓名,科室,职务,奖金 from 员工信息,工资总 where 员工信息.编号=工资总.编号" Set rs = con.Execute(mysql) Set DataGrid1.DataSource = rs s = rs.Fields.Count For i = 0 To s - 1 DataGrid1.Columns(i).Width = 3200 Next i Case 3 '单击"扣款汇总"节点 mysql = "select 姓名,科室,职务,工资扣 from 员工信息,工资总 where 员工信息.编号=工资总.编号" Set rs = con.Execute(mysql) Set DataGrid1.DataSource = rs s = rs.Fields.Count For i = 0 To s - 1 DataGrid1.Columns(i).Width = 3200 Next i Case 4 '单击"补助汇总"节点 mysql = "select 姓名,科室,职务,津贴 + 洗理 + 书报 + 交通 as 补助汇总 from 员工信息,工资总 where 员工信息.编号=工资总.编号" Set rs = con.Execute(mysql) Set DataGrid1.DataSource = rs s = rs.Fields.Count For i = 0 To s - 1 DataGrid1.Columns(i).Width = 3200 Next i Case 5 '单击"工资条信息"节点 mysql = "select 姓名,科室,职务,基本工资,奖金,津贴 + 洗理 + 书报 + 交通 as 补助,基本工资 + 奖金 + 津贴 + 洗理 + 书报 + 交通 as 应发工资,工资扣 as 应扣工资, 应发工资-应扣工资 as 实发工资 from 员工信息,工资总 where 员工信息.编号=工资总.编号" Set rs = con.Execute(mysql) Set DataGrid1.DataSource = rs s = rs.Fields.Count For i = 0 To s - 1 DataGrid1.Columns(i).Width = 1445 Next i Command1.Enabled = True End Select End Sub =================================================================================== Dim Flag As Boolean Private Sub Command1_Click() diskname = Year(Now) & "-" & Month(Now) & ".xls" Flag = FloppyDrive("A:") If Flag = False Then MsgBox "A:驱没有准备好,请将磁盘插入驱动器!", 48, "警告" '------------------------------- '函数:检查软驱中是否有盘的存在 '------------------------------- Else ExporToExcel ("select 员工信息.编号 as 编号,姓名,科室,职务,基本工资,津贴,工资扣,洗理,书报,交通,奖金,日期 from 工资总,员工信息 where 员工信息.编号=工资总.编号") MsgBox "恭喜你,数据导出成功", 48, "祝贺" Me.Hide End If End Sub Private Sub Command2_Click() Me.Hide End Sub Private Sub Form_Load() Set con = New ADODB.Connection con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=gzgl.mdb;Persist Security Info=false" con.CursorLocation = adUseClient con.Open Label1.Caption = "生成Excel格式上报盘" + "请确认软驱中已插入软盘" End Sub ============================================================================================================================================== Dim con As New ADODB.Connection Dim rst As New ADODB.Recordset Dim mysql As String Dim a, i, msg, j, m As Integer Private Sub Command2_Click(Index As Integer) Select Case Index Case 0 '第一条记录 rst.MoveFirst Command2(0).Enabled = False Command2(1).Enabled = False Command2(2).Enabled = True Command2(3).Enabled = True Case 1 '上一条记录 rst.MovePrevious '上一条 If rst.BOF Then MsgBox "已经没有上一条记录了", 48, "警告" rst.MoveFirst Command2(0).Enabled = False Command2(1).Enabled = False Command2(2).Enabled = True Command2(3).Enabled = True End If Command2(2).Enabled = True Command2(3).Enabled = True Case 2 '下一条记录 rst.MoveNext If rst.EOF Then MsgBox "已经没有最后一条记录了", 48, "警告" Command2_Click (3) rst.MoveLast Command2(2).Enabled = False Command2(3).Enabled = False Command2(1).Enabled = True Command2(0).Enabled = True End If Command2(1).Enabled = True Command2(0).Enabled = True Case 3 '末尾一条记录 rst.MoveLast Command2(2).Enabled = False Command2(3).Enabled = False Command2(1).Enabled = True Command2(0).Enabled = True Case 4 For i = 0 To a - 1 Text1(i).Enabled = True Next i Case 5 Form9.Show 1 Case 6 Me.Hide '关闭 Case 7 msg = MsgBox("您确定删除该员工信息吗?", vbOKCancel, "警告") If msg = 1 Then rst.Delete rst.MoveNext End If End Select Text1(0).Text = IIf(IsNull(rst.Fields("姓名").Value), "", rst.Fields("姓名").Value) '填充记录 Text1(1).Text = IIf(IsNull(rst.Fields("政治面貌").Value), "", rst.Fields("政治面貌").Value) '填充记录 Text1(2).Text = IIf(IsNull(rst.Fields("职务").Value), "", rst.Fields("职务").Value) '填充记录 Text1(3).Text = IIf(IsNull(rst.Fields("科室").Value), "", rst.Fields("科室").Value) '填充记录 Text1(4).Text = IIf(IsNull(rst.Fields("生日").Value), "", rst.Fields("生日").Value) '填充记录 Text1(5).Text = IIf(IsNull(rst.Fields("军烈属").Value), "", rst.Fields("军烈属").Value) '填充记录 Text1(6).Text = IIf(IsNull(rst.Fields("出勤天数").Value), "", rst.Fields("出勤天数").Value) '填充记录 Text1(7).Text = IIf(IsNull(rst.Fields("缺勤天数").Value), "", rst.Fields("缺勤天数").Value) '填充记录 Text1(8).Text = IIf(IsNull(rst.Fields("基本工资").Value), "", rst.Fields("基本工资").Value) '填充记录 Text1(9).Text = IIf(IsNull(rst.Fields("奖金").Value), "", rst.Fields("奖金").Value) '填充记录 Text1(10).Text = IIf(IsNull(rst.Fields("津贴").Value), "", rst.Fields("津贴").Value) '填充记录 Text1(11).Text = IIf(IsNull(rst.Fields("洗理").Value), "", rst.Fields("洗理").Value) '填充记录 Text1(12).Text = IIf(IsNull(rst.Fields("书报").Value), "", rst.Fields("书报").Value) '填充记录 Text1(13).Text = IIf(IsNull(rst.Fields("交通").Value), "", rst.Fields("交通").Value) '填充记录 Text1(14).Text = IIf(IsNull(rst.Fields("工资扣").Value), "", rst.Fields("工资扣").Value) '填充记录 Text1(15).Text = Val(Text1(8).Text) + Val(Text1(9).Text) + Val(Text1(10).Text) + Val(Text1(11).Text) + Val(Text1(12).Text) + Val(Text1(13).Text) Text1(16).Text = Text1(14).Text Text1(17).Text = Val(Text1(15).Text) - Val(Text1(16).Text) End Sub Private Sub Form_Load() Set con = New ADODB.Connection a = Text1.Count con.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=gzgl.mdb;persist security info=false" con.CursorLocation = adUseClient con.Open rst.Open "select * from 员工信息,工资总 where 员工信息.ID=工资总.ID", con, adOpenKeyset, adLockOptimistic If rst.BOF = True Or rst.EOF Then MsgBox "数据库是空的!" Else Text1(0).Text = rst.Fields("姓名").Value Text1(1).Text = rst.Fields("政治面貌").Value Text1(2).Text = rst.Fields("职务").Value Text1(3).Text = rst.Fields("科室").Value Text1(4).Text = rst.Fields("生日").Value Text1(5).Text = rst.Fields("军烈属").Value Text1(6).Text = rst.Fields("出勤天数").Value Text1(7).Text = rst.Fields("缺勤天数").Value Text1(8).Text = rst.Fields("基本工资").Value Text1(9).Text = rst.Fields("奖金").Value Text1(10).Text = rst.Fields("津贴").Value Text1(11).Text = rst.Fields("洗理").Value Text1(12).Text = rst.Fields("书报").Value Text1(13).Text = rst.Fields("交通").Value Text1(14).Text = rst.Fields("工资扣").Value Text1(15).Text = Val(Text1(8).Text) + Val(Text1(9).Text) + Val(Text1(10).Text) + Val(Text1(11).Text) + Val(Text1(12).Text) + Val(Text1(13).Text) Text1(16).Text = Text1(14).Text Text1(17).Text = Val(Text1(15).Text) - Val(Text1(16).Text) End If For i = 0 To a - 1 Text1(i).Enabled = False Next i End Sub Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer) If KeyAscii = 13 Then msg = MsgBox("您确定修改该员工的信息吗?", vbOKCancel, "提示") If msg = 1 Then If Not (rst.EOF) Then rst.Fields("姓名").Value = CStr(Text1(0).Text) rst.Fields("政治面貌").Value = CStr(Text1(1).Text) rst.Fields("职务").Value = CStr(Text1(2).Text) rst.Fields("科室").Value = CStr(Text1(3).Text) rst.Fields("生日").Value = CStr(Text1(4).Text) rst.Fields("军烈属").Value = CStr(Text1(5).Text) rst.Fields("出勤天数").Value = CStr(Text1(6).Text) rst.Fields("缺勤天数").Value = CStr(Text1(7).Text) rst.Fields("基本工资").Value = CStr(Text1(8).Text) rst.Fields("奖金").Value = CStr(Text1(9).Text) rst.Fields("津贴").Value = CStr(Text1(10).Text) rst.Fields("洗理").Value = CStr(Text1(11).Text) rst.Fields("书报").Value = CStr(Text1(12).Text) rst.Fields("交通").Value = CStr(Text1(13).Text) rst.Fields("工资扣").Value = CStr(Text1(14).Text) Text1(15).Text = Val(Text1(8).Text) + Val(Text1(9).Text) + Val(Text1(10).Text) + Val(Text1(11).Text) + Val(Text1(12).Text) + Val(Text1(13).Text) Text1(16).Text = Text1(14).Text Text1(17).Text = Val(Text1(15).Text) - Val(Text1(16).Text) End If End If End If End Sub }7.系统测试方案和测试报告 7.1测试方案 由于系统规模较小,所以没有安排单独的白盒测试,而是相应地将这部分测试归并到系统编码过程中。整个测试过程基于自顶向下测试的组装模块的方法,先对主模块进行基本测试,然后在按深度优先策略逐一将子模块组装到主模块上进行测试,最后再对系统进行全面的整体测试。 7.2测试过程 (白盒测试过程略(参考代码),以下是系统黑盒测试过程:) 7.2.1登陆测试 双击可执行文件gzglzc1.exe打开应用系统,可见登陆界面: 图11 系统界面 上图为工资管理系统的主界面,由菜单和工具栏组成.当单击菜单栏中”其它””更改密码”即可打开如下图所示的密码更改窗口. 密码更改 在这个窗口里,用户可以更改自己的登陆密码,但不能更改其它用户的登陆密码.如果要更改其它用户的登陆密码,只有管理员才能权限进行更改. 员工基本信息 如上图所示为员工信息管理窗口,在这个窗口里,用户或管理员可以添加、修改和删除员工的基本信息,同时还可以查询员工信息。比如工资信息等。 查询条件 上图为查询条件的选择窗口,在这个窗口中用户可以选择三种查询方式,分别是姓名、部门、日期。当选择按部门来查询并按下“确定”时会打开下图所示的窗口。在这个窗口中用户可以按员工所在的部门信息来查询。 按部门查询 报表打印 上图为报表打印窗口,在这个窗口中,用户可以按工资信息、资金汇总、扣款汇总、补助汇总、工资条信息来打印。 工资报表生成 这个窗口主要是生成工资报表以Execl格式存放到软盘。 8.安装和使用说明 8.1安装说明 8.1.1安装VB6.0 8.1.2安装Microsoft SQL Server 2000 ODBC驱动程序 该驱动程序可以实现ODBC与MS SQL的连接,使ODBC可以灵活地与数据库系统进行数据通信。(安装文件见附录) 8.1.3升级Microsoft SQL Server 2000数据库管理系统 JDBC连接方式需要sp3版本的Microsoft SQL Server 2000数据库管理系统才能够支持,如果数据库管理系统版本低于sp3可以使用升级补丁进行升级。(补丁文件见附录) 8.1.4附加数据库 将本系统数据库附加到Microsoft SQL Server 2000系统中。具体方式为:打开“企业管理器”打开目录数直到“数据库”结点 右击“数据库”选择“所有任务”选择“附加数据库”找到数据库MDF文件(见附录)“确定”。 8.1.5可能出现情况 完成以上配置后就可以运行本系统,如果无法运行则可能是由于以下原因: a.数据库系统登陆问题,本系统登陆2000数据库系统的用户名为:sa,密码为空,如果目标机器的Microsoft SQL Server 2000数据库系统不存在sa用户,或者该用户密码不为空则无法进行正常数据库连接。解决方法有:方法1.修改数据库管理系统用户名和密码(用户名:sa,密码为空); b.登陆方式问题,在“企业管理器”的“属性”中的“安全”选项卡下将登陆方式修改为SQL Server和Windows混合登陆。 8.2使用说明 参考测试过程。 9.完成情况和总结 9.1总结 通过独立完成本次课程设计,我对数据库这门课程有了更加深刻的理解。在对系统数据库的分析、设计中,碰到很多概念上很模糊的问题,通过查阅相关资料,问题得到了解决,设计工作也顺利进行。另外,通过运用ODBC数据库连接技术,我对vb数据库编程技术也有了一定的了解和认识,希望通过以后的学习继续加深这方面知识的掌握。 参考文献 [1]王汝传.计算机图形学[M].北京:人民邮电出版社,1999:123-130. [2]刘榴娣,刘明奇,党长民.实用数字图像处理[M].北京:北京理工大学出版,2000:12 25.. [3]丁兆海.Delphi基础教程[M].北京:电子工业出版社,1999. [4]王小华.Delphi 5程序设计与控件参考[M].北京:电子工业出版社,1999:70-120. [5]赵子江.多媒体技术基础[M].北京:机械工业出版社,2001:118-130. [6]段来盛,郑城荣,曹恒.Delphi实战演练[M].北京:人民邮政出版社,2002:80-95.

立即下载
软件工程硕士论文参考题目

四川大学软件工程硕士论文,参考选题。研究方向和课题介绍。

立即下载
教务管理系统+jsp

基于jsp技术的教务管理系统里面包含sql的数据库

立即下载
C# 源码 教务管理系统

using System; using System.Collections; using System.ComponentModel; using System.Drawing; using System.Windows.Forms; namespace 教务管理系统 { public class ClassInfo : 医院管理系统.ParentForm { private System.Data.SqlClient.SqlCommand sqlSelectCommand1; private System.Data.SqlClient.SqlCommand sqlInsertCommand1; private System.Data.SqlClient.SqlCommand sqlUpdateCommand1; private System.Data.SqlClient.SqlCommand sqlDeleteCommand1; private System.Data.SqlClient.SqlConnection sqlConnection1; private 教务管理系统.DataSet1 dataSet11; private System.Windows.Forms.Label label4; private System.Windows.Forms.Label label5; private System.Windows.Forms.Label label6; private System.Windows.Forms.Label label7; private System.Windows.Forms.Label label8; private System.Windows.Forms.Label label9; private System.Windows.Forms.TextBox txt4; private System.Windows.Forms.TextBox txt5; private System.Windows.Forms.TextBox txt6; private System.Windows.Forms.TextBox txt9; private System.Windows.Forms.TextBox txt8; private System.Windows.Forms.TextBox txt7; private System.ComponentModel.IContainer components = null; public ClassInfo() { // 该调用是 Windows 窗体设计器所必需的。 InitializeComponent(); // TODO: 在 InitializeComponent 调用后添加任何初始化 } /// &lt;summary&gt; /// 清理所有正在使用的资源。 /// &lt;/summary&gt; protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region 设计器生成的代码 /// &lt;summary&gt; /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// &lt;/summary&gt; private void InitializeComponent() { this.sqlSelectCommand1 = new System.Data.SqlClient.SqlCommand(); this.sqlConnection1 = new System.Data.SqlClient.SqlConnection(); this.sqlInsertCommand1 = new System.Data.SqlClient.SqlCommand(); this.sqlUpdateCommand1 = new System.Data.SqlClient.SqlCommand(); this.sqlDeleteCommand1 = new System.Data.SqlClient.SqlCommand(); this.dataSet11 = new 教务管理系统.DataSet1(); this.label4 = new System.Windows.Forms.Label(); this.txt4 = new System.Windows.Forms.TextBox(); this.txt5 = new System.Windows.Forms.TextBox(); this.label5 = new System.Windows.Forms.Label(); this.label6 = new System.Windows.Forms.Label(); this.txt6 = new System.Windows.Forms.TextBox(); this.txt9 = new System.Windows.Forms.TextBox(); this.label7 = new System.Windows.Forms.Label(); this.label8 = new System.Windows.Forms.Label(); this.txt8 = new System.Windows.Forms.TextBox(); this.txt7 = new System.Windows.Forms.TextBox(); this.label9 = new System.Windows.Forms.Label(); ((System.ComponentModel.ISupportInitialize)(this.dataGrid1)).BeginInit(); this.groupBox2.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataSet11)).BeginInit(); // // groupBox1 // this.groupBox1.Name = &quot;groupBox1&quot;; // // txt2 // this.txt2.Name = &quot;txt2&quot;; // // label1 // this.label1.Name = &quot;label1&quot;; this.label1.Text = &quot;年级&quot;; this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleRight; // // btnSearch // this.btnSearch.Name = &quot;btnSearch&quot;; this.btnSearch.Click += new System.EventHandler(this.btnSearch_Click); // // txt1 // this.txt1.Name = &quot;txt1&quot;; // // label2 // this.label2.Name = &quot;label2&quot;; this.label2.Text = &quot;班级编号&quot;; // // txt3 // this.txt3.Name = &quot;txt3&quot;; // // label3 // this.label3.Name = &quot;label3&quot;; this.label3.Text = &quot;班级名称&quot;; // // toolBar1 // this.toolBar1.Name = &quot;toolBar1&quot;; this.toolBar1.Size = new System.Drawing.Size(728, 41); // // dataGrid1 // this.dataGrid1.DataMember = &quot;班级信息&quot;; this.dataGrid1.DataSource = this.dataSet11; this.dataGrid1.Name = &quot;dataGrid1&quot;; // // groupBox2 // this.groupBox2.Controls.Add(this.txt4); this.groupBox2.Controls.Add(this.label4); this.groupBox2.Controls.Add(this.txt5); this.groupBox2.Controls.Add(this.label5); this.groupBox2.Controls.Add(this.label6); this.groupBox2.Controls.Add(this.txt6); this.groupBox2.Controls.Add(this.txt9); this.groupBox2.Controls.Add(this.label7); this.groupBox2.Controls.Add(this.label8); this.groupBox2.Controls.Add(this.txt8); this.groupBox2.Controls.Add(this.txt7); this.groupBox2.Controls.Add(this.label9); this.groupBox2.Name = &quot;groupBox2&quot;; // // da1 // this.da1.DeleteCommand = this.sqlDeleteCommand1; this.da1.InsertCommand = this.sqlInsertCommand1; this.da1.SelectCommand = this.sqlSelectCommand1; this.da1.TableMappings.AddRange(new System.Data.Common.DataTableMapping[] { new System.Data.Common.DataTableMapping(&quot;Table&quot;, &quot;班级信息&quot;, new System.Data.Common.DataColumnMapping[] { new System.Data.Common.DataColumnMapping(&quot;班级编号&quot;, &quot;班级编号&quot;), new System.Data.Common.DataColumnMapping(&quot;年级&quot;, &quot;年级&quot;), new System.Data.Common.DataColumnMapping(&quot;班级名称&quot;, &quot;班级名称&quot;), new System.Data.Common.DataColumnMapping(&quot;班级简称&quot;, &quot;班级简称&quot;), new System.Data.Common.DataColumnMapping(&quot;人数&quot;, &quot;人数&quot;), new System.Data.Common.DataColumnMapping(&quot;班主任&quot;, &quot;班主任&quot;)})}); this.da1.UpdateCommand = this.sqlUpdateCommand1; // // sqlSelectCommand1 // this.sqlSelectCommand1.CommandText = &quot;SELECT 班级编号, 年级, 班级名称, 班级简称, 人数, 班主任 FROM 班级信息 WHERE (班级编号 LIKE @Param4) AND (年级 &quot; + &quot;LIKE @Param5) AND (班级名称 LIKE @Param6)&quot;; this.sqlSelectCommand1.Connection = this.sqlConnection1; this.sqlSelectCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Param4&quot;, System.Data.SqlDbType.VarChar, 14, &quot;班级编号&quot;)); this.sqlSelectCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Param5&quot;, System.Data.SqlDbType.VarChar, 4, &quot;年级&quot;)); this.sqlSelectCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Param6&quot;, System.Data.SqlDbType.VarChar, 30, &quot;班级名称&quot;)); // // sqlConnection1 // this.sqlConnection1.ConnectionString = &quot;workstation id=localhost;packet size=4096;integrated security=SSPI;data source=\&quot;.&quot; + &quot;\&quot;;persist security info=False;initial catalog=eisbook&quot;; // // sqlInsertCommand1 // this.sqlInsertCommand1.CommandText = &quot;INSERT INTO 班级信息(班级编号, 年级, 班级名称, 班级简称, 人数, 班主任) VALUES (@班级编号, @年级, @班级名称, @班级简称,&quot; + &quot; @人数, @班主任); SELECT 班级编号, 年级, 班级名称, 班级简称, 人数, 班主任 FROM 班级信息 WHERE (班级编号 = @班级编号)&quot; + &quot;&quot;; this.sqlInsertCommand1.Connection = this.sqlConnection1; this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班级编号&quot;, System.Data.SqlDbType.VarChar, 14, &quot;班级编号&quot;)); this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@年级&quot;, System.Data.SqlDbType.VarChar, 4, &quot;年级&quot;)); this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班级名称&quot;, System.Data.SqlDbType.VarChar, 30, &quot;班级名称&quot;)); this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班级简称&quot;, System.Data.SqlDbType.VarChar, 16, &quot;班级简称&quot;)); this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@人数&quot;, System.Data.SqlDbType.Decimal, 5, System.Data.ParameterDirection.Input, false, ((System.Byte)(3)), ((System.Byte)(0)), &quot;人数&quot;, System.Data.DataRowVersion.Current, null)); this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班主任&quot;, System.Data.SqlDbType.VarChar, 8, &quot;班主任&quot;)); // // sqlUpdateCommand1 // this.sqlUpdateCommand1.CommandText = @&quot;UPDATE 班级信息 SET 班级编号 = @班级编号, 年级 = @年级, 班级名称 = @班级名称, 班级简称 = @班级简称, 人数 = @人数, 班主任 = @班主任 WHERE (班级编号 = @Original_班级编号) AND (人数 = @Original_人数 OR @Original_人数 IS NULL AND 人数 IS NULL) AND (年级 = @Original_年级 OR @Original_年级 IS NULL AND 年级 IS NULL) AND (班主任 = @Original_班主任 OR @Original_班主任 IS NULL AND 班主任 IS NULL) AND (班级名称 = @Original_班级名称 OR @Original_班级名称 IS NULL AND 班级名称 IS NULL) AND (班级简称 = @Original_班级简称 OR @Original_班级简称 IS NULL AND 班级简称 IS NULL); SELECT 班级编号, 年级, 班级名称, 班级简称, 人数, 班主任 FROM 班级信息 WHERE (班级编号 = @班级编号)&quot;; this.sqlUpdateCommand1.Connection = this.sqlConnection1; this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班级编号&quot;, System.Data.SqlDbType.VarChar, 14, &quot;班级编号&quot;)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@年级&quot;, System.Data.SqlDbType.VarChar, 4, &quot;年级&quot;)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班级名称&quot;, System.Data.SqlDbType.VarChar, 30, &quot;班级名称&quot;)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班级简称&quot;, System.Data.SqlDbType.VarChar, 16, &quot;班级简称&quot;)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@人数&quot;, System.Data.SqlDbType.Decimal, 5, System.Data.ParameterDirection.Input, false, ((System.Byte)(3)), ((System.Byte)(0)), &quot;人数&quot;, System.Data.DataRowVersion.Current, null)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@班主任&quot;, System.Data.SqlDbType.VarChar, 8, &quot;班主任&quot;)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班级编号&quot;, System.Data.SqlDbType.VarChar, 14, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班级编号&quot;, System.Data.DataRowVersion.Original, null)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_人数&quot;, System.Data.SqlDbType.Decimal, 5, System.Data.ParameterDirection.Input, false, ((System.Byte)(3)), ((System.Byte)(0)), &quot;人数&quot;, System.Data.DataRowVersion.Original, null)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_年级&quot;, System.Data.SqlDbType.VarChar, 4, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;年级&quot;, System.Data.DataRowVersion.Original, null)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班主任&quot;, System.Data.SqlDbType.VarChar, 8, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班主任&quot;, System.Data.DataRowVersion.Original, null)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班级名称&quot;, System.Data.SqlDbType.VarChar, 30, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班级名称&quot;, System.Data.DataRowVersion.Original, null)); this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班级简称&quot;, System.Data.SqlDbType.VarChar, 16, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班级简称&quot;, System.Data.DataRowVersion.Original, null)); // // sqlDeleteCommand1 // this.sqlDeleteCommand1.CommandText = @&quot;DELETE FROM 班级信息 WHERE (班级编号 = @Original_班级编号) AND (人数 = @Original_人数 OR @Original_人数 IS NULL AND 人数 IS NULL) AND (年级 = @Original_年级 OR @Original_年级 IS NULL AND 年级 IS NULL) AND (班主任 = @Original_班主任 OR @Original_班主任 IS NULL AND 班主任 IS NULL) AND (班级名称 = @Original_班级名称 OR @Original_班级名称 IS NULL AND 班级名称 IS NULL) AND (班级简称 = @Original_班级简称 OR @Original_班级简称 IS NULL AND 班级简称 IS NULL)&quot;; this.sqlDeleteCommand1.Connection = this.sqlConnection1; this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班级编号&quot;, System.Data.SqlDbType.VarChar, 14, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班级编号&quot;, System.Data.DataRowVersion.Original, null)); this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_人数&quot;, System.Data.SqlDbType.Decimal, 5, System.Data.ParameterDirection.Input, false, ((System.Byte)(3)), ((System.Byte)(0)), &quot;人数&quot;, System.Data.DataRowVersion.Original, null)); this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_年级&quot;, System.Data.SqlDbType.VarChar, 4, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;年级&quot;, System.Data.DataRowVersion.Original, null)); this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班主任&quot;, System.Data.SqlDbType.VarChar, 8, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班主任&quot;, System.Data.DataRowVersion.Original, null)); this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班级名称&quot;, System.Data.SqlDbType.VarChar, 30, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班级名称&quot;, System.Data.DataRowVersion.Original, null)); this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter(&quot;@Original_班级简称&quot;, System.Data.SqlDbType.VarChar, 16, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), &quot;班级简称&quot;, System.Data.DataRowVersion.Original, null)); // // dataSet11 // this.dataSet11.DataSetName = &quot;DataSet1&quot;; this.dataSet11.Locale = new System.Globalization.CultureInfo(&quot;zh-CN&quot;); // // label4 // this.label4.Location = new System.Drawing.Point(64, 32); this.label4.Name = &quot;label4&quot;; this.label4.Size = new System.Drawing.Size(100, 16); this.label4.TabIndex = 0; this.label4.Text = &quot;班级编号&quot;; // // txt4 // this.txt4.DataBindings.Add(new System.Windows.Forms.Binding(&quot;Text&quot;, this.dataSet11, &quot;班级信息.班级编号&quot;)); this.txt4.Location = new System.Drawing.Point(64, 48); this.txt4.Name = &quot;txt4&quot;; this.txt4.ReadOnly = true; this.txt4.Size = new System.Drawing.Size(136, 21); this.txt4.TabIndex = 1; this.txt4.Text = &quot;&quot;; // // txt5 // this.txt5.DataBindings.Add(new System.Windows.Forms.Binding(&quot;Text&quot;, this.dataSet11, &quot;班级信息.年级&quot;)); this.txt5.Location = new System.Drawing.Point(232, 48); this.txt5.Name = &quot;txt5&quot;; this.txt5.ReadOnly = true; this.txt5.Size = new System.Drawing.Size(136, 21); this.txt5.TabIndex = 1; this.txt5.Text = &quot;&quot;; // // label5 // this.label5.Location = new System.Drawing.Point(232, 32); this.label5.Name = &quot;label5&quot;; this.label5.Size = new System.Drawing.Size(100, 16); this.label5.TabIndex = 0; this.label5.Text = &quot;年级&quot;; // // label6 // this.label6.Location = new System.Drawing.Point(408, 32); this.label6.Name = &quot;label6&quot;; this.label6.Size = new System.Drawing.Size(100, 16); this.label6.TabIndex = 0; this.label6.Text = &quot;班级名称&quot;; // // txt6 // this.txt6.DataBindings.Add(new System.Windows.Forms.Binding(&quot;Text&quot;, this.dataSet11, &quot;班级信息.班级名称&quot;)); this.txt6.Location = new System.Drawing.Point(408, 48); this.txt6.Name = &quot;txt6&quot;; this.txt6.ReadOnly = true; this.txt6.Size = new System.Drawing.Size(136, 21); this.txt6.TabIndex = 1; this.txt6.Text = &quot;&quot;; // // txt9 // this.txt9.DataBindings.Add(new System.Windows.Forms.Binding(&quot;Text&quot;, this.dataSet11, &quot;班级信息.班主任&quot;)); this.txt9.Location = new System.Drawing.Point(408, 96); this.txt9.Name = &quot;txt9&quot;; this.txt9.ReadOnly = true; this.txt9.Size = new System.Drawing.Size(136, 21); this.txt9.TabIndex = 1; this.txt9.Text = &quot;&quot;; // // label7 // this.label7.Location = new System.Drawing.Point(408, 80); this.label7.Name = &quot;label7&quot;; this.label7.Size = new System.Drawing.Size(100, 16); this.label7.TabIndex = 0; this.label7.Text = &quot;班主任&quot;; // // label8 // this.label8.Location = new System.Drawing.Point(232, 80); this.label8.Name = &quot;label8&quot;; this.label8.Size = new System.Drawing.Size(100, 16); this.label8.TabIndex = 0; this.label8.Text = &quot;人数&quot;; // // txt8 // this.txt8.DataBindings.Add(new System.Windows.Forms.Binding(&quot;Text&quot;, this.dataSet11, &quot;班级信息.班级简称&quot;)); this.txt8.Location = new System.Drawing.Point(232, 96); this.txt8.Name = &quot;txt8&quot;; this.txt8.ReadOnly = true; this.txt8.Size = new System.Drawing.Size(136, 21); this.txt8.TabIndex = 1; this.txt8.Text = &quot;&quot;; // // txt7 // this.txt7.DataBindings.Add(new System.Windows.Forms.Binding(&quot;Text&quot;, this.dataSet11, &quot;班级信息.班级简称&quot;)); this.txt7.Location = new System.Drawing.Point(64, 96); this.txt7.Name = &quot;txt7&quot;; this.txt7.ReadOnly = true; this.txt7.Size = new System.Drawing.Size(136, 21); this.txt7.TabIndex = 1; this.txt7.Text = &quot;&quot;; // // label9 // this.label9.Location = new System.Drawing.Point(64, 80); this.label9.Name = &quot;label9&quot;; this.label9.Size = new System.Drawing.Size(100, 16); this.label9.TabIndex = 0; this.label9.Text = &quot;班级简称&quot;; // // ClassInfo // this.AutoScaleBaseSize = new System.Drawing.Size(6, 14); this.ClientSize = new System.Drawing.Size(728, 502); this.Name = &quot;ClassInfo&quot;; this.Text = &quot;【班级信息维护】&quot;; this.Load += new System.EventHandler(this.ClassInfo_Load); ((System.ComponentModel.ISupportInitialize)(this.dataGrid1)).EndInit(); this.groupBox2.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.dataSet11)).EndInit(); } #endregion //--------创建窗体时,读入数据------- private void ClassInfo_Load(object sender, System.EventArgs e) { da1.SelectCommand.Parameters[0].Value=&quot;%&quot;; da1.SelectCommand.Parameters[1].Size=8;//4位年份输入 da1.SelectCommand.Parameters[1].Value=&quot;%&quot;; da1.SelectCommand.Parameters[2].Value=&quot;%&quot;; da1.Fill(dataSet11); //设置数据导航控件 this.cmOrders=(CurrencyManager) BindingContext[dataSet11,&quot;班级信息&quot;]; //将基类中的数据集与派生类中的数据集连接 base.dataSet11=this.dataSet11; } //-----------根据输入,检索信息---------- private void btnSearch_Click(object sender, System.EventArgs e) { da1.SelectCommand.Parameters[0].Value=&quot;%&quot;; da1.SelectCommand.Parameters[1].Value=&quot;%&quot;; da1.SelectCommand.Parameters[2].Value=&quot;%&quot;; if(txt1.Text.Trim()!=&quot;&quot;) { da1.SelectCommand.Parameters[0].Value=&quot;%&quot;+txt1.Text.Trim()+&quot;%&quot;; } if(txt2.Text.Trim()!=&quot;&quot;) { da1.SelectCommand.Parameters[1].Value=&quot;%&quot;+txt2.Text.Trim()+&quot;%&quot;; } if(txt3.Text.Trim()!=&quot;&quot;) { da1.SelectCommand.Parameters[2].Value=&quot;%&quot;+txt3.Text.Trim()+&quot;%&quot;; } dataSet11.Clear();//刷新数据集 da1.Fill(dataSet11); } //----------重写设置控件只读属性函数---------- protected override void SetModifyMode(bool blnEdit) { base.SetModifyMode (blnEdit); txt4.ReadOnly=!blnEdit; txt5.ReadOnly=!blnEdit; txt6.ReadOnly=!blnEdit; txt7.ReadOnly=!blnEdit; txt8.ReadOnly=!blnEdit; txt9.ReadOnly=!blnEdit; } //-------重写新增记录时设置默认值函数-------- protected override void SetDefaultValue() { base.SetDefaultValue (); } //-------重写检查非空字段函数-------- protected override bool CheckNotNull() { if(txt4.Text.Trim()==&quot;&quot;)// 班级编号不能为空 { MessageBox.Show(&quot;班级编号不能为空&quot;,&quot;提示&quot;,MessageBoxButtons.OK,MessageBoxIcon.Stop); return(false); } return base.CheckNotNull (); } } }

立即下载
C#学生成绩管理系统(源代码)

C#学生成绩管理系统(源代码) 。 希望所需者满意

立即下载
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

软件工程---研究生学分管理系统

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
VIP和C币套餐优惠
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
您还未下载过该资源
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: