一、 课程设计目的
在数据库原理课程基础上,培养学生综合运用数据库知识的能力。学会数据库的设
计、规划以及应用程序的开发和调试,使学生掌握客户机/服务器体系结构,学会大型数据库的工作模式。大型数据库管理系统存放于服务器,数据库放在服务器上,学生在客户机上开发应用程序访问服务器上的数据库,并完成应用系统所要求的各项功能,应用程序的开发需要采用当前流行的新软件。
二、课程设计内容
1.
数据库的设计
根据学生信息管理系统,经过调查研究,构建合理的数据库。首先构建基本表以及表和表之间的联系,在此基础上构建视图和索引表。 2. 3. 4. 5.
服务器的组织
根据建立的基本表、视图和索引表搭建服务器。 前端开发工具:java学习并完成编写程序。 服务器端:SQL Server2012 开发应用程序
利用所学的新软件开发工具进行应用程序的开发。 连接、调试。
三、软硬件环境及系统所采用的体系结构
系统的体系结构为C/S结构,具体开发工具为Ecplise ,前台为Java,后台数据库一般为SQL Server2012。
四、需求分析
通过对学生信息管理的了解,确定本系统具备一下功能。 多用户账号登录
只要通过用户登录验证后,能对学生的记录信息进行修改,增加,删除等操作。
五、系统设计
1.系统结构图
学生信息管理 增加删除修改查找浏览
a.功能模块图
修改 增加选课 删除选课 上一条 查询 下一条 修改 增加 查看成绩 用户 删除 查看学科成绩 查询 2.数据库设计 学生包含的信息: 电话 学号 姓名 学科成绩 学生 性别 住址 宿舍
N 选择 M 学生
用户
密码 用户名 Login表
课程
USE [Student] GO
SET ANSI_NULLS ON GO
SET QUOTED_IDENTIFIER ON GO
CREATE TABLE [dbo].[Login]( (
[userName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO
[userName] [nvarchar](20) NOT NULL, [password] [nvarchar](10) NULL,
CONSTRAINT [PK_Login] PRIMARY KEY CLUSTERED
StudentIfor表
USE [Student] GO
SET ANSI_NULLS ON GO
SET QUOTED_IDENTIFIER ON GO
CREATE TABLE [dbo].[StudentIfor]( (
[code] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO
[code] [nvarchar](10) NOT NULL, [name] [nvarchar](10) NOT NULL, [sex] [nchar](2) NOT NULL, [room] [nvarchar](10) NOT NULL, [address] [nvarchar](50) NULL, [tel] [nvarchar](11) NULL,
CONSTRAINT [PK_StudentInfor] PRIMARY KEY CLUSTERED
Crouse表
CREATE TABLE [dbo].[Course]( (
[courseID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO
[courseID] [nchar](5) NOT NULL, [courseName] [nvarchar](40) NOT NULL,
CONSTRAINT [PK_Course] PRIMARY KEY CLUSTERED
Student_Crouse表
CREATE TABLE [dbo].[Student_Course]( (
[code] ASC, [courseID] ASC
[code] [nvarchar](10) NOT NULL, [courseID] [nchar](5) NOT NULL, [courseGrade] [float] NULL,
CONSTRAINT [PK_Student_Course] PRIMARY KEY CLUSTERED
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO
六、系统的实施
系统的实现方法是用java结合SqlServer2012,用java编写前端的用户界面主要的界面代码如下:
public class windows implements ActionListener{ private JFrame frame; private JLabel[] label; private JTextField[] textField; private JList list;
private JScrollPane jscrollPane; private DefaultListModel listModel;