信息科学学院
实习(实验)报告书
学 期:_________________
专 业: 信息管理与信息系统
课程名称: 姓 名:_________________ 班 级:_________________ 指导老师:_________________
南京审计学院信息科学学院
2010年11月
一、 本次课程设计总结(课程设计所完成主要工作、收获体会) 经过几天的设计,学生学籍管理系统基本开发完成,该系统是高校典型的信息管理系统,功能十分強大的管理系统,它集各种功能用于一身,在系统的各个模块中体现了它的功能,针对高校学生学籍工作方面进行设计的,同时该系统也是为了方便于管理员、教师和学生的一些信息操作,为高校节省了管理成本,提高学校的工作效率。该系统的界面简单大方,非常方便用户的操作,同时,也为以后系统的扩展留出了足够的空间。 在本系统的设计过程中,首先通过对高校学籍管理系统功能进行详细的分析,得到系统功能模块图,然后根据系统功能分析,围绕它进行系统的设计,介绍开发环境和开发技术,再可行性分析、功能和性能需求,然后得出系统业务流图、数据流图、E-R图,并进行数据库的设计和模块化的实现。经过这次系统设计过程,加深了对系统的认识.完成本设计后,才知道平日里书本上所学的东西太少,仅是些概念知识,没运用到实践中来,知识是无法得到升华的。 二、 数据库设计 (一) 需求分析 1. 系统目标 学校的学生学籍信息管理是学校管理中的一项重要任务,以往的手工操作已经不能适应现在办公的需要.为了摆脱繁琐的劳动,提高工作效率,利用计算机进行信息处理成为必然。开发功能完善及安全可靠的管理系统可以大大提高学校资源的利用率,及时,准确地获取需要的信息,充分发挥人员的工作潜力。因此,不难想象,正是咨询业的迅速发展使得人们从过去的手工劳动中得以解脱.同时,编写一套完善的学生学籍管理系统的任务就显得尤为重要。本系统是根据某学校的实际情况而设计的一套针对性和功能都比较强的学籍管理信息系统。 2. 功能需求 (1)学生档案的管理,即录入、修改、查询、输出学生档案信息,这些信息包括学生基本情况、学生简历情况、学生奖励情况、学生处分情况、学生家庭信息、学生体检情况。 (2)学生学籍管理,录入、修改、查询、输出学生学籍信息,这些信息包括学生奖贷学金情况、学生注册、学生异动情况、学生军训情况、学生毕业情况。 (3)学生成绩管理,录入修改、查询、输出学生入校成绩,各学期、各门课程的成绩信息,并支持按年级、班级等条件的统计、查询、报表输出。 (4)基础数据管理,包括院系设置,专业设置,班级设置等。 3. 功能模块结构 学生学籍管理系统学生档案管理学生学籍管理学生成绩管理基础数据管理录入修改查询输出录入修改查询输出录入修改查询输出院系设置专业设置班级设置 4. 主要数据流图 新生录取 学生处 学生 建立档案 教务处 教学 查看 考试 成绩单 家长 统计分析成绩 补考 不及格 及格 评定奖学系 不及格 重修 用人不及格 学生处 单位 退学 留级 查看 学籍异动 毕业 毕业生登记 毕业生登记表 存档 图1学籍管理业务流程 数据流程分析 首先,我们根据学籍管理的业务流程图找出与学籍管理系统相关的主要外部实体:学生处、教务处、用人单位和学生。如图2所示: 学生处 新生名单 教务处 成绩单 学籍管理系统 毕业生登记表 用人单位 成绩单 学生 图2学籍管理信息系统数据流程图(顶层) 接着,我们把学籍管理信息系统分为:档案管理、成绩管理、奖惩管理三个主要部分。与其相关的主要外部实体和数据流如图3所示: 新生名单 学生处 毕业生登记表 学生注册 用人单位 档案 管理 学生 学习文档 教务处 成绩单 成绩管理成绩单 成绩单 家长 成绩 学籍表 学习文档 奖惩报告 系 奖惩 管理 奖惩结论 图3学籍管理信息系统数据流程图(第二层) 下面为学籍信息管理系统的第三层流程图。我将成绩管理子系统分为了统计成绩、登记一览表、登记学籍表、统计不及格课程、评定奖学金、填写成绩单和登记重修成绩这几个主要部分。教务处通过成绩管理子系统把各任课老师所提供的各个学生的成绩进行统计和分析,并通过统计分析的结果判定学生是否可以评定奖学金、留级或退学,最后将统计分析结果传输给辅导员,并为学生和家长填制成绩单。通过成绩管理子系统的处理将会生成一份学习文档,为档案管理子系统和奖惩管理子系统的处理提供原始数据。 教务处 期末成绩单 重修成绩 登记重 修成绩 登记 学籍表 统计 成绩 成绩统计 辅导员 登记期 一览表 评定 奖学金 成绩一览表 填写 成绩单 学生 统计不 及格课程 升级、补考 家长 学籍表 判定留 级或退学 学习文档 图4学籍管理信息系统数据流程图 (第三层——成绩管理) 图5和图6分别为奖惩管理系统和档案管理系统的数据流程图。 学习文档 奖励处理 惩罚处理 系 奖惩报告 建立奖 惩档案 修改文档 档案文件 登记 学籍表 学籍表 图5学籍管理信息系统数据流程图 (第三层——奖惩管理) 学习文档 奖励处理 留级处理 退学处理 学生处 新生名单 建立 档案 修改文档 删除文档 档案文件 填制毕 业登记表 用人单位 学籍表 登记 学籍表 图6学籍管理信息系统数据流程图 (第三层——档案管理) 4. 数据字典 1. 数据项定义 数据项是最小的数据组成单位,本学籍管理系统的部分数据项定义如下: (1)、姓名 名称:姓名 别名:N-C 说明:本校学生、教师以及相关人员的名称 数据值类型:离散 类型:文本 长度:8 编号:N- XXXX 相关说明:姓氏+名称 (2)、学号 (3)、成绩 名称:成绩 别名:Ss-No 说明:本校学生期末考试成绩成绩 数据值类型:离散 类型:数字 长度:3 (4)、密码 编号:P- XXXX 编号:S- XXXX 取值含义:优:90~100;良:80~90;中:70~79;及格:60~69;不及格:60以下 总编号:2001 编号:803065 有关编号说明: XXXX X X X XXX 编号 班号 专业代号 系代号 年级 名称:学号 别名:Sn-No 说明:本校学生编号 数据值类型:离散 类型:数字 长度:10 有关数据结构:学生成绩、学生卡 名称:密码 别名:P-No 说明:登录系统的相关密码 数据值类型:离散 类型:数字+字符 长度:6位以上 取值范围:A~Z;0~9 2. 数据结构定义 数据结构主要描述的是数据之间的关系,一个数据结构可以有若干数据项组成,也可以有若干个数据结构组成,还可以有若干个数据项和数据结构组成。本学籍管理系统的部分数据结构定义如下: (1)、学生登记卡 名称:学生登记卡 总编号:XXXX 说明:新生入学时填写的卡片 编号:XXXXXX 结构: 学号 有关的数据流、数据存储: 姓名 新生登记表 [曾用名] 学籍表 入学时间 出生日期 性别 民族 家庭住址 本人简历* 数量: 开始时间 每年大约2500份 终止时间 单位 职务 3. 数据流定义 数据流可以包含多个数据结构,可以来自某个外部实体、数据存储或某个处理。本学籍管理系统的部分数据流定义如下: (1)、期末成绩单 名称:期末成绩单 简要说明:学期结束时,任课教师填写的成绩单。 数据流来源:教师 数据流去向:统计成绩 包含的数据结构: 科目名称 考试 考查 学生成绩 学号 姓名 成绩 任课教师 总编号:XXX 编号:XXXXXX 数量:500份/学期 (2)、新生登记表 名称:新生登记表 简要说明:新生入学时填写的表单。 数据流来源:学生 数据流去向:建立档案 包含的数据结构: 基本情况 姓名 [曾用名] 入学时间 出生日期 性别 民族 家庭住址 本人简历 开始时间 终止时间 单位 职务 总编号:XXX 编号:XXXXXX 数量:2500份/学期 (3)、奖惩报告单 名称:奖惩报告单 简要说明:学期结束时,学校各系 填写的学生学习状况奖励与处罚表单。 数据流来源:系 数据流去向:建立奖惩档案 包含的数据结构: 科目名称 考试 考查 学生成绩 学号 班级 姓名 成绩 奖惩情况 奖励 处罚 总编号:XXX 编号:XXXXXX 数量:10份/学期 4. 处理逻辑定义 处理逻辑的内容包括:编号、名称、处理的文字描述,输入、输出的数据流和处理的频率。本学籍管理系统的部分处理逻辑定义如下: (1)、填写成绩单 总编号:XXX 编号:XXXXX 名称:填写成绩单 说明:通知学生成绩,有重修科目的说明重修报名时间。 输入:由成绩一览表流向填写成绩单 输出:由填写成绩单流向学生(成绩通知单) 处理:查成绩一览表,打印每个学生的成绩通知单,若有不及格科目,或不及格科目达到一定数量,需要留级的,在“成绩通知单”上填写重修科目、时间,若留级的,注明留级。 (2)、填制毕业生登记表 5. 数据存储定义 数据存储组要描写该数据存储的结构,及有关的数据流、查询要求。本学籍管理系统的部分数据存储定义如下: 总编号:XXX 编号:XXXXX 名称:填制毕业生登记表 说明:反映学生在校情况。 输入:由档案文件流向填制毕业登记表 输出:由填制毕业登记表流用人单位(毕业生登记表) 处理:查档案文件,打印每个学生的学籍档案,把学生的在校情况、表现、奖惩等信息如实打印在毕业生登记表上,并修改或删除学生在校档案。 (1)学习成绩一览表 名 称:学习成绩一览表 说明:学期结束,按班汇集学生各科成绩。 结构: 班级 学生成绩* 学号 姓名 成绩* 科目名称 考试 考查 成绩 总编号:XXX 编号:XXXXX 有关的数据流: 登记一览表 to成绩一览表 成绩一览表 to 登记学籍表 成绩一览表 to P统计不及格课程 成绩一览表 to 评定奖学金 成绩一览表 to 填写成绩单 信息量:500份/学期 有无立即查询:有 (2)、档案文件(分为奖惩档案文件和档案文件,此处以奖惩档案文件为例。) 名称:档案文件 说明:反映学生在校期间的奖惩、退留级 情况。 结构: 班级 学号 姓名 未及格科目 科目名称 考试 考查 成绩 学分 科目数量 奖惩处理 奖励 处罚 总编号:XXX 编号:XXXXX 有关的数据流: 建立奖惩档案 to档案文件 修改文档to 档案文件 档案文件 to登记学籍表 (3)、学籍表(学籍表的结构比较复杂,所以我在此仅列出学籍表的大体数据结构。) 名称:学籍表 说明:反映学生在校期间的所有情况。 结构: 基本情况 学生动态(退学、留级、在校……) 奖惩记录 学习成绩 毕业论文成绩 总编号:XXX 编号:XXXXX …… 6. 外部实体定义 外部实体是数据的来源和去向。 外部实体主要说明外部实体产生的数据流和传给该外部实体的数据流,以及该外部实体的数量。本学籍管理系统的部分外部实体定义如下: (1)、学生 名称:学生 说明: 输出数据流: 输入数据流: 填写成绩单 to 学生(成绩通知) 总编号:XXXX 编号:XXXXXX 个数:约12000个 (2)、用人单位 名称:用人单位 总编号:XXXX 说明: 编号:XXXXXX 输出数据流: 个数:难以确定 输入数据流: 填制毕业登记表 to 用人单位(毕业生登记表) (3)、学生处 名称:学生处 说明: 输出数据流: 学生处to建立档案 输入数据流: 总编号:XX 编号:XXXX 个数:1个 (4)、教务处 名称:教务处 说明: 输出数据流: 教务处统to计成绩 输入数据流: 总编号:XX 编号:XXXX 个数:1个 (二) 概念结构设计(主要E-R图) 姓名学号性别出生日期身份证号学生政治面貌入学时间家庭住址籍贯邮政编码民族 学生实体ER图 院系号院系名称院长名院系院系实体ER图 专业名专业号入学时间专业专业实体ER图 在学生信息管理中存在这样的关系:选择(一个学生只能选择一个专业,而一个专业可以供多个学生选择,故是多对一的关系)、学习(一个学生只能在一个院系学习,而一个院系可以供多个学生学习,故是多对一的关系)。 专业1选择n学生n学习1院系 学生关系ER图 对于老师信息管理,我们可以将老师实体抽象出来,老师属于学院可以将学院作为一个实体。 姓名教工号性别教师职称电话所属院系教师实体ER图 在老师信息管理中存在这样的关系:拥有(一个老师只能在一个院系工作,而一个院系可以供多个多个老师工作,故是多对一的关系)。 老师n工作1院系 老师关系ER图 对于教务信息管理,我们可以将课程实体抽象出来。 课程名课程号学分课程 课程实体ER图 在教务信息管理中存在这样的关系:毕业(一个学生拥有一个毕业信息,而一个毕业信息只属于一个学生,故是一对一的关系)、选修(一个学生可以选修多门课程,而一门课程可以被多个学生选修,故是多对多的关系)、开设(一个专业可以开设多门课程,而一门课程可以被多个专业选择,故是多对多的关系)、授课(一门课程可以被多个老师讲授,而一个老师可以讲授多门课程,故是多对多的关系)。 毕业1毕业1学生n选修成绩n专业n开设n课程n授课1老师 教务关系ER图 以上是本系统中的基本的实体和关系,本系统是将其分步找出来加以描述,下面是本系统总体的E-R图: 性别姓名入学时间学号邮政编码出生日期身份证号政治面貌家庭住址民族籍贯身份证号姓名学号毕业证编号所属院系入学时间已修学分性别需修学分专业1毕业1n学生nn学习毕业11成绩院系n开设选院系名称选修择院长名1课程院系号专业号课程号n专业名入学时间课程名学分授课工作nn教师姓名性别所属院系学籍管理系统ER图职称教工号电话 (三) 逻辑结构设计 1.数据库表结构设计 老师基本信息表 序号 1 2 3 4 5 6 字段 tno tname tsex profess dname tel 别名 学号 姓名 性别 职称 所属院系 电话 数据类型 char varchar Char varchar varchar int 数据长度 10 10 2 10 8 码 Y N N N N N 学生基本信息表 序号 1 2 3 4 5 6 7 8 9 10 字段 sno sname ssex birthday symbol Id Intime birthplace homeaddr postcode 别名 学号 姓名 性别 出生日期 政治面貌 身份证号 入学时间 籍贯 家庭住址 邮政编码 数据类型 varchar varchar Char timestamp varchar varchar varchar varchar varchar int 数据长度 10 10 2 20 8 20 20 10 30 码 Y N N N N N N N N N 专业信息表 序号 1 2 3 4 字段 mno sno mname intime 别名 专业号 学号 专业名 入学时间 数据类型 char varchar char datetime 数据长度 10 10 10 码 Y N N N 毕业信息表 序号 1 2 3 4 5 6 7 8 字段 gno sno sname ssex dname intime ycredit xcredit 别名 毕业证编号 学号 姓名 性别 所属院系 入学时间 已修学分 需修学分 数据类型 char varchar varchar char varchar datetime float float 数据长度 10 10 10 2 10 码 Y N N N N N N N 院系信息表 序号 1 2 3 字段 dmpno dname dmphead 别名 院系号 院系名称 院长名 数据类型 varchar varchar varchar 数据长度 10 10 20 码 Y N N 课程信息表 序号 1 2 3 字段 cno cname credit 别名 课程号 课程名 学分 数据类型 varchar varchar smallint 数据长度 5 15 码 Y N N 学生选课信息表 序号 1 2 3 字段 sno cno grade 别名 学号 课程号 成绩 数据类型 varchar varchar float 数据长度 10 5 码 Y Y N 老师授课信息表 序号 1 2 3 字段 cno tno ctime 别名 课程号 教工号 课时 数据类型 varchar char smallint 数据长度 5 10 码 Y Y N 2.数据库完整性约束(实体、参照和用户定义完整性,触发器等) 触发器 触发器是用户定义在关系表上的一类由事件驱动的特殊过程。一旦定义,任何用户对表的增、删、改操作均由服务器自动激活相应的触发器,在DBMS核心层进行集中的完整性控制。由于本系统的触发器比较多,在这里我只写出了其中的一部分触发器,具体如下所示。 (1)数据更新 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER scupdate ON dbo.student //建立学生信息表更新触发器 FOR UPDATE AS UPDATE SC //更新学生选课表SC SET SNO = (SELECT SNO FROM INSERTED) //将SC表中的学号改成学生表改后的 WHERE SNO = (SELECT SNO FROM DELETED); //更改对应的学生学号 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER graduateupdate ON dbo.student //建立学生信息表更新触发器 FOR UPDATE AS UPDATE GRADUATE //更新学生毕业信息表GRADUATE SET SNO = (SELECT SNO FROM INSERTED) //将GRADUATE表中的学号改成学生表修改后的 WHERE SNO = (SELECT SNO FROM DELETED); //更改对应的学生学号 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER majorupdate ON dbo.student //建立学生信息表更新触发器 FOR UPDATE AS UPDATE MAJOR //更新专业信息表MAJOR SET SNO = (SELECT SNO FROM INSERTED) //将MAJOR表中的学号改成学生表修改后的 WHERE SNO = (SELECT SNO FROM DELETED); //更改对应的学生学号 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER student1 ON dbo.major //建立专业信息表更新触发器 FOR UPDATE AS UPDATE STUDENT //更新学生信息信息表STUDENT SET MNO = (SELECT MNO FROM INSERTED) //将STUDENT表中的专业号改成专业表修改后的 WHERE MNO = (SELECT MNO FROM DELETED); //更改对应的专业号 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER student2update ON dbo.department //建立院系信息表更新触发器 FOR UPDATE AS UPDATE STUDENT //更新学生信息信息表STUDENT SET DMPNO = (SELECT DMPNO FROM INSERTED) //将STUDENT表中的院系号改成专业表修改后的 WHERE DMPNO = (SELECT DMPNO FROM DELETED); //更改对应的院系号 --------------------------------------------------------------------------------------------------------------------- (2) 数据删除 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER teach1update ON dbo.teacher //建立教师信息表删除触发器 FOR DELETE AS UPDATE TEACH //删除授课信息表TEACH SET TNO = NULL //删除TEACH表中的教工号删除 WHERE TNO = (SELECT TNO FROM DELETED) //找到对应的教工号 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER sc1update ON dbo.course //建立课程信息表删除触发器 FOR DELETE AS UPDATE SC //删除选课信息表SC SET CNO = NULL //删除SC表中的课程号删除 WHERE CNO = (SELECT CNO FROM DELETED) //找到对应的课程号 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER stu_majorupdate ON dbo.major //建立专业信息表删除触发器 FOR DELETE AS UPDATE STUDENT //删除学生信息表STUDENT SET MNO = NULL //删除STUDENT 表中的专业号删除 WHERE MNO = (SELECT MNO FROM DELETED) //找到对应的专业号 --------------------------------------------------------------------------------------------------------------------- CREATE TRIGGER teacherupdate ON dbo.department //建立院系信息表删除触发器 FOR DELETE AS UPDATE TEACHER //删除教师信息表TEACHER SET DMPNO = NULL //删除TEACHER表中的院系号删除 WHERE DMPNO = (SELECT DMPNO FROM DELETED) //找到对应的院系号 3.数据库安全设计(角色、权限分配) 系统的使用对象是学生管理部门,如教务处工作人员、校院系领导、班主任、教师等。 任课老师:输入并维护所教科目的学生成绩,计算本科的成绩排名、本科成绩在班上的排名。 班主任:输入并维护本班级的基本信息,各科成绩及各科成绩的部分,计算各科成绩排名,总分排名 的情况。 院系领导:对本年级学生基本情况的管理,对各班的成绩汇总,计算系中各科成绩的排名,总成绩排名等需求。 教务处:学校全体成员的信息管理,对考试科目,时间及对所考科目的编号等进行具体的管理,对对任课老师班主任等输入的信息进行库存,对学生的信息进行必要的维护,可打印学生的所有信息。 权限:为用户设置权限功能,可分为普通用户,一般用户,超级用户。普通用户只是查询不能修改,一般用户只能对授权范围内进行相应修改及删除,超级用户能修改删除有所信息。 (四)数据库物理实现(写出数据定义SQL) 1.数据库和表的代码实现(Create table) 2.实现数据库完整性约束 实体完整性是指关系的主关键字不能重复也不能取“空值\\\"。 如如学生信息表中,学号是主关键字,那么,该列不得有空值,否则无法对应某个具体的学生,这样的表格不完整,对应关系不符合实体完整性规则的约束条件。 参照完整性是定义建立关系之间联系的主关键字与外部关键字引用的约束条件。 在学生管理数据库中,如果将选课表作为参照关系,学生表作为被参照关系,以“学号\\\"作为两个关系进行关联的属性,则“学号\\\"是学生关系的主关键字,是选课关系的外部关键字。选课关系通过外部关键字“学号’’参照学生关系。 实体完整性和参照完整性适用于任何关系型数据库系统,它主要是针对关系的主关键字和外部关键字取值必须有效而做出的约束。用户定义完整性则是根据应用环境的要求和实际的需要,对某一具体应用所涉及的数据提出约束性条件。这一约束机制一般不应由应用程序提供,而应有由关系模型提供定义并检验,用户定义完整性主要包括字段有效性约束和记录有效性。 3.视图实现 查看某用户的登录日志 Create view vi_Admin_Log(UserName,IP,LoginTime)as Select a.admin_User,l.log_IP,Log_Time From tb_Admin as a,tb_Log as I where a.admin_ID=l.log_UsID Go Select * from vi_admin_Log where UserName=\"cache\" Go 建立专业课程视图 Create view vi_Prof_Cour(Professional,Course,Credit,Note)as Select p.prof_Name,c.course_Name,c.course_credit,c.course_note From tb_professional as p,tb_Course as c,tb_Prof_Cour as pc Where p.prof_ID=pc.prof_ID and c.course_ID=pc.course_ID Go Select * from vi_Prof_Cour Go 建立学生成绩视图 Create view vi_Info_Resu(Sno,Name,Prof,Class,Cour,RYea,Term,Score)as Select I.info_No,i.info_Name,p.prof_Name,co.course_Name,r.resu_Year,r.resu_Term,r.resu_Scor From tb_Information as i,tb_Result as r,tb_Info_Resu as ir,tb_Professional as p,tb_Calss as c,tb_Course as co Where i.info_No=ir.info_No and r.resu_CoID=ir.resu_CoID and r.resu_ID=ir.resu_ID and co.course_ID=r.resu_CoID and p.prof_ID=i.info_Prof and c.class_ID=i.info_Class Go Select * from vi_Info_resu 4.实现系统功能的存储过程和函数 存储过程 存储过程是PL/SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,使用时只要调用即可。 (1)数据查询 --------------------------------------------------------------------------------------------------------------------- 存储过程名:教师信息查询 入口参数:@tno varchar(10) 出口参数:@tno char(10), //输入教师的教工号 @tname varchar(10), @dname varchar(10), @profess varchar(10), @tel int, @tsex char(2), //定义存放输出教师信息的变量 CREATE PROCEDURE selectteacher //建立查询教师信息存储过程 @tno AS SELECT @tno = tno FROM INSERTED //选择与输入教工号相等的所有记录 SELECT * //选出符合条件的教师所有信息 FROM teacher GO (2)数据插入 --------------------------------------------------------------------------------------------------------------------- 存储过程名:学生信息插入 入口参数:@sno varchar(10), @intime varchar(20), @id varchar(20), @birthplace varchar(10), @sname varchar(10), @ssex char(2), @birthday varchar(20), @symbol varchar(8), @homeaddr varchar(20), @postcode int, //输入需要插入的学生所有信息 出口参数: 无 CREATE PROCEDURE insertstudent//建立插入学生信息的存储过程 @sno varchar(10), @id varchar(20), @birthplace varchar(10), @intime varchar(20), @sname varchar(10), @ssex char(2), @birthday varchar(20), @symbol varchar(8), @homeaddr varchar(20), @postcode int, //定义存放插入学生信息的变量 AS INSERT INTO student(sno,sname,ssex,birthday,symbol,id,intime,birthplace, homeaddr,postcode)//插入学生表对应的列名 VALUES (@sno varchar(10), @sname varchar(10), @ssex char(2), @birthday varchar(20), @symbol varchar(8), @id varchar(20), @intime varchar(20), @birthplace varchar(10), @homeaddr varchar(20), @postcode int)//插入学生表对应列名值 GO (3)数据删除 --------------------------------------------------------------------------------------------------------------------- 存储过程名:学生信息删除 入口参数:@sno varchar(10) //输入要删除学生的学号 出口参数: 无 CREATE PROCEDURE deletestudent //建立删除学生信息的存储过程 @sno, AS SELECT @sno = sno FROM DELETED //选择与输入学号相等的所有记录 DELETE FROM student GO --------------------------------------------------------------------------------------------------------------------- //删除符合条件的记录 (4)数据更新 --------------------------------------------------------------------------------------------------------------------- 存储过程名:学生学号更新 入口参数: @no int, 出口参数: @sno int, //输入要更新的学生学号 //输出更新后的学生学号 CREATE PROCEDURE updatesno //建立更新学生学号的存储过程 AS SELECT @no = sno FROM INSERTED //选择与输入学号相等的所有记录 UPDATE student SET sno=@no GO //更新符合条件的记录 @no int, 评语: 指导 老师 评价 成绩: 签名:
因篇幅问题不能全部显示,请点此查看更多更全内容