实验八:数据库应用系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验八开发数据库应用系统
1.实验目的
●利用SQL Serve作为后台数据库,使用C#作为前台开发语言,通过数
据库访问技术,构建一个应用系统,实现对数据库的连接以及数据查询、修改和更
新等操作。
2.实验任务与要求
A 学生成绩管理系统
(一)系统功能分析
学生成绩管理系统的总体任务是实现学生课程信息处理的系统化、规范化和自动化。该系统要实现的主要功能有:
(1)用户登录管理
完成用户信息的确认,确保只有合法的用户才能使用本系统。
(2)基本信息管理
完成学生信息、课程信息的管理。
(3)成绩信息管理
包括学生选课信息管理以及选课信息的查询统计。其中,选课信息的查询统计包括:按学号查询、按课程查询等。
(二)系统功能模块设计
按(一)给出的各项功能,系统的功能模块划分如下:
(1)用户登录模块(UserLogin.cs)
(2)基本信息管理模块
a. 学生信息管理模块(frmStudent.cs)
b. 课程信息管理模块
(3)选课信息管理模块
a. 学生选课信息管理模块
b. 选课信息统计模块
◆按学号查询模块(frmQuerySno.cs)
◆按课程查询模块
(三)数据库设计
数据库结构的设计直接影响到应用系统的效率以及实现的效果。合理的数据库结构可以提高数据存储的效率,确保数据的完整性和一致性。
本系统直接采用实验一的学生-课程数据库。(请自行检查student、sc和course表的主码和外码是否已设置好)
在学生-课程数据库中增加一个用户表。
create table users
( UserID nvarchar(8) not null primary key,
UserName nvarchar(20),
Password nvarchar(8)
)
(四)设置数据库结构
(1)设置SQL Server登录帐号
按实验七的方法,在服务器的“安全性”中新建SQL Server验证的帐号applogin,默认数据库为学生-课程数据库。
(2)在学生-课程数据库的“安全性”中设置用户applogin的数据库成员角色身份为db_owner。
(3)创建视图(1个)
--显示学生成绩信息的视图
create view view_stu_grade
as
select student.sno as studentsno, sname, sex, dept,
o,cname,grade,credit
from student,sc,course
where student.sno=sc.sno and o=o
(4)创建存储过程(3个)
--向学生表插入数据
create proc InsertStudent
@Sno char(8), @Sname char(8), @Age int, @Sex char(2), @Dept varchar(50) as
delete from student where Sno=@Sno
insert into student
values(@Sno , @Sname , @Age, @Sex, @Dept)
--更新学生表的数据
create proc UpdateStudent
@Sno char(8), @Sname char(8), @Age int, @Sex char(2), @Dept varchar(50) as
Update student
set sno=@Sno , sname=@Sname , age=@Age, sex=@Sex, dept=@Dept
where Sno=@Sno
--删除Student表的数据
create proc DeleteStudent
@Sno char(8)
as
delete from student
where sno=@Sno
(五)系统实现过程
以下内容在Visual Studio 2010平台中完成。
(1)创建项目,命名为StuGrade。
(2) 创建系统的主窗口
更改窗体frmMain的标题:在窗体设计视图的下方空白处点击右键,
选择“属性”,在属性列表中修改原标题为“学生成绩管理系统”
(2)创建公共类
为项目StuGrade添加一个公共类DataBase,保存为文件DataBase.cs。该类的功能是实现对学生-成绩数据库的存取。
DataBase.cs的代码如下。(绿色字体为注释,红色字体为需要理解含义的代码)
//引入需要使用的系统包
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
namespace StuGrade
{
class DataBase
{
SqlConnection SqlConn = new SqlConnection(); //定义一个数据库连接对象
//SQL Server验证登录。如果失败,请检查登录名app的属性,是否具有dbo 权限
string sConn = "Server=ASUS-PC;Initial Catalog=sales; User ID=applogin; Password=app";