实习报告实习名称计算机生产实习专业班级计算机0741姓名肖小飞学号0704431126成绩评定考核内容实习表现实习报告实习成果或其它综合评定成绩成绩电气与信息学院和谐勤奋求是创新一、实习目的生产实习是计算机专业教学计划中十分重要的实践性教学环节。是对学生进行专业基本训练,培养实践动手能力和向实践学习,理论联系实际的重要课程。认真抓好生产实习的教学工作,提高生产实习教学质量,是提高学生业务素质和政治素质很关键的一环。生产实习的目的是,训练学生从事专业技术工作及管理工作所必须的各种基本技能和实践动手能力;让学生了解本专业业务范围内的现代工业生产组织形式、管理方式、工艺过程及工艺技术方法;培养学生理论联系实际、从实际出发分析问题、研究问题和解决问题的能力,将学生所学知识系统化;培养学生热爱劳动、不怕苦、不怕累的工作作风。二、实习内容计算机专业的生产实习主要以参观实习为主,实际操作为辅。为了使学生在生产实习中有的放矢,制定本次计算机生产实习计划,尽量涵盖以下实习内容。1、参观计算机机房的设置和管理方法。2、调查了解计算机的种类、型号、功能以及计算机的发展过程和今后的发展方向。3、全面了解计算机的有关配置(比如:显示器、打印机、鼠标、绘图仪、扫描器等等)及各种配置的型号、功能和用途。4、了解计算机局部网络有关情况。5、调查了解计算机用于管理的范围和前景。6、到工厂参观了解用计算机进行自动控制过程和方法。7、到学校调查计算机辅导教学的应用情况、发展过程、前景。8、到网络公司调查计算机网络的发展现状,熟悉策划网站的流程,了解比较流行的技术手段。9、到软件开发企业,了解现行软件开发设计的模式与方法,软件项目的开发设计流程及开发团队的组织与管理。10、结合毕业设计题目进行前期的软硬件开发与设计工作。三、实习具体内容基于SQL的学生证管理系统数据库的设计与实现1.实现下列功能:1.录入某位学生的学生证信息2.给定学号,查询某位学生的学生证信息;3.给定班号,显示该班所有学生的学生证信息;4.给定学号,修改该学生的学生证信息;5.给定学号,删除该学生的学生证信息;2.系统需求分析1.数据流图:录入、修改、查询、删除学生证身份证明学生注册2.数据字典:(1)对学生信息的管理(2)对系别信息的管理编号1名称学生信息管理简述维护学生信息的完整性输入学生姓名、学号、班级号、出生年月、性别、民族、籍贯处理1.新增学生信息的录入2.修改学生信息3.删除学生信息记录4.查询个人学生信息及班级学生信息输出学生信息表编号2名称系别信息管理简述维护系别信息的完整性输入系别名,班级号等处理1.新增系别信息的录入2.修改系别信息3.删除系别信息记录4.查询系别信息输出系别信息表(3)对学生证注册信息的管理3.概念结构设计1.局部E-R图:学生信息表:学生姓名学号班级号性别出生年月籍贯民族系别信息表:系别系别名班级号注册信息表:注册信息学号注册日期截止日期编号3名称学生证注册信息管理简述维护学生证注册信息的完整性输入学号,注册日期,截止日期处理1.新增注册信息的录入2.修改注册信息3.删除注册信息记录4.查询注册信息输出注册信息表2.全局E-R图:系别系别名学生证1班级号1注册日期拥有注册截止日期n1学生姓名学号性别出生年月籍贯民族4.逻辑结构设计实体关系模式:学生(学号,姓名,性别,出生年月,籍贯,民族)系别(系别名,班级号)联系关系模式:拥有(系别名,学号)注册(学号,注册日期,截止日期)5.实现过程(一)建表在企业管理器中,新建数据库,并设置名为student。在该数据库中创建三个表,即学生信息表、系别信息表和注册信息表,分别命名为S,D,C。首先设计学生信息表S,包括以下属性,及各属性的数据类型和长度:含义标识数据类型长度约束姓名stu_namevarchar30Notnull学号stu_nochar10Notnull,primarykey班级号class_nochar6Notnull性别stu_sexchar2出生年月stu_birthdaydatetime8民族stu_nativechar10Default‘汉’籍贯stu_birthdayvarchar30系别信息表D:含义标识数据类型长度约束系别名deptvarchar30Notnull班级号class_nochar6注册信息表C:含义标识数据类型长度约束学号stu_nochar10Notnull,primarykey注册日期login_datedatetime8Notnull截止日期validity_datedatetime8Notnull在设计表后即可向表中添加数据,在添加时要注意各项的约束条件及数据长度限制。(二)设置安全性及用户权限1.在企业管理器中,安全性一项中,新建登录。(1)设置登录名为ll,并设置SQLserver身份验证密码,及默认登录的数据库为student。(2)设置该登录用户的服务器角色为:SystemAdministrators。(3)设置该登录用户均可访问所有数据库。2.编辑SQLserver注册属性。(1)选择使用SQLServer身份验证。(2)设置登录名ll及密码。(3)选择总是提示输入登录名和密码。3.在student数据库中,为用户设置权限。(1)设置用户ll的数据库角色为:public和db_owner。(2)设置ll的用户权限,即对S,D,C三个表均能够Select,Update,Delete,Insert和DRI。(三)创建学生证视图创建学生证信息的视图,从三个表中选择学生证所需信息,以便对视图以外的数据进行保密,简化了查询操作,并保证了数据的逻辑独立性。以下创建视图Stu_card,连接D表,C表和S表,选择所需数据项组成视图。CreateviewStu_card(Dept,SName,SNo,ClassNo,Sex,Birthday,Native,Birthplace,LoginDate,ValidityDate)ASSELECTdept,S.*,login_date,validity_dateFROMD,C,SWHERED.class_no=S.class_noandC.stu_no=S.stu_no(四)实现对学生证的各操作功能1.录入学生证信息(1)对某学生的学生证信息录入之前,需先判断该学生的学生证信息是否存在,如已经存在就不能再录入了;如果不存在,还需判断该学生的学生信息是否存在,因为如果该学生已存在学生信息,但没有注册学生证,则该学生也不存在学生证信息。在判断之后再根据不同情况进行学生证信息的录入。创建存储过程InsertIf,判断是否录入学生证信息:createprocedureInsertIf--判断是否录入(@snovarchar(10))--设置参数,通过学号查询该学生的学生证信息使否存在asbegindeclare@cantvarchar(50)declare@selvarchar(50)declare@aavarchar(70)declare@bbvarchar(70)set@cant='信息已存在,不能录入'set@sel='无此学生证信息,请录入'set@aa='有此学生信息,但未注册,请注册(执行InsertC)!'set@bb='无此学生信息,请录入学生信息并为其注册(执行InsertS和InsertC)!'ifexists(select*fromStu_cardwhereSNo=@sno)--如果存在该学生print@cant--的学生证信息就打印出来elsebeginprint@selifexists(select*fromSwhereStu_no=@sno)--如果不存在print@aa--该学生证信息,但存在学生信息,说明为注册elseprint@bb--不存在学生信息,可以录入该学生信息并注册endend(2)判断后,如不存在学生证信息但存在学生信息,则需注册。创建存储过程InsertC,对学生进行注册createprocedureInsertC--注册,向表C中添加学生证注册信息(@snochar(10),@logindatedatetime,@validatedatetime)asinsertintoCvalues(@sno,@logindate,@validate)(3)判断后,如不存在学生信息,则需录入该学生信息,并进行学生证注册创建存储过程InsertS,录入学生信息:createprocedureInsertS//向S表中添加学生信息(@snamevarchar(30),@snochar(10),@classnochar(6),@sexchar(2),@birthdaydatetime,@nativechar(2),@birthplacevarchar(30))asinsertintoSvalues(@sname,@sno,@classno,@sex,@birthday,@native,@birthplace)在录入学生证信息时,先添加学生信息,再执行存储过程InsertC,注册学生证,才完整的录入一条学生证信息。2.查询学生证信息(1)给定学号,查询某位学生的学生证信息由于学生证信息是在视图中体现的,因此通过查询视图,可以查看学生的学生证信息.创建存储过程QureyInfor,传递参数sno,通过给定学号,判断该学生的学生证信息是否存在,如不存在,则告知不存在该学生证信息;如存在,则显示出该学生的学生证信息.createprocedureQureyInfor(@snochar(10))asbegindeclare@cantvarchar(50)set@cant='信息不存在'ifexists(select*fromStu_cardwhereSNo=@sno)select*fromStu_cardwhereSNo=@snoelseprint@cantend(2)给定班号,查询该班所有学生的学生证信息该查询与前一查询方法是相同的,通过查询视图,查看信息。创建存储过程DisplayInfor,传递参数classno,通过给定班级号,判断该班学生的学生证信息是否存在,如不存在,则告知不存在该班学生证信息;如存在,则显示出该班全部学生的学生证信息。createprocedureDisplayInfor(@classnochar(6))asbegindeclare@cantvarchar(50)set@cant='无相关信息'ifexists(select*fromStu_cardwhereClassNo=@classno)select*fromStu_cardwhereClassNo=@classnoelseprint@cantend3.修改学生证信息学生证信息的修改,虽然是对视图进行修改,但实质是对各表的修改。对于学生证信息的修改,是先通过给定学生学号,先判断该学生的学生证信息是否存在,如存在,再通过添加表信息来添加学生证信息。(1)首先创建存储过程ModIf,用来判断需修改的学生证信息是否存在,如不存在,则告知不存在该学生证信息;如存在,则将该学生证原本信息显示出来,表明可以进行修改。createprocedureModIf(@snochar(10))asbegindeclare@cantvarchar(50)set@cant='无此学生证信息,不能修改'ifexists(select*fromStu_cardwhereSNo=@sno)beginselect*fromStu_cardwhereSNo=@snoendelseprint@cantend(2)再创建存储过程ModS,ModC及ModD,通过更新操作update对表进行修改,以修改学生证信息。createprocedureModS//更新S表中学生信息(@snamevarchar(30),@snochar(10),@classnochar(6),@sexchar(2),@birthdaydatetime,@nativechar(2),