首页 > 代码库 > 数据库课程设计

数据库课程设计

 

数据库课程设计是在学生系统的学习了数据库原理课程后,依照关系型数据库的基本原理,综合运用所学的知识,以小组为单位,设计开发一个小型的管理信息系统(MIS)。通过对一个实际问题的分析、设计与实现,将原理与应用相结合,使学生学会怎样把书本上学到的知识用于解决实际问题,培养学生的动手能力;还有一方面,使学生能深入理解和灵活掌握教学内容。

 

整体设计要求:

四到五人为一个小组,小组成员既要有相互合作的精神,又要分工明白。每一个学生都必须充分了解整个设计的全过程。

 

 

通讯录

1、功能需求:

       1)网络版,用户登录,合法使用,非法拒绝。

       2)合法用户(下面简称:用户)能够加入通讯录成员。

       3)用户点击不同的组,显示该用户相相应的成员通讯方式。

       4)用户点击一个成员,将会得到他响应的各种通讯方式。

 

2、数据分析:

1)有管理员,进行数据维护

2)通讯录用户有多个人。每一个用户因与通讯录成员关系不同,所以对同一个成员可能有不同的分组方式。

3)通讯录成员能够分组,每一个组包括多成员,一个成员能够属于多个组。

4)通讯录成员都有通讯方式,当中每一个成员能够有多种通讯方式,一个通信数据可能属于多个成员

 

ER图:

 

关系模式:

           用户表(用户编号,username,password,等级)

           成员表(成员编号,姓名,性别,出生日期)

           分组方式表(分组编号,分组方式)

           分组表(用户编号,成员编号,分组编号

           联系方式表(联系方式编号,联系方式)

           通讯录表(成员编号,联系方式编号,数据)

 

 

          MS SQL Server2000 实现:

  1. /*---------创建数据库-------------*/
  2. create database txl
  3. go
  4. use txl
  5. go
  6. /*-----------用户表---------------*/
  7. create table users
  8. (Uid int identity(1,1) primary key,
  9.  Uname char(16) unique not null,
  10.  Upassword char(16) not null,
  11.  Ulevel int check(Ulevel in(1,2,3)) default 1
  12. )
  13. /*-----------成员表---------------*/
  14. create table membership
  15. (Mid int identity(1,1) primary key,
  16.  Mname char(16) unique not null,
  17.  Msex char(2) check(Msex=‘男‘ or Msex=‘女‘),
  18.  Mbirthday datetime
  19. )
  20. /*-----------分组方式表---------------*/
  21. create table PacketMode
  22. (Pid int identity(1,1) primary key,
  23.  Pname char(16) unique not null
  24. )
  25. go
  26. /*-----------分组表---------------*/
  27. create table Relations
  28. (
  29.  Uid int references users(Uid),
  30.  Mid int references membership(Mid),
  31.  Pid int references PacketMode(Pid),
  32.  primary key (Uid,Mid,Pid)
  33. )
  34. /*-----------联系方式表---------------*/
  35. create table Contact
  36. (
  37.  Cid int identity(1,1) primary key,
  38.  Cname char(16) unique not null
  39. )
  40. /*-----------通讯录表---------------*/
  41. create table AddressBook
  42. (
  43.  Mid int references membership(Mid),
  44.  Cid int references Contact(Cid),
  45.  ADate char(60) not null,
  46.  primary key (Mid,Cid)
  47. )

录入数据库数据

  1. /*-----插入用户------------------------------*/
  2. insert into users(uname,upassword,ulevel)
  3. values(‘cnlht‘,‘123456‘,1)
  4. /*-----插入成员------------------------------*/
  5. insert into membership(Mname,Msex)
  6. values(‘梁宏涛‘,‘男‘)
  7. insert into membership(Mname,Msex)
  8. values(‘王海章‘,‘男‘)
  9. insert into membership(Mname,Msex)
  10. values(‘梁雄伟‘,‘男‘)
  11. insert into membership(Mname,Msex)
  12. values(‘王怡强‘,‘男‘)
  13. /*-----插入分组方式--------------------------*/
  14. insert into PacketMode(Pname)
  15. values(‘本人‘)
  16. insert into PacketMode(Pname)
  17. values(‘亲人‘)
  18. insert into PacketMode(Pname)
  19. values(‘朋友‘)
  20. insert into PacketMode(Pname)
  21. values(‘同学‘)
  22. insert into PacketMode(Pname)
  23. values(‘同事‘)
  24. /*-----插入联系方式--------------------------*/
  25. insert into contact(cname)
  26. values(‘手机‘)
  27. insert into contact(cname)
  28. values(‘E-Mail‘)
  29. insert into contact(cname)
  30. values(‘QQ‘)
  31. insert into contact(cname)
  32. values(‘家庭住址‘)
  33. insert into contact(cname)
  34. values(‘邮政编码‘)
  35. insert into contact(cname)
  36. values(‘办公电话‘)
  37. insert into contact(cname)
  38. values(‘工作单位地址‘)
  39. insert into contact(cname)
  40. values(‘工作单位邮编‘)
  41. /*-----插入用户-成员关系---------------------*/
  42. insert into relations
  43. values(1,1,1)
  44. insert into relations
  45. values(1,2,5)
  46. insert into relations
  47. values(1,3,2)
  48. insert into relations
  49. values(1,4,4)
  50. /*-----插入成员-联系方式(通讯录)------------*/
  51. insert into AddressBook
  52. values(1,1,‘1358920xxxx‘)
  53. insert into AddressBook
  54. values(2,1,‘1580653xxxx‘)
  55. insert into AddressBook
  56. values(3,1,‘1377205xxxx‘)
  57. insert into AddressBook
  58. values(4,1,‘1369916xxxx‘)
  59. insert into AddressBook
  60. values(1,2,‘cnlht@126.com‘)
  61. insert into AddressBook
  62. values(1,3,‘56280xxx‘)
  63. insert into AddressBook
  64. values(1,6,‘0532-8228xxxx‘)

查询:1、用户cnlht的全部成员

     

 

     2、用户cnlht的全部成员的手机

 

 

   3.查询cnlht用户的相关通讯录(含全部组的,全部通讯方式)

 

 

学生学籍管理系统

 

一、设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

二、设计内容

1.  基本的数据表

学生基本情况数据表,学生成绩数据表,课程表,代码表等。

2.  主要功能模块

1)  实现学生基本情况的录入、改动、删除等基本操作。

2)  对学生基本信息提供灵活的查询方式。

3)  完毕一个班级的学期选课功能。

4)  实现学生成绩的录入、改动、删除等基本操作。

5)  能方便的对学生的个学期成绩进行查询。

6)  具有成绩统计、排名等功能。

7)  具有留级、休学等特殊情况的处理功能。

8)  能输出经常使用的各种报表。

9)  具有数据备份和数据恢复功能。

 

三、设计要求

学生成绩表的设计,要考虑到不同年级的教学计划的变化情况。

对于新生班级,应该首先进行基本情况录入、选课、然后才干进行成绩录入。

 

 

图书管理系统

 

一、设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

二、设计内容

1.  要的数据表

图书基本信息表,借书卡信息表,借阅信息表,图书分类信息表,代码表等。

2.  功能模块

1)  图书基本情况的录入、改动、删除等基本操作。

2)  办理借书卡模块。

3)  实现借书功能。

4)  实现还书功能。

5)  能方便的对图书进行查询。

6)  对超期的情况能自己主动给出提示信息。

7)  具有数据备份和数据恢复功能。

 

三、设计要求

图书编号可參考国家统一的图书编码方法,再完毕基本功能模块的情况下,尽量使系统能具有通用性。

 

银行储蓄系统

 

一、  设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

二、  设计内容

1.  基本的数据表

定期存款单,活期存款帐,存款类别代码表等。

2.  功能模块

1)  实现储户开户登记。

2)  办理定期存款帐。

3)  办理定期取款手续。

4)  办理活期存款帐

5)  办理活期取款手续。

6)  实现利息计算。

7)  输出明细表。

8)  具有数据备份和数据恢复功能。

 

三、  设计要求

要进行实际调研,系统功能在实现时參照实际的储蓄系统的功能。同一时候要考虑银行系统数据的安全与保密工作。数据要有加密功能。

 

设备管理系统

 

一、  设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

二、  设计内容

1.  主要数据表

设备明细帐表,设备使用单位代码表,国家标准设备分类表等。

2.  功能模块

1)  实现设备的录入、删除、改动等基本操作。

2)  实现国家标准设备代码的维护。

3)  可以对设备进行方便的检索。

4)  实现设备折旧计算。

5)  可以输出设备分类明细表。

6)  具有数据备份和数据恢复功能。

 

三、  设计要求

详细设备编码參考国家统一编码方法,功能实现也要考虑通用性。

 

医院药品进销存系统

 

一、  设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

二、  设计内容

1.  基本的数据表

药品分类代码表,药品库存表,供货商信息表,採购信息表等。

2.  功能模块

1)  新药品的入库。

2)  过期药品的出库登记、处理记录。

3)  药品库存检索。

4)  供货商信息检索。

5)  药品採购记录管理。

6)  药品用药说明信息管理。

7)  输出对应的数据报表。

8)  具有数据备份和数据恢复功能。

 

三、  设计要求

详细项目内容去医院进行调研,药品编码也应參考国家统一编码方法。

 

英语学习助手

 

一、  设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

二、  设计内容

1.       基本的数据表

英语分级单词表,经常使用单词例句表,短文分级表等。

2.  功能模块

1)  实现英语单词的录入、改动、删除等基本操作。

2)  实现经常使用英语单词例句的录入、改动、删除等基本操作。

3)  实现英语单词检索、翻译等。

4)  经常使用英语单词例句检索。

5)  依据难度随机生成一份单词測试题目。

6)  可以检索出短文极其翻译对比表。

7)  具有数据备份和数据恢复功能。

 

三、  设计要求

系统要考虑有用性,尽量实现英汉互译。英语单词和短语能够考虑加上声音。

 

大学生就业咨询系统

 

       一、设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

       二、设计内容

1.  主要数据表

用人单位基本信息表,专业信息表,地区代码表等

2.  功能模块

1)  对用人单位的基本信息进行录入、改动、删除等。

2)  实现毕业生专业信息的维护。

3)  定时公布用人单位的毕业生需求信息。

4)  方便的实现对人才需求信息的检索。

5)  对用人单位的级别可以自己主动进行变更。

6)  可以对历年的毕业需求信息进行统计、分析。

7)  具有数据备份和数据恢复功能。

 

       三、设计要求

              方便毕业生进行就业信息检索,可考虑将就业信息在网上进行公布。

 

教务辅助管理系统

 

一、  设计目的

学生依据所学的数据库原理与程序设计的知识,可以针对一个小型的数据库管理系统,进行系统的需求分析,系统设计,数据库设计,编码,測试等,完毕题目要求的功能,从而达到掌握开发一个小型数据库的目的。

 

二、  设计内容

1.  基本的数据表

教师基本信息表,课程表,教室资源表等

        2.功能模块

1)  对上课教师基本信息进行管理。

2)  对全院开设的课程进行管理。

3)  录入教师基本上课信息。

4)  实现自己主动排课功能。

5)  计算工作量

6)  可以进行各种数据统计。

7)  可以输出对应的报表。

8)  具有数据备份和数据恢复功能。

 

三、  设计要求

软件功能主要考虑有用,详细功能模块一定要先进行调研。

 

 

 

 

大作业參考选题

要求:

1.      选择其一,5人一组,附录分工表(即某个模块,某些分析有谁完毕)。

2.      完毕系统分析、概念结构设计、数据库逻辑机构设计、数据库物理实现,写出分析过程,形成《系统需求分析说明书》,《系统概要设计报告》,《系统具体设计报告》等文档。(期中考试实验成绩主要来源)。该部分100分。

3.      利用一种程序设计开发工具实现(如:C语言,DelphiJspAsp)。该部分为附加题,50分。

(1)    银行储蓄系统

(2)    人事管理系统

(3)    仓库管理系统

(4)    餐饮点菜订餐系统

(5)    学生管理系统

(6)    宾馆住宿管理

(7)    图书管理信息系统

(8)    设备管理系统

(9)    学籍管理系统

(10)机票预定系统

(11)公司考勤系统

(12)楼宇物业管理系统