《基于C#的企业人事管理系统的设计与实现毕业设计论文.doc》由会员分享,可在线阅读,更多相关《基于C#的企业人事管理系统的设计与实现毕业设计论文.doc(57页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、西南科技大学毕业设计(论文)设计题目:基于C#的企业人事管理系统的设计与实现 系 别: 班 级: 姓 名: 指 导 教 师: 20XX年X月X 日摘 要在当今社会,互联网空前的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。考虑到当前大量企业的人事管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。因此根据部分企业提供的需求,设计此企业人事管理系统,以帮助企业达到人事管理办公自动化、节约管理成本、提高企业工作效率的目的。本企业人事管理系统采用C/S结构,主要对企业员工的信息以及跟人事相关的工作流程进行集中的管理,方便企业
2、建立一个完善的、强大的员工信息数据库。它是以VS2008 (Microsoft Visual Studio 2008).和SQL 2008 Express数据库作为开发平台。使用C# 设计操作控件和编写操作程序,完成数据输入、修改、存储、调用查询等功能;并使用SQL 2008数据库形成数据表,进行数据存储。本文详细介绍了企业人事管理系统的功能需求,系统设计和具体实现。并简要介绍了系统开发采用的过程方法。关键词 企业人事管理系统;C/S;员工信息;数据库The Design and Implementation ofEnterprise Personnel Management System B
3、ased on C/SAbstractIn our society, the unprecedented development of Internet has brought us great convenience and efficiency. Informatization and electronization have become the first choice of saving operation cost and improving work efficiency. Many enterprises personnel administration systems lie
4、 in the phase of manual management which inefficient and easy to go wrong by carelessness. Therefore, this MIS(Management Information System)is designed to make the personnel administration more scientific, normative and efficient.The system adopts the structure mode of client/server(C/S), Windows X
5、P as the operation system,SQL 2008 Express as the background database, and Microsoft Visual Studio8 2008 as the developing tool. It can help enterprises to establish a perfect, strong staff information database, which facilitates the centralized management of staff information and workflow.The paper
6、 explains the course design, system design and implementation of MIS, also briefly introduces the process of the system development.Key words: Personnel Management System; C/S; Employee Information;DatabaseII 西南科技大学毕业论文 II第1章 绪论11.1 应用的目的与意义11.2 人事管理系统发展趋势11.2.2 世界趋势11.2.3 技术革新21.2.4 工作目标和价值观的改变2第2章
7、 系统相关技术介绍32.1 C#技术简介32.2 SQL技术32.2.1 数据库的基本概念32.2.2 本系统中数据库的访问3第3章 系统分析53.1需求分析53.2系统概述53.3系统目标53.4可行性分析63.4.1经济可行性分析63.4.2技术可行性分析63.4.3管理可行性分析63.5系统逻辑结构图及业务流程图设计63.5.1系统逻辑结构63.5.2数据字典7第4章 系统数据库设计124.1数据库概念结构设计124.2数据库逻辑结构设计16第5章 系统各模块的实现175.1系统架构设计175.2系统登陆实现185.2.1系统登陆窗体的功能195.3系统主界面设计215.4数据导入于备份
8、的实现215.5公司部门管理的实现225.6 员工信息管理的设计235.6.1员工信息管理的功能235.7 员工其它信息实现255.7.1一对多类设计图255.7.2一对多类设计图255.8薪金发放功能的实现26第6章 系统测试286.1软件测试的目标286.2测试举例286.3测试结论29结 论30致 谢31参考文献32第1章 绪论1.1 应用的目的与意义人的管理是一切管理工作的核心。员工代表一个企业的形象,因而人事管理机制设计的好坏,直接影响一个企业的成败。 员工的档案管理是企业人事管理的基础,在企业员工普遍流失的今天,一个准确而及时的人事管理系统,有利于人事部门对员工流动进行分析、编制,
9、为企业所需人员提供了保障。人力资源部那些重复的,事务性的工作交给HRP(Human Resource Planning,人力资源管理系统)来解决,可以省去用户以往人力资源管理工作的繁琐、枯燥;用领先的人力资源管理理念,把人力资源管理的作业流程控制和战略规划设计巧妙地集合于一体;系统重点涉及到人力资源管理工作中的薪资、培训、奖惩、调动、基本信息、用户管理以及用户切换等方面,并有综合的系统安全设置、报表综合管理模块。可以很好地为用户的人力资源管理部门在对员工的成本管理、知识管理、绩效管理等综合管理给予帮助。以每个月中所发工资为例,其中包括人事信息变动、奖惩对本月的薪资计算都有影响,为了及时的计算发
10、放工资往往要提前一个星期花费大量时间,加班加点才能及时完成,而这样做无论从工作效率还是准确度方面,都不允许,而且还浪费大量的人力财力。如果改用HRP管理做到高效、高精度,还可以减少管理时带来的一些繁琐的工作,节约管理带来的开支。1.2 人事管理系统发展趋势1.2.2 世界趋势人力资源管理系统主导21世纪,无论是发达国家还是发展中国家,对人力资源的战略性意义都有了深刻的认识,并开始付诸行动。世界公认,21世纪将是人力资源的世纪;人力资源问题将主导整个21世纪甚至更为遥远,这种状况的变化起因于竞争压力。目前,世界经济趋向全球化。世界经济的全球化过程和国家的开放过程,要求组织的管理部门降低管理成本以
11、减少竞争压力和增强竞争能力。对于不同的组织,人力资源成本在总成本中的比例是不一样的。1.2.3 技术革新无论是现在还是将来,工业的发展越来越多地取决于科学和技术、知识与技能。高新科技产业更是如此。这不仅要求员工尤其是技术人员掌握新的科学知识和技术能力,而且更重要的在于要求员工深入而快捷地掌握和应用这些知识和技能。这就导致了两个问题。第一,随着这种技术革新的发展和知识更新速度的加快,人们有更多的职业选择机会。第二,伴随着这种发展以及职业选择机会的增多,人力资源管理活动和频繁程度加剧;而且这种活动对科学技术的要求与它的反应程度也更高了,进而提高了人力资源成本。1.2.4 工作目标和价值观的改变随着
12、社会政治和经济的发展,人们的工作目标和价值观也都发生了重要的变化。这就对人事管理部门和管理人员提出了新的要求和新的问题,不得不考虑诸如工作类型设计、岗位分析、充分尊重员工以及为他们提供良好的个人发展和自我价值实现的环境与条件等问题。这样,人力资源管理就派上了用场。第2章 系统相关技术介绍2.1 C#技术简介要了解C#,首先要了解Microsoft.NET FrmeWork。Microsoft.NET FrameWork是微软公司提出的新一代软件开发模型,C#语言是.NET FrameWork中新一代的开发工具。C#语言是一种现代的,面向对象的语言,它简化了C+语言在类、命名控件、方法重载和异常
13、处理等方面的操作,摒弃了C+的复杂性,更易使用。它使用组件编程,在这方面和VB类似。在动态查阅、中间代码技术、参数传递、交叉语言处理、面向对象方面有自己的特点。另外,由于C#中取消了指针的功能,这样可以有效防止病毒程序利用非法指针访问私有成员,也能避免指针的误操作产生的错误。因此,其在安全性方面也有了很大的提高。2.2 SQL技术2.2.1 数据库的基本概念SQL(Structured Query Languge)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL语言包括:数据定义语言、数据操作语言、数据查询语言、数据控制语言四部分。它不要求
14、用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所有具有完全不同底层结构的不同数据库系统,可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使它具有极大的灵活性和强大的功能。2.2.2 本系统中数据库的访问本系统的数据库访问过程实现主要通过六个步骤:(1)建立数据库表,表中存储相应数据。(2)使用SqlConnection或OleDbConnection类建立数据库应用程序和数据库连接对象。(3)从数据库指定表中取出
15、感兴趣的记录。(4)从数据库指定表中取出的感兴趣记录组成一个新表,填充到DataSet类对象中,可填充多个表,并可在DataSet类对象中指定表和表的关系。取出所感兴趣的记录后,断开数据库连接。(5)用支持数据库绑定控件(例如DataGrid控件)显示DataSet类对象中的数据,供用户浏览、查询和修改。(6)及时更新DataSet中内容,并把修改的数据存回源数据库。本系统中数据库连接部分的具体实现代码如下:String MySQLConnectionString = globl:MyPersonnel.Properties.Settings.Defult.MyPersonnelConnect
16、ionString;String s=”DTBSE=Northwind;SERVER=loclhost;UID=s;PWD=;”SqlConnection MyConnection = new SqlConnection(MySQLConnectionString);MyConnection.Open();第3章 系统分析3.1需求分析本系统主要是针对一般企事业单位设计,基于其他企业人工人事管理的不足,本系统完全可以取代人力更好地完成了数据的添加、修改、删除操作。3.2系统概述本系统主要针对中小企业的人事管理人员和企业管理人员设计,以帮助其实现企业人事管理的信息化和自动化。通过本系统,人事管理
17、人员可以实现员工档案管理,员工离职管理,员工薪资的录入、发放和查询管理,员工考勤信息的添加、查询等操作。由于公司管理人员需要对企业人事信息进行系统的了解,本系统采用了模糊查询的功能,企业管理人员可以清晰地了解部门人员分配、员工年龄、文化程度、婚姻状况等信息。通过对员工薪金信息的修改,实现工资的发放。最终实现办公流程的系统化。在统计方面使用了数据库这样增强了员工信息的安全性,可以实现备份还原功能。3.3系统目标根据企业对人事管理的要求,制定企业人事管理系统具体目标如下:(1)员工基本档案、员工简历、员工家庭成员信息等相关界面的添加、修改、删除操作。(2)全方位的模糊查询功能的实现。(3)按相应条
18、件对员工的考勤、工资等进行统计。(4)员工考勤信息的数字化显示,以方便企业对员工进行年终考核。(4)界面清晰美观,逻辑性强,操作简单易懂。(5)系统运行良好,兼容性强。(6)拥有数据备份还原功能,增强了数据的安全性。3.4可行性分析3.4.1经济可行性分析完成本系统需要硬件和软件两方面的支持。硬件方面需要开发服务器一台,个人电脑在此可作为服务器使用;软件方面,由于本系统属于小型管理系统,利用Visual Studio 2008和SQL Server 2008数据库开发工具即可实现,经济成本低,因此在经济上是可行的。3.4.2技术可行性分析本系统采用目前被广泛使用的C#开发技术、SQL Serv
19、er 2008数据库技术和Windows Server 2003操作系统进行开发设计。首先,c#是微软为.NET量身定做的开发语言集合了C/C+和VB的双重优点,具有简易型、灵活性、移植性强等特点,同时使用Visual Studio 2008作为开发平台,对于开发中小系统来说,这种开发环境是完全没有问题的。其次,本系统采用SQL Server 2008数据库。到目前为止,SQL数据库仍然是使用最广泛的一种数据库语言,因此本系统采用SQL Server 2008,在系统安全性、可用性和高稳定性上又有了很大的提升。再次,本系统的操作环境采用Windows下的Server 2003操作系统,Wind
20、ows Server 2003是由微软公司推出的服务器操作系统,可以为本系统的开发提供良好的稳定性。最后,考虑到三者兼容的问题,由于三者都属于微软公司的产品,所以兼容性上不存在问题。硬件方面,采用标准的服务器硬件配置,能满足本系统的要求。综上所述,本系统的技术可行性不存在问题。3.4.3管理可行性分析本系统的主要应用对象为企业的人事管理人员和企业的高层管理者,由于本系统界面简洁、结构清晰、操作简单,所以在对相应使用人员进行培训的情况下是可以顺利使用本系统的。3.5系统逻辑结构图及业务流程图设计3.5.1系统逻辑结构系统逻辑结构图能够清晰地反映出本系统的结构功能和模块分布,是系统对外介绍的良好窗
21、口。用户也可以一目了然地了解系统的整体逻辑结构,加深对系统功能的理解。本系统的逻辑结构图如图3-1所示:系统主界面调岗记录工资管理基本档案培训记录离职管理工资核算工资录入系统管理退出管理员管理部门管理系统退出人事管理奖惩记录工作经历系统帮助信息培训信息工资发放切换用户数据备份与恢复图3-1 企业人事管理系统逻辑结构图3.5.2数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典的作用也正是在软件分析和设计的过程中给人提供了数据的描述信息。本系统的数据字典如下表所示。1部门信息序号数据项数据类型数据长度备注1部门编号字符型2主键2部门名称字符型202员工
22、基本信息序号数据项数据类型数据长度备注1员工号字符型5主键2姓名字符型83性别字符型2男/女4出生日期日期型85联系电话字符型206文化程度字符型207毕业院校字符型308专业字符型209政治面貌字符型2010民族字符型2011爱好特长字符型10012所在部门字符型2外键13职位字符型2014职称字符型2015状态字符型8在职/离职16照片图像型1617备注字符型2003.员工奖惩信息序号数据项数据类型数据长度备注1奖惩流水号数字型8主键2员工号字符型5外键3奖惩类型字符型8奖励/惩罚4奖惩事项字符型2005奖惩情况字符型1006奖惩时间日期型84. 员工工作经历信息序号数据项数据类型数据长度
23、备注1流水号数字型8主键2员工号字符型5外键3起始时间日期型84终止时间日期型85工作单位字符型506任何职位字符型207职称字符型208工作内容字符型1009证明人字符型85. 员工培训进修信息序号数据项数据类型数据长度备注1流水号数字型8主键2员工号字符型5外键3起始时间日期型84终止时间日期型85培训单位字符型506培训内容字符型207获得证书字符型1008备 注字符型2006. 员工调岗信息序号数据项数据类型数据长度备注1流水号数字型8主键2员工号字符型5外键3原部门字符型24原职位字符型205现部门字符型26现职位字符型207调岗时间日期型88调岗原因字符型2007. 员工离退职信息
24、序号数据项数据类型数据长度备注1流水号数字型8主键2员工号字符型5外键3原部门字符型24原职位字符型205离职类型字符型8退休/休假/辞职6离职原因字符型2007离职时间日期型88. 员工薪资信息序号数据项数据类型数据长度备注1员工号字符型5主键/外键2基本工资货币型83社保基金货币型84奖金福利货币型85罚款金额货币型86其它薪金货币型89. 薪资发放信息序号数据项数据类型数据长度备注1发放年月字符型6主键2员工号字符型5主键,外键3基本薪资货币型84本月奖金货币型85加班补助货币型86本月扣款货币型87个人所得税货币型88备注文本型20010. 系统管理员信息序号数据项数据类型数据长度备注
25、1帐号字符型16主键2密码字符型163姓名字符型84性别字符型2第4章 系统数据库设计4.1数据库概念结构设计企业人事管理系统的数据库主要用来记录一个企业所有员工的基本信息及考勤、薪资等信息等数据,数据量由企业的员工数量多少决定。本系统的数据库命名为PersonnelManagement,共用10张数据表来存储相应信息。数据库概念结构设计作为系统开发的重要组成部分,是根据管理系统的相应需求制定的,数据库的优劣直接影响到系统的后期开发。本系统中,为了保证系统的安全性,在登录系统的时候用户需要输入正确的用户名和密码,并且为了安全考虑用户的登陆会记录在数据库。因此,需要一个数据库表用来记录用户的用户
26、名和密码。登录表的实体E-R图如图4-1所示:用户密码用户名登陆次数登陆时间用户性别操作用户用户姓名图4-1 登录表的实体E-R图在企业人事管理系统中,员工信息表属于其中最重要的一个表,在这个表中记录了员工的基本信息,因此表中涉及的员工信息字段太多,本实体E-R图只给出了部分字段。本系统的员工基本信息表E-R图如图4-2所示:自编号员工地址用户照片员工基本信息表部门政治面貌.十多项员工姓名员工年龄图4-2 员工基本信息实体E-R图在企业中,员工受到奖惩是必不可少的。在数据库设计中,加入了一个员工奖惩表,以便对员工的奖惩信息进行记录。奖惩表的实体E-R图如图4-4所示:员工编号自编号奖惩原因说明
27、员工奖惩表奖惩主体部门奖惩日期图4-3 奖惩表实体E-R图在本系统中,涉及到了员工的培训信息,员工的考培训息是通过数据库进行显示的。其实体E-R图如图4-4所示:自编号 员工编号起始时间培训内容终止时间员工培训信息表培训单位备注图4-4 员工培训信息表在本系统中,涉及到了员工的调岗信息,员工的调岗信息是通过数据库进行显示的。其实体E-R图如图4-5所示:自编号 员工编号原部门现部门原职位员工培训信息表调岗时间现职位图4-5 员工考勤信息表人事管理系统离不开对员工的薪资管理,将员工的工资信息动态地录入数据库并且能够随时清晰地查看,是设计此薪资信息表的基本目的。其E-R图设计如图4-6所示:自编号
28、社保基金员工编号基本工资奖金福利薪资管理信息表罚款金额其它薪金图4-6 薪资管理表此外,现金发放表、部门信息、员工离职管理表,实体E-R图设计与其它员工基本信息类似,本论文中不再显示其E-R图设计。4.2数据库逻辑结构设计根据上面设计的E-R图,便可以在数据库中创建相应的数据库表,本系统的各数据表的结构如下:图4-2:系统架构图第5章 系统各模块的实现5.1系统架构设计人事管理系统的架构分为窗体和模块两个部分。在窗体的部分有以下几个窗体,他们的作用分别是:“Frm_Login”是登录窗口,是验证系统用户的登陆权限和数据配置; “Frm_Main”是主窗口,是系统进入的第一个窗口,可以查看登录信
29、息,以及显示功能菜单;“Frm_Department”是部门管理窗体,对公司部门进行管理;“Frm_DB”是数据恢复与还原窗口,可以对数据库进行备份与还原; “Frm_UserInfo”是员工信息主界面,用户可以选择要执行的任务及对员工信息更改;“Frm_OSInfo” 是密码修改,用户可以在此修改自己的密码;“Frm_Reward” 是奖惩信息窗口,用户可以对员工奖惩信息进行操作;“Frm_Worked” 是工作经历窗口,用户可以对员工工作经历进行操作;“Frm_Study” 是培训信息窗口,用户可以对员工培训信息进行操作;“Frm_Leave” 是离退信息窗口,用户可以对员工离退信息进行操
30、作;“Frm_WageInfo” 是薪金信息窗口,用户可以对员工薪金信息进行操作;“Frm_IO” 是调岗信息窗口,用户可以对员工的岗位进行变更操作;“Frm_UserWage” 是薪金发放窗口,用户可以对员工薪金发放进行操作;系统架构说明如图5-1所示:图5-1:系统架构图5.2系统登陆实现系统用户登录模块主要用于完成对登录系统的用户的验证,只有合法的用户和正确的数据库配置才可以进入系统,否则给与相应的错误提示。其中采用了windows和MSSQL两种身份验证的方式,可以使不同工作环境的用户登录系统使用。以及设计了记住用户名和密码的功能,在安全上使用了MD5 加密验证。其设计样式如图5-2所
31、示:图5-2:用户登录配置模块图5.2.1系统登陆窗体的功能系统用户登录模块中进行了非常人性化的设计,窗体加载时会自动检查是否曾经对系统配置了数据库,如果没有登陆按钮将变为不可以点击状态并给出相应的提示。在一切配置完成以后,点击登陆时会对配置错误和非法登陆进行不同的错误提示。如果都正确将成功进入主界面。在登录远程数据库时需要一定的时间,此时不要着急请喝杯咖啡等待。(注:登录默认用户名 admin 密码 123 本地数据库服务器名称 . 默认数据库 PersonnelManagement)其主要代码为: OSInfo user1 = new OSInfo(); user1.OSId = name
32、; user1.OSPsd = password; OSInfoDAL userDAL = new OSInfoDAL(); DataSet ds = userDAL.FindByNameAndPassword(user1); DataSet da = userDAL.FindAll(); try if (da = null) MessageBox.Show(数据库连接失败,请检查重试!); return; if (ds = null) MessageBox.Show(密码或用户名错误,请检查重试!); return; else if (ds.Tables0.Rows.Count 0) SQL
33、Help.userInfo0 = ds.Tables0.Rows0.ItemArray0.ToString(); SQLHelp.userInfo1 = ds.Tables0.Rows0.ItemArray1.ToString(); SQLHelp.userInfo2 = ds.Tables0.Rows0.ItemArray2.ToString(); SQLHelp.userInfo3 = ds.Tables0.Rows0.ItemArray3.ToString(); SQLHelp.userInfo4 = ds.Tables0.Rows0.ItemArray4.ToString(); SQL
34、Help.userInfo5 = ds.Tables0.Rows0.ItemArray5.ToString(); Frm_Main frm = new Frm_Main(); this.Hide(); frm.Show(); SQLHelp.CloseDB(); catch (Exception ex) MessageBox.Show(数据库连接失败 + ex.Message, 错误); 5.3系统主界面设计在系统主界面中采用了下拉菜单,这样解决了系统按钮菜单的单调性,从而让系统整体看起来美观大方简洁。在主界面中实现了切换用户、弹出子菜单、用户帮助和当前用户登录信息显示(用户名 登录次数 上次
35、使用时间)等等。其设计样式如图5-3所示:图5-3:系统主界面设计图5.4数据导入于备份的实现在一个系统的使用过程中难免遇到一些突发事件,而导致系统数据的丢失。所以在设计系统时,必须有对系统数据备份与还原的模块。在系统功能中我加入了数据备份还原。其操作简单,在投入实际使用时只需要管理员操作鼠标即可。其设计样式如图5-4所示:图5-4:数据导入于备份设计图5.5公司部门管理的实现在一个公司中每个员工都有自己的一个归属,那就是部门。在系统设计中对部门信息的操作也是必要的。也由于部门涉及的信息不多,它的设计界面比较简单。在功能上实现了增、删、改、查的基本数据操作。在逻辑上进行完善,操作简单、逻辑清晰
36、并且拥有较强抗击用户非法操作的功能。其设计样式如图5-5所示:图5-5:公司部门管理设计图5.6 员工信息管理的设计在本系统中员工的信息的管理是所有子系统的基本,在功能上不仅实现员工信息的管理,更主要的是利用该模块作为接入员工子系统的跳转。并集齐员工信息增、删、改、查为一体。为达到可操作性和便捷性,在设计时使用了多种windows控件,其中包括右键菜单、下拉菜单、打开图片、图片显示、数据表等等。设计样式如图5-6所示:图5-6:员工信息管理设计图5.6.1员工信息管理的功能(1)模糊查询:在工号查询处的文本框中可以输入员工号进行模糊匹配查询。例如输入“1” 就可以查询出员工号中含有1的所有员工
37、数据。主要实现代码如下: string sql = select userId,userName from userInfo where userId like % + txt_Select.Text + %; DataSet da = new DataSet(); da = SQLHelp.GetDataSet(sql); if (da != null) dgrdv_User.DataSource = da.Tables0; dgrdv_User.Columns0.HeaderText = 员 工 号; dgrdv_User.Columns0.Width = 85; dgrdv_User.C
38、olumns1.HeaderText = 员工姓名; dgrdv_User.Columns1.Width = 91; (2)数据库操作:可对员工进行增删改的基本操作。单击添加后在正确的录入员工信息后单击确定,就可以完成员工信息的录入。在修改员工时首先需要单击员工的数据表,然后点击修改,修改之后单击确定即可完成修改。在删除员工时首先也需要单击员工的数据表,单击删除,确定操作以后即可删除员工数据。(提示:“如员工有其它信息将不能进行删除!如需要删除必须删除员工的其它信息”。)如果单击了修改或者添加后又不想进行操作可以点击取消按钮,这样就恢复成初始界面。(3)刷新:右键菜单单击刷新按钮可以重新从数据
39、库获取一次数据,用此可以防止数据库数据与客户数据不同步的现象(4)向数据库写入照片:你可以选择员工的相片并且录入用户信息以后,修改或添加都可以将用户图片插入到数据库中。这样我们的数据库就可以存放上用户的一切信息,这样就可以仅通过该系统进行维护操作。图片插入代码如下所示: string P_str = openF.FileName;/得到图片的所在路径 FileStream fs = new FileStream(/创建文件流对象 P_str, FileMode.Open, FileAccess.Read); BinaryReader br = new BinaryReader(fs);/创建二进制读取器 byte imgBytesIn = br.ReadBytes(int)fs.Length); SQLHelp.OpenDB();/打开数据库连接 StringBuilder strSql = new StringBuilder();/创建字符串构造器 strSql.Append(/附加字符串 update userInfo Set userPhoto=Photo where userId= + MID); SqlCommand cmd = new SqlCommand