专家信息管理系统设计.docx
专家信息管理系统开发需求说明书撰写人(签名):张鸿完 成 日期:2011-12-19学号:2评阅负责人(签名):评阅日期:评阅成绩:成都理工大学信息科学及技术学院1 设计总体要求11.1 数据库环境11.2 系统开发环境11.3 系统部署环境要求11.4 外部接口 12 系统功能要求22. 1网络体系结构22.2系统功能结构图22.2.1功能设计要求33数据库设计要求33.1.1数据名称33. 1.2数据库设计内容43. L 2. 1专家基本信息44. L2.2专家专业水平(经历) 125. L 2. 3专家科研项目成果获奖136. 1.2.4专利获取情况157. 1.2.5基金资助情况168. 1. 2, 6论文发表及专著出版情况 179. 1.2.7留学经历1910. 1.2.8系统用户信息214 系统各模块设计要求234.1 登陆模块设计234.2 管理中心子系统模块设计234. 2. 1 用户管理234. 2. 2 管理员用户密码修改234. 2. 3 专家信息维护234.1.1.1 查询234.1.1.2 修改及删除264. 3专家个人使用子系统 2611. 3. 1用户注册信息修改2612. .2 专家信息维护261设计总体要求系统必须完成专家信息数据采集、专家信息维护和查询分析、打印 等功能。1.1 数据库环境Microsoft SQL Server 20051.2 系统开发环境开发环境:vb6. 0开发语言:vb6. 0开发工具:vb6. 01. 3系统渐境要求操作系统:win7服务环境:自选客户机环境要求:自选操作系统:win7浏览器:自选1.4外部接口数据库的接口: ADO数据源配置方式:ODBC2系统功能要求2.1网络体系结构图2-1专家信息管理系统网络体系结构2. 2系统功能结构图专家信息管理系统系统登陆验证管理中心子系统专家个人系统图2-2专家管理信息软件结构图1.1.1功能设计要求用户根据用户名和密码登陆系统,系统根据用户所设置的权限进入 不同子系统。本设计设置两个权限:管理员(进入中心管理子系统)、 专家个人(进入专家个人子系统)中心管理子系统功能设计要求:能够实现系统用户注册信息的管 理、能够实现专家信息的录入、查询、修改、删除和统计、打印功能。专家个人子系统功能设计要求:能够实现个人注册信息的管理(密 码修改)、能够实现个人信息维护(录入、修改、打印)3数据库设计要求3. 1.1数据名称以“DB+个人学号”为数据名称,如“DB2”。3.1.2数据库设计内容3. 1.2.1专家基本信息专家号、姓名、性别、出生日期(年月日)、身份证号、所在单位 代码、专业学科、最后学历、最高学位、通讯地址、邮政编码、家庭 电话、办公电话、手机号、其他联系电话、个人说明、职务、职称、 民族、政治面貌表格设计结果:表名:专家基本信息字段类型设计专家号Varchar(10)主键姓名Varchar(20)非空性别Varchar (2)男、女检查约束,非空出生日期Datetime非空身份证号Varchar(18)非空,唯一,位数检测(15或18位),及性别联动触发检测,及出生日期联动触发检测所在单位代码Varchar (8)专业学科Varchar(20)最后学历Varchar(10)最高学位Varchar(10)通讯地址Varchar(50)邮政编码Varchar(10)家庭电话Varchar(10)办公电话Varchar(16)手机号Varchar(11)其他联系电话Varchar(16)个人说明Varchar(800)职务Varchar(20)职称Varchar(20)民族Varchar(10)政治面貌Varchar(16)专家基本信息表创建SQL:Create table专家基本信息(专家号Varchar(IO)Primary key,姓名Varchar(2Not null0)性别Varchar(2CheCk(性别 in (,男,J)女),出生日Datetime期身份证Varchar(1Not null CheCk(Ien(身份证号8)号)二15 Or Ien(身份证号)=18),所在单位码Varchar (8)专业学Varchar(2科 O)最后学 Varchard ,历0)最高学Varchar(l ,位。)通讯地Varchar (5 ,址0)邮政编Varchar(l,码0)家庭电Varchar(l,话0)办公电Varchar (1,话6)手机号Varchar (1,1)其他联Varchar (1,系话6)个人说Varchar (8,明00职务Varchar (2 ,0)职称VarChar (2 ,O)民族Varchar (1 ,0)政治面Varchar (1 ,貌6)Constraint u_身份证号unique (身份证号)触发器设计:(1)建立身份证号及性别联动检测触发器,及出生日期检测触发 器:Create trigger身份证号性别on专家基本信息for insertASDeclare 性别 char (2)Declare 出生日期datetimeDeclare 身份证号Char(18)Select 性别=性别,出生日期=出生日期,身份证号=身份证号 from insertedIf (性别二'男')set 性别=1 else set 性别=0If (Ien (回身份证号)二15)BeginIf(CaSt(Right (身份证号,1) as int)%2cast(性别 as int) 一年龄及身份号检测 beginPrint ?年龄及身份证号不符Rollback transactionEndIf(CaSt(SUbString(身份证号,7, 6) as datetime) 出生日期)一出生日期及身份证号检测beginPrint '出生日期及身份证号不符Rollback transactionEndEndIf(Ien(回身份证号) = L8)BeginIf (Cast (substring (身份证号,17, 1) as int) %2(cast (性别 asint)一年龄及身份号检测beginPrint '年龄及身份证号不符Rollback transactionEndIf(CaSt(SUbString(身份证号,7, 8) as datetime) 出生日期)一出生日期及身份证号检测beginPrint 5出生日期及身份证号不符'Rollback transactionEndEnd(2)建立删除记录触发器Create trigger delete.专家基本信息 on 专家基本信息 for deleteASDeclare 专家号 int从表中有对应专家号记录必 须先删除Select 专家号=COUnt(专家号)from 其他所有从表where deleted.专家号=从表的专家号字段专家号If (专家号()BeginDelete from 从表where eleted.专家号二从表的专家号 字段专家号end以上代码段重复编写的次数对应着从表的个数,要 保证主表删除专家,所有从表中对应该专家的信息要全部删除(3).存储过程设计:(1)写入专家基本信息存储过程Create procedure insert.专家基本信息专家号姓名性别出生日期身份证号所在单位代码。专业学科最后学历最高学位通讯地址。邮政编码。家庭电话。办公电话手机号其他联系电话。个人说明。职务职称。民族政治面貌Varchar (10),Varchar (20),Varchar (2),Datetime5Varchar (18),Varchar (8),Varchar (20),Varchar (10),Varchar (10),Varchar(50),Varchar (10),Varchar (10),Varchar (16),Varchar (11),Varchar (16),Varchar(SOO)Varchar (20),Varchar (20),Varchar(IO),Varchar (16),Int outputASBegin transactionInsert into专家基本信息(专家号,姓名,性别,出生日期,身份 证号码,所在单位代码,专业学科,最后学历,最高学位,通讯地址,邮 政编码,家庭电话,办公电话,手机号,其他联系电话,个人说明,职务, 职称,民族,政治面貌)VaIUeS(专家号姓名,性别,出生日 期,身份证号码,所在单位代码,专业学科,最后学历,最高学 位,。通讯地址,。邮政编码,。家庭电话,回办公电话,。手机号,。其他联 系电话,。个人说明,。职务职称,民族。政治面貌)Set returnvalue=errorIf(returnvalue=O) commit transaction elserollback transaction(2)3. 1. 2. 2专家专业水平(经历)开始年月、结束年月、学习/工作单位、学历、学位、职务、职称、 备注表格设计结果:表名:专家专业水平字段类型设计开始年月Datetime结束年月Datetime学习或工作单位Varchar(20)学历Varchar(l0)学位Varchar(10)职务Varchar(10)职称Varchar(10)备注Varchar(50)专家专业水平表创建SQL:Create table专家专业水平(开始年 Datetime, 月结束年 Datetime5 月学习或 Varchar (20),工作单位学历VarChar(Io)学位Varchar(IO),职务Varchar(IO)