级数据库课程设计安排

中南大学

《课程设计I》设计报告

题目

学生姓名

学号

专业班级

指导老师

数学科学与计算技术学院

2011年1月

题目

一、实验目的、内容

描述进行的程序设计,采用……进行…, 要达到…内容….应包含有类和指针…

二、实验程序设计及结构

1、需求分析

2、设计结构(包括总体结构和数据结构)

三、设计过程

写出设计过程,实验源代码可不写出,但实验中出错信息及处理方法及解决错误的方法要写。

四、设计的特点和结果

包括实验处理结果和设计心得。指出实验结果运行的操作系统和平台。

参考文献

1、人名,文章名,出版机构,出版时间

2、

附录

自己做的主要实验源代码

《数据库课程设计》教案大纲

课程编号:13020000

课程名称:数据库课程设计

学分: 2 总学时:2周

先修课程要求:数据库原理与技术

适应专业:信息与计算科学、数学与应用数学

参考教材:1. 《数据库原理与技术》

2. 《Oracle入门与提高》

-、课程在培养方案中的地位、目的和任务

本课程设计是为信科、应数专业安排的重要的实践环节,数据库课程设计目的是使学生通过做一个具体的设计题目,将课本上的理论知识和实际有机的结合起来,培养学生运用所学的理论知识和技能,分析解决实际问题的能力,培养学生调查研究、查阅技术文献、资料、编程开发以及编写技术文献的能力。提供独立编程的实践机会。

二、课程设计的基本要求

要求掌握Oracle数据库编程的特点,掌握面向对象程序设计的方法,根据所给题目,通过调查研究和上机实习,收集和调查有关技术资料。结合软件开发技术的思想,正确划分系统功能模块,进行系统的详细设计,并说明各功能模块的具体功能。掌握设计课题的基本步骤和方法,写出系统实现的具体方法,包括系统界面、功能等,附课程设计原程序。并提出系统测试方法,对所开发的系统进行测试,得出测试结果。并分析结果,评价系统的性能。

三、课程的基本内容以及重点难点

1. 课程的基本内容:对数据库原理与技术的教案内容、Oracle数据库编程,前后台数据库的连接。

2. 难点:数据库的关联、对具体问题的编程和开发技术。

四、课程设计的安排和选题

原则上要求每个学生基础题和综合题各选一题,具体任务由指导老师布置,提出设计内容、设计要求及实施计划。

学生熟习题目,给出解题方案和算法设计.

进行系统设计,给出系统框图和流程图.

编码与测试,要求有说明文档及测试报告.

完成设计报告,不少于2000字

五、课程设计报告要求

写出不少于2000字的课程设计报告,程序设计文档要求:对系统进行功能模块分析、控制模块分析正确,系统设计要实用,编程简练、可用、功能较全面,说明书、流程图要清楚。基本结构:设计分析、算法或程序流程图源程序(附解释说明)调试报告用户使用说明。报告中除了在封面应有题目、班级、姓名、学号和课程设计日期以外,其正文一般有如下几个方面的内容:一、课程设计目的;二、系统功能和使用说明,硬件环境:本系统适用于那种类型的计算机,内存容量为多大,应配备的外部设备有哪些;软件环境:本系统的设计采用的是何种语言,应在什么软件环境下使用;三、需求分析;四、系统概念结构设计;五、数据库逻辑结构设计(数据库结构说明);六、系统的实现过程。七、结束语。通过搞课程设计,你有何感想,学到了什么?

六、考核方式与评分方法

根据课程设计要求,利用所选题目,完成设计和开发任务,写出规范的设计报告,并根据实习到课情况、软件上机运行情况、界面是否友好、报告是否规范等综合评定。如多人合作完成,应根据各人所承担的工作情况,进行排序。指导教师负责组织检查、考勤教师分组负责(每位教师与担任的班级同时上下课)帮助学生熟悉程序编写,及时查究错误。考核规范包括:程序设计的可用性,实用性,通用性,可扩充性(40%)学生的动手能力,创新精神(20%)总结报告(20%)学习态度(20%)。

七、参考题目与具体要求举例

参考题目:

第一部分:基础题

第一题进入自己创建的用户下进行以下操作。

1、创建表STUDENT、COURSE、GRADE,各个表的结构如下:

(1) STUDENT

学号 NUMBER(6),

姓名 VARCHAR2(12)

入学时间 DATE,

专业 VARCHAR2(20),

性别 CHAR(2),

年龄 INTEGER

(2) COURSE

课程号 NUMBER(6),

课程名称 VARCHAR2(20),

学时 INTEGER,

学分 INTEGER

(3) GRADE

学号 NUMBER(6),

课程号 NUMBER(6),

成绩 NUMBER(2)

2、向上面的三个表中分别插入5条纪录。示例:

(1)(1) INSERT INTO STUDENT (学号,姓名,入学时间,专业,性别,年龄)

VALUES

(100001,’HUANGWEI’,TO_DATE(‘1999-09-10’,’YYYY-MM-DD’),’COMPUTER’,’

男’,23)。

(2)(2) INSERT INTO COURSE (课程号,课程名称,学时,学分)

VALUES (000001,’多媒体’,32,4)。

(3)(3) INSERT INTO GRADE (学号,课程号,成绩)

VALUES (100001,000001,90)

第二题练习:建立TEAMSTATS表如下:

NAME POS AB HITS WALKS SINGLES DOUBLES TRIPLES HR SO

JONES 1B 145 45 34 31 8 1 5 10

DONKNOW 3B 175 65 23 50 10 1 4 15

WORLEY LF 157 49 15 5 8 3 3 16

DAVID OF 187 70 24 48 4 0 17 42

HAMHOCKER 3B 50 12 10 10 2 0 0 13

CASEY DH 1 0 0 0 0 0 0 1

在TEAMSTATS表上做如下操作:

(1)查看WALKS小于20的球员的个数。

SQL> SELECT COUNT(*) FROM TEAMSTATS WHERE WALKS<20。

(2)查看表中所有记录的个数。(自己写)

(3)查看队员总的HITS数。

SQL>SELECT SUM(HITS) TOTAL_HITS FROM TEAMSTATS。

(4)查看3B位置上的队员总的DOUBLES及总的SO。

(5)查看漏球(SO)的平均数。

SQL>SELECT AVG(SO) AVE_STRIKE_OUTS FROM TEAMSTATS。

(6)查看TRIPLES为0的队员的HITS的平均数。

(7)查看所有队员的最高SIGGLES是多少。

SQL>SELECT MAX(SIGGLES) FROM TEAMSTATS。

第三题已知公司的员工表EMP(EID, ENAME, BDATE, SEX, CITY),

部门表DEPT(DID, DNAME, DCITY),

工作表WORK(EID,DID,STARTDATE,SALARY)。各个字段说明如下:

EID——员工编号,最多6个字符。例如A00001(主键)

ENAME——员工姓名,最多10个字符。例如SMITH

BDATE——出生日期,日期型

SEX——员工性别,单个字符。F或者M

CITY——员工居住的城市,最多20个字符。例如:上海

DID——部门编号,最多3个字符。例如 A01 (主键)

DNAME——部门名称,最多20个字符。例如:研发部门

DCITY——部门所在的城市,最多20个字符。例如:上海

STARTDATE——员工到部门上班的日期,日期型

SALARY——员工的工资。整型。

请使用ORACLE的sql*plus 完成下列的操作

1、创建表EMP,DEPT,WORK,并定义表的主键和外键。

2、向每个表中插入适当的数据。例如:插入三条部门的数据,分别为每个部门插入两条员工数据

3、查询“研发”部门的所有员工的基本信息

4、查询拥有最多的员工的部门的基本信息(要求只取出一个部门的信息),如果有多个部门人数一样,那么取出部门编号最小的那个部门的基本信息。

5、显示部门人数大于5的每个部门的编号,名称,人数

6、显示部门人数大于5的每个部门的最高工资,最低工资

7、列出员工编号以字母P至S开头的所有员工的基本信息

8、删除年龄超过60岁的员工

9、为工龄超过10年的职工增加10%的工资

第四题 PL/SQL快速学习:

1、PL/SQL 是一项ORACLE 的技术,是ORACLE 的过程型语言,它由规范的SQL 语句和一系列可以让你在不同的情况下对SQL 语句的执行进行控制的命令组成。

2、PL/SQL 块的结构:

PL/SQL 是一种块结构语言,也就是说PL/SQL 的程序可以分成逻辑块来写。块是PL/SQL 代码的逻辑单元,包括至少一个BEGIN 部分和可以选择的DECLARE 以及EXCEPTION 部分。 PL/SQL 块的基本结构:

SYNTAX:

BEGIN -- optional, denotes beginning of block

DECLARE -- optional, variable definitions

BEGIN -- mandatory, denotes beginning of procedure section

EXCEPTION -- optional, denotes beginning of exception section

END -- mandatory, denotes ending of procedure section

END -- optional, denotes ending of block

(1)在PL/SQL 的DECLARE 部分包括了变量、常量、指针和特殊数据类型的定义。

(2) BEGIN部分是PL/SQL 语句块中的必须部分,在这一部分将会使用变量和用户指针来操作数据库中的数据。

(3)EXCEPTION 部分在PL/SQL 语句块中是可以选择的,如果在这一部分被省略而遇到异常的时候该块就会终止了。

3、由基本的PL/SQL块所组成的PL/SQL程序,可组成不同的程序形式,它们的用途和适用性各不相同。程序形式大致有以下几种:

(1)无名块:也就是没有命名的PL/SQL块,它可以是嵌入某一个应用之中的一个PL/SQL 块。无名块在所有PL/SQL环境中都适用。

(2)存储过程/函数(Procedure/Function):命名的PL/SQL块,它可以接受参数,并且可以重复的被调用。

(3)包(Package):命名的PL/SQL块,由一组相关的过程、函数和标识符组成。

(4)数据库触发器(Triggers):是与一个具体数据库表相关联的PL/SQL存储程序。每当一个SQL操作影响到该数据库表时,系统就自动执行相应的数据库触发器。

4、PL/SQL中的控制语句:

(1)条件语句:IF...THEN

语法:

IF condition1 THEN

statement1;

ELSIF condition2 THEN(可选)

statement2;

ELSE(可选)

statement3;

END IF

(2)循环语句:

i.简单循环:

LOOP

statement1;

END LOOP

ii.FOR循环:

iii.WHILE循环:

5、题目:建立如下表,并用语句插入如下数据,完成所要求的操作。

(1).使用的表为:PAY_TABLE,结构:

Name Null? Type

NAME NOT NULL VARCHAR2(20)

PAY_TYPE NOT NULL VARCHAR2(8)

PAY_RATE NOT NULL NUMBER(8,2)

EFF_DATE NOT NULL DATE

PREV_PAY NUMBER(8,2)

数据:

NAME PAY_TYPE PAY_RATE EFF_DATE PREV_PAY

SANDRA SAMUELS HOURLY 12.50 01-JAN-04

ROBERT BOBAY HOURLY 11.50 15-MAY-03

KEITH JONES HOURLY 10.00 31-OCT-04

SUSAN WILLIAMS HOURLY 9.75 01-MAY-04

CHRISSY ZOES SALARY 50000.00 01-JAN-04

CLODE EVANS SALARY 42150.00 01-MAR-04

JOHN SMITH SALARY 35000.00 15-JUN-03

KEVIN TROLLBERG SALARY 27500.00 15-JUN-03

(2).操作要求:要给为你工作的时间超过了六个月的个人增加薪金。符合条件的钟点工的薪金增加4% 而符合条件的雇员的薪金需要增加5% 。

PL/SQL 的脚本:

set serveroutput on

BEGIN

DECLARE

UnknownPayType exception。

cursor pay_cursor is

select name, pay_type, pay_rate, eff_date,

sysdate, rowid

from pay_table。

IndRec pay_cursor%ROWTYPE。

cOldDate date。

fNewPay number(8,2)。

BEGIN

open pay_cursor。

loop

fetch pay_cursor into IndRec。

exit when pay_cursor%NOTFOUND。

cOldDate := sysdate - 180。

if (IndRec.pay_type = 'SALARY') then

fNewPay := IndRec.pay_rate * 1.05。

elsif (IndRec.pay_type = 'HOURLY') then

fNewPay := IndRec.pay_rate * 1.04。

else

raise UnknownPayType。

end if。

if (IndRec.eff_date < cOldDate) then

update pay_table

set pay_rate = fNewPay,

prev_pay = IndRec.pay_rate,

eff_date = IndRec.sysdate

where rowid = IndRec.rowid。

commit。

end if。

end loop。

close pay_cursor。

EXCEPTION

when UnknownPayType then

dbms_output.put_line('=======================')。

dbms_output.put_line('ERROR: Aborting program.')。

dbms_output.put_line('Unknown Pay Type for Name')。

when others then

dbms_output.put_line('ERROR During Processing. See the DBA.')。

END。

END。

/

6.练习:

(1).对PAY_TABLE表写一个查询所有记录的过程。

(2).对PAY_TABLE表写一个插入一条记录的过程,要求输入参数为一条记录。

(3).写一个过程实现如下要求:对工作时间超过8个月的职员,如果PAY_TYPE

是HOURLY,则改为SALARY,并将PAY_RATE改为按每天7小时工作的年薪.

第五题:完成如下操作要求

某数据库有两张表:emp表和dept表,两张表的结构如下:

emp (emp_id number(5), emp_name varchar2(20), emp_salary number(4));

dept (dept_id number(3), dept_name varchar2(20), emp_id number(5))。

要求如下:

1、按照上表结构建立相应的表,为每张表写入5组合法数据。

2、操纵相关表,使得“技术部”的员工的薪水上涨20%。

3、建立日志,追踪薪水变动情况。

4、建立测试包。

第六题.要求1考察点为基本SQL语句;

要求2主要考察复合查询;

要求3是考察触发器的应用;

要求4不仅考察了包的创建,而且也考察了在PL/SQL中的测试方法。

要求1:首先根据前面表的结构可以创建两张表:

——创建员工表

create table emp (emp_id number(5), emp_name varchar2(20), emp_salary number(4))。——部门表

create table dept (dept_id number(3), dept_name varchar2(20), emp_id number(5))。

建立了表之后就可以往表里面写数据了,这里把添加表记录的代码写入到相应的存储过程。

/*给emp表添加记录的存储过程*/

create or replace procedure ins_table_emp(p_emp_id number,p_emp_name varchar2,p_emp_salary number) as

v_emp_id number:=p_emp_id。

v_emp_name varchar2(20):=p_emp_name。

v_emp_salary number:=p_emp_salary。

begin

insert into emp values (v_emp_id,v_emp_name,v_emp_salary)。

end ins_table_emp。

/*给dept表添加记录的存储过程*/

create or replace procedure ins_table_dept(p_dept_id number,p_dept_name varchar2,p_emp_id number) as

v_dept_id number:=p_dept_id。

v_dept_name varchar2(20):=p_dept_name。

v_emp_id number:=p_emp_id。

begin

insert into dept values (v_dept_id,v_dept_name,v_emp_id)。

end ins_table_emp。

/*调用相应的存储过程实现记录添加*/

begin

ins_table_emp(10000,'',4000)。

ins_table_emp(10001,'??èy',2300)。

ins_table_emp(10002,'3?t',3500)。

ins_table_emp(10003,'à???',3500)。

ins_table_emp(10004,'á?ò?',3500)。

ins_table_dept(111,'DD?t2?',10000)。

ins_table_dept(111,'DD?t2?',10001)。

ins_table_dept(111,'DD?t2?',10002)。

ins_table_dept(112,'??ê?2?',10003)。

ins_table_dept(113,'êD3?2?',10004)。

end。

要求2:

给指定部门的员工加薪,这实际上是一个复合查询,首先需要把所有该部门的员工选出来,然后对这些员工的薪水进行相应的改动。代码如下:

(需要注意的是:将要加薪的部门作为参数,这样的存储过程更有灵活性。)

create or replace procedure add_salary(p_dept_name varchar2) as

v_dept_name varchar2(20):=p_dept_name。

begin

update emp set emp.EMP_SALARY=emp.EMP_SALARY*1.2 where emp.EMP_ID in (select emp.EMP_ID from emp,dept where emp.EMP_ID=dept.EMP_ID and dept.DEPT_ID='??ê?2?')。end add_salary。

要求3:

建立日志对薪水的变动情况形成一个追踪,也就是说,如果对某个职员的薪水进行变更就应该将其相应的变更记录全部记下来。如果对emp表的salary字段创建一个触发器,来监视对salary的更改,把每次更改进行记录,这样就达到了要求3的目的了。

create or replace trigger print_salary_change

before delete or insert or update on emp--触发事件

for each row-- 每修改一行都需要调用此过程

declare --只有触发器的声明需要declare,过程和函数都不需要

salary_balance number。

begin

--:new 与:old分别代表该行在修改前和修改后的记录

salary_balance=:new.salary=:old.salary。

dbms_output.PUT_LINE('old salary is: '|| :old.salary)。

dbms_output.PUT_LINE('old salary is: '|| :new.salary)。

dbms_output.PUT_LINE('old salary is: '|| to_char(salary_balance))。

end print_salary_change。

要求4:与其他语言(c/c++等)相比,PL/SQL的测试有其不同之处,归纳下来有三种方法:

1、使用DBMS_OUTPUT包的PUT_LINE方法来显示中间变量,以此来观察程序是否存在逻辑错误。

2、插入测试表的方法。即创建一个临时的中间表,然后把所有涉及到的中间变量的结果都作为记录插入到中间表中,这样可以查询表中的结果来观察程序的执行情况。

3、使用异常处理手段,对可疑的程序段使用begin … end ,然后可以在exception里进行异常捕获处理。

这里使用第二种方法插入测试表的方法来建立一个测试包,PL/SQL里包的概念类似于面向对象里的类的概念,包将一组操作和属性封装在一起,不仅增强了程序的模块化,而且由于封装了更多的操作和属性而提高了执行效能。建立一个PL/SQL需要两个步骤:首先要建立包头,类似于建立一个类的头文件,里面主要对包中的过程,函数和变量的声明;第二部分主要是包体部分,实现前面声明的过程和函数,另外还需要对包进行初始化等工作。

根据这一思路,建立测试包如下:

/*包头部分*/

create or replace package debug as

procedure debug(v_description varchar2,v_valueOfvariable varchar2)

procedure reset。

v_numberOfLine number。

end debug。

/*包体部分*/

create or replace package body debug as

procedure debug(v_description varchar2,v_valueOfvariable varchar2) is

begin

insert into debugtable

values(v_numberOfLine,v_description,v_valueOfvariable)。

v_numberOfLine:=v_numberOfLine+1。

end debug。

procedure reset is

begin

v_numberOfLine:=1。

delete from debugtable。

end reset。

/*初始化部分*/

begin

reset。

end debug。

三.习题

1、创建一个过程,打印出各个工资级别的人数。备注:显示的格式为三种情况1、工资少于2000的人数为:****;工资在2000——3000的人数为****。工资大于3000的人数为:****

2、创建一个表salary_change_record (empid,old_salary,new_salary,change_date),old_salary:用来纪录员工原来的工资,new_salary:用来纪录更新后的工资,change_date:记录更新的系统时间。然后创建一个触发器,名称为 change_record,功能:每次更新员工工资之后,将更新纪录保存到表salary_change_record中。

第六题:(三人完成,每人选三题)

已知公司的员工表EMP(EID, ENAME, BDATE, SEX, CITY),

部门表DEPT(DID, DNAME, DCITY),

工作表WORK(EID,DID,STARTDATE,SALARY)。各个字段说明如下:

EID——员工编号,最多6个字符。例如A00001(主键)

ENAME——员工姓名,最多10个字符。例如SMITH

BDATE——出生日期,日期型

SEX——员工性别,单个字符。F或者M

CITY——员工居住的城市,最多20个字符。例如:上海

DID——部门编号,最多3个字符。例如 A01 (主键)

DNAME——部门名称,最多20个字符。例如:研发部门

DCITY——部门所在的城市,最多20个字符。例如:上海

STARTDATE——员工到部门上班的日期,日期型

SALARY——员工的工资。整型。

请使用ORACLE的sql*plus 完成下列的操作

1、创建表EMP,DEPT,WORK,并定义表的主键和外键。

2、向每个表中插入适当的数据。例如:插入三条部门的数据,分别为每个部门插入两条员

工数据

3、查询“研发”部门的所有员工的基本信息

4、查询拥有最多的员工的部门的基本信息(要求只取出一个部门的信息),如果有多个部

门人数一样,那么取出部门编号最小的那个部门的基本信息。

5、显示部门人数大于5的每个部门的编号,名称,人数

6、显示部门人数大于5的每个部门的最高工资,最低工资

7、列出员工编号以字母P至S开头的所有员工的基本信息

8、删除年龄超过60岁的员工

9、为工龄超过10年的职工增加10%的工资

第七题:(三人完成,每人一题)

——创建员工表

create table emp (emp_id number(5), emp_name varchar2(20), emp_salary number(4),job varchar2(20), dept_id number(3))。

——部门表

create table dept (dept_id number(3), dept_name varchar2(20), loc varchar2(20))。

1、编写一个数据库触发器,当任何时候某个部门从"dept"中删除时,该触发器将从"emp"表中删除该部门的所有雇员。

2、编写一个数据包,它有两个函数和两个过程以操作"emp"表。该数据包要执行的任务为:插入一个新雇员;删除一个现有雇员;显示指定雇员的整体薪水;显示指定雇员所在部门名称。

3、编写一个函数以检查所指定雇员的薪水是否有效范围内。不同职位的薪水范围为:

Designation Raise

Clerk 1500-2500

Salesman 2501-3500

Analyst 3501-4500

Others 4501 and above.

如果薪水在此范围内,则显示消息"Salary is OK",否则更新薪水为该范围内的最大值。第八题:(三人完成,12题一人,其他每人一题)

某数据库有两张表:emp表和dept表,两张表的结构如下:

emp (emp_id number(5), emp_name varchar2(20), emp_salary number(4));

dept (dept_id number(3), dept_name varchar2(20), emp_id number(5))。

要求如下:

1、按照上表结构建立相应的表,为每张表写入5组合法数据。

2、操纵相关表,使得“技术部”的员工的薪水上涨20%。

3、创建一个过程,打印出各个工资级别的人数。备注:显示的格式为三种情况1、工资少于2000的人数为:****;工资在2000——3000的人数为****。工资大于3000的人数为:****

4、创建一个表salary_change_record

(empid,old_salary,new_salary,change_date),old_salary:用来纪录员工原来的工资,new_salary:用来纪录更新后的工资,change_date:记录更新的系统时间。然后创建一个触发器,名称为 change_record,功能:每次更新员工工资之后,将更新纪录保存到表salary_change_record中。

第九题:

编写程序向DEPT表中插入一条记录,从键盘输入数据,如果数据类型输入错误要有提示无法插入记录也要有提示,只能输入正数,如果有负数提示。

第十题

编写函数按YYYY-MM-DD HH24:MI:SS格式以字符串形式返回当前系统时间

第十一题

编写函数在scott.emp表查询指定编号雇员的名字、工资和佣金

第十二题

编写一个子程序,当在scott.emp表删除雇员时,希望能记载是哪个用户在什么时候删除的。这里面涉及两件事情,一是删除指定的雇员记录,二是记载是什么时候哪个用户删除的。

第十三题

scott.emp表使用用触发器实现业务规则:除销售员外,雇员工资只增不减

第十四题

编写一个子程序,删除指定编号的雇员,返回用户自定义的错误号和错误信息。

第十五题

为雇员表emp创建一触发器,确保插入记录的工资列sal不小于0,同时新记录的sal列值不能高于已有记录最高工资的2倍

第十六题

用游标完成将雇员表emp中编号大于200、且工资超过10000的雇员记录插入到sal_history 表中,将其经理编号超过200的记录插入到mgr_history表中。

第十七题

按年度基本工资额用游标修改emp表中记录的sal字段值,如年基本工资低于30000,sal 增加20%,否则sal增加15%。

第十八题

建立名称为data_ts1的数据表空间,大小为50M,区间统一为128KB大小

建立名称为temp_ts1的临时表空间,使用temp_ts1.dbf文件存放临时数据

创建10号部门经理用户EMP_MGR10,指定该用户的数据表空间为data_ts1,临时表空间为temp_ts1。授权该用户可以查看SCOTT用户下雇员表中的记录。

第十九题(两人完成,每人三题)

1建立以上三个表

2查询借书超过5本的读者的借书卡号及所借图书册数。

3查询借阅了"水浒"一书的读者的姓名及班级。

4查询出过期未还的图书,显示借阅者卡号、书名及作者。

5查询出书名包括"网络"关键词的图书,显示其书号、书名、作者。

6将图书表中当前无人借阅的图书记录删除。

第二十题

在scott.emp表中通过雇员编号查询雇员工资,如果sal<800 显示低工资,Sal.>5000 显示高工资,其他显示正常工资

第二十一题

创建一个表空间test,三个datafile

第一个10m,自增,每次增加20m,最大100m.

第二个20m,自增,每次增加10m,最大没有限制.

创建用户test,密码test,默认表空间test(上面那一个).

用test登陆,建表test1,表项:id 数字型,name 字符型

并使用户scott能对该表操作

第二十二题

创建序列产生器seq_test.创建表stu,表项:学号(非空主键约束),学生姓名(学生姓名也使用序列产生器产生,即为数字格式,例如'2\').向stu表中使用序列产生器插入5条数据.

第二十三题

编程向emp表中插入数据,要求使用异常出现以下提示:部门代码为 50 的职员工资应高于 10000 元

第二十四题

写一个存储过程,用于创建一个名为Test的表,该表只有一个名字为coll的列,数据类型为整型。创建一个循环结构,插入数值到表中,直到有100条记录。用变量记录已存储到表中的记录数,当变量的值达到100时,使用BREAK语句退出循环

第二十五题

假设有两个表:职员表(工号,姓名,工资……)和津贴表(工号,津贴……),要求用游标完成操作:取出职员表中工资大于1000元的记录,将其工资的30%作为津贴插入津贴表中

第二部分:综合题

前台可以是VB,VC++,VC#,JAVA,DREAMWEAVER,PHP、DEPHI等,后台数据库用oracle 数据库。要求:分析设计合理的功能要求,创建合理的数据库表,界面要求简单。

序号设计题目

1 列车时刻查询系统开发

2 学生学籍成绩经管系统

3 企业资质经管系统

4 书店销售经管系统

5 超市进销经管系统

6 党务经管系统

7 教材订购销售系统

8 医药信息经管

9 点歌系统

10 仓库经管系统

11 歌曲数据库录入系统

12 数学院学生信息系统

13 数学院教师经管系统

14 小区物业经管系统

15 出租车经管系统

16 公安局罪犯经管系统

17 影碟租赁系统

18 酒店经管系统

19 餐饮经管系统

20 房屋租赁业务经管系统

21 广告业务经管系统

22 网吧经管系统

23 洗浴经管系统

24 网吧会员经管系统

25 机票预订系统

26 朋友信息经管系统

27 停车场经管系统

28 婚介所会员经管系统

29 旅行社业务经管系统

30 会计师注册经管系统

31 自学考试经管系统

32 教师培训经管系统

33 党务经管系统

34 音乐经管系统

35 个人办公助理经管系统

36 学生选课经管系统

37 图书经管系统

38 销售经管系统

39 BBS

40 人事经管系统

每题都应考虑到各种情况,例如乳品销售系统,包括送奶上门(包括具体地点),订购点,超市和商场,送货员,业务员(收款),日期时间、各个点的品种和数量,每月给送货员和业务员的提成、月统计、年统计、图表等。

图书经管系统设计举例:图书经管系统设计,主要完成图书经管系统的设计。用户有以下需求:建立读者档案;建立图书档案,建立书目索引;完成日常图书检索、借还工作,对读者档案、图书档案、借还系统的访问,必需进行身份验证。

具体要求如下:

a.读者档案数据包括:借书证号、姓名、性别、出生日期、身份证号、单位、通讯地址、邮政编码、联系电话、办证日期、借阅范围(书库)、允许最多借书册数、借书期限、照片、职业等。

b.图书档案数据包括:书号、书名、作者、出版单位、出版日期、版次、单价、内容提要、分类号、索书号、藏书册数、每册图书馆藏注册号、所在书库、入库日期等。

c.检索系统能根据书号、书名、作者、出版单位、内容提要关键字、分类号、索书号、每册图书馆藏注册号等进行查询。

d.借书系统输入借书条后,能根据借书证号判断该读者可以借书的书库,借书是否超出最大允许借书册数,书库中是否还有该书可借。

e、还书系统对过期未还图书进行罚款,对归还的图书能从借书登记表中取消,

对丢失的图书进行登记。

第34题音乐经管系统

参考功能分析:系统登录、曲目经管、歌曲排名、点歌

第35题个人办公助理经管系统

参考功能分析:系统登录、个人文件经管、个人收入支出经管第36题学生选课经管系统

参考功能分析:系统登录、课程经管、选课经管

第38题销售经管系统

参考功能分析:系统登录、库存查询、销售经管

第39题 BBS

参考功能分析:系统登录、帖子经管、用户经管第40题人事经管系统

参考功能分析:系统登录、人事经管、查询

以下附件:课程设计报告封面和报告内容

中南大学

《数据库课程设计》设计报告

题目

学生姓名

学号

专业班级

指导老师

数学科学与计算技术学院

2010年1月

题目

一、实验目的、内容

描述进行的程序设计,采用……进行…, 要达到…内容….应包含有类和指针…

二、实验程序设计及结构

3、需求分析(功能、类、成员)

4、设计结构(包括总体结构和数据结构)

三、设计过程

写出设计过程,实验源代码可不写出,但实验中出错信息及处理方法及解决错误的方法要写。

四、设计的特点和结果

包括实验处理结果和设计心得。指出实验结果运行的操作系统和平台。

参考文献

1、人名,文章名,出版机构,出版时间

2、

附录

自己做的主要实验源代码

数据库课程设计(自己做的)

——货存控制系统 6.1数据库设计概述 ㈠数据库设计的概念:数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。 ㈡数据库设计的特点 1、数据库建设是硬件、软件和干件的结合:三分技术、七分管理、十二分基础数据,技术与管理的界面称之为干件。 2、数据库设计过程是结构设计和行为设计的密切结合:结构设计是设计数据库结构,行为设计是设计应用程序、事务处理等。 ㈢数据库设计的方法 1、手工试凑法:设计质量与设计人员的经验和水平有直接关系,缺乏科学理论和工程方法的支持,工程质量难保证。 2、规范设计法:基本思想是过程迭代和逐步求精。 ㈣数据库设计的基本步骤 准备工作:选定参加设计的人员。 ⑴分析员:数据库设计的核心人员,自始至终参与数据库设计,其水平决定了数据库系统的质量。

⑵用户:主要参加需求分析和数据库的运行维护,用户的积极参与将加速数据库设计,提高数据库设计的质量。 ⑶程序员:在系统实施阶段参与进来,负责编制程序。 ⑷操作员:在系统实施阶段参与进来,准备软硬件环境。 ㈤数据库设计的过程(六个阶段) 1、需求分析阶段: 准确了解与分析用户需求(包括数据与处理),是整个设计过程的基础,是最困难、最耗费时间的一步。 2、概念结构设计阶段: 整个数据库设计的关键,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型 3、逻辑结构设计阶段: 将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。 4、数据库物理设计阶段: 为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。 5、数据库实施阶段: 运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库、编制与调试应用程序、组织数据入库并进行试运行。 6、数据库运行和维护阶段: 数据库应用系统经过试运行后即可投入正式运行,在运行过程中不断对其进行评价、调整与修改。 设计一个数据库应用系统往往是上述六个阶段的不断反复。 ㈥数据库设计各阶段的模式形成: 1、需求分析阶段:综合各个用户的应用需求。 2、概念设计阶段:形成独立于机器特点,独立于各个DBMS产品的概念模式(E-R图)。 3、逻辑设计阶段:首先将E-R图转换成具体DBMS支持的数据模型,如关系模型,形成数据库逻辑模式;然后根据用户处理的要求、安全性的考虑,在基本表的基础上再建立必要的视图(View),形成数据的外模式。 4、物理设计阶段:根据DBMS特点和处理需要,进行物理存储安排,建立索引,形成数据库内模式。

数据库课程设计完整版

数据库课程设计完 整版

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统姓名: 学号: 专业:信息与计算科学指导教师:

20年 12月1日 目录 引言3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要5 1.4软件处理对象 6 1.5系统可行性分析6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7

1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20 引言

学生宿舍管理系统对于一个学校来说是必不可少的组成部分。当前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强能够接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,而且具备修改功能,能够快速的查询学校所需的住宿信息。 面对当前学校发展的实际状况,我们经过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

大工15春《SQL数据库课程设计》模板及要求(最新)

大工15春《SQL数据库课程设计》模板及要求网络教育学院 《SQL数据库课程设计》 题目:XX系统的设计与实现 学习中心: 专业: 年级:年春/秋季

学号: 学生: 指导教师: 《SQL数据库课程设计》要求 《SQL数据库课程设计》是大连理工大学网络教育学院计算机应用技术专业开展的一项实践教学环节,是理论联系实践的纽带和桥梁,是培养学生综合运用所学知识解决实际问题的有效手段。该课程设计要求如下:1.要求学生以SQL Server 2008或其他版本为后台数据库,以VB、VC 或其他开发工具作为前台开发工具,围绕自己选定的某一个具体的系统完成一个小型数据库应用系统的开发,例如《图书管理系统的设计与实现》《书店管理系统的设计与实现》等。其课程设计具体内容包括项目概况、需求分析、详细设计等,详见课程离线作业中上传的《SQL数据库课程设计模板》。 注意:禁止撰写《学生成绩管理系统》课程设计!! 2.要求学生必须按照《SQL数据库课程设计模板》提供的格式和内容进行课程设计,完成课程设计模板提供的全部课程设计内容,字数要求达到3000字以上。 3.学生在进行课程设计的过程中,可参考辅导教师在导学资料中上传的

文献资料,有问题可通过课程论坛答疑。 4.2015年春季学期学生提交本课程设计形式及截止时间 学生需要以WORD附件形式(附件的大小限制在10M以内)将完成的课程设计以"离线作业"形式上传至课程平台中的"离线作业"模块,通过选择已完成的课程设计,点"上交"即可,如下图所示。 截止时间:2015年9月1日。在此之前,学生可随时提交课程设计,如需修改,可直接上传新文件,平台会自动覆盖原有文件。 5.课程设计批阅 老师会在离线作业关闭后集中批阅课程设计,在离线作业截止时间前不进行任何形式的批阅。 注意: 本课程设计应该独立完成,不准抄袭他人或者请人代做,如有雷同作业,

数据库课程设计案例

目录 一、设计目的....................................... 错误!未定义书签。 二、设计内容....................................... 错误!未定义书签。 三、设计过程....................................... 错误!未定义书签。 E-R模型设计............................................ 错误!未定义书签。 关系模型设计........................................... 错误!未定义书签。 数据库的实现........................................... 错误!未定义书签。 四、设计总结....................................... 错误!未定义书签。 五、参考文献....................................... 错误!未定义书签。

小区物业管理系统数据库设计与实现 一、设计目的 经过十几年的发展,中国房地产业逐步走向成熟,物业管理也由新生到发展再到深入,面临着蓬勃发展的局面。随着ISO9002等管理体系在物业管理中的引入,对原有的物业管理模式进行了一次深刻的变革,对物业管理公司朝着正规化、科学化、集团化的发展,起到有力的推动作用。 随着我国经济发展和城市开发,住宅小区越来越成为居住的主流,小区物业管理是针对当代社会这一市场需要应运而生的。本系统是为住宅小区物业管理部门日常管理工作信息化,规范化而开发的软件。它以物业管理部门为服务中心,以业主(住户)为服务对象。通过实施各种服务项目,全面地反映了在小区物业经营管理活动中,物业部门与业主之间各种业务往来。使各项业务的办理迅速、准确,极大的提高了小区物业管理的工作效率。 由于物业管理涉及的管理范围较为广泛,管理内容繁杂,加上政策性的变动因素,日常工作需要耗费大量人力和物力,而采取现代化电脑管理手段是一种行之有效的解决方法,用计算机操作的小区物业管理系统是为小区管理者和小区用户更好的维护各项物业管理业务处理工作而开发的管理软件。 数据库在一个管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的及将来可能增加的需求。 二、设计内容 (1)E-R模型设计:对物业公司、业主等实体进行抽象,提取相关属性;并设计出E-R图; (2)关系模型设计:根据E-R模型图,将E-R模型转化为关系模型;要求关系模型符合3NF要求; (3)数据库的实现:在SQL Serve 2000中实现数据库及各数据表的建立。 三、设计过程 E-R模型设计 作为物业公司,主要是对物业公司员工进行管理,任务分配是由系统用户分配的,物业公司员工负责维护小区以及为业主服务,根据以上分析,可以大

数据库课程设计完整版

HUNAN CITY UNIVERSITY 数据库系统课程设计设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日 目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7

1.7系统业务流程及具体功能 7 8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20 参考文献 20 引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了

SQL数据库课程设计,火车票

SQL上机实验项目设计列车信息查询数据库 学号:24110121 姓名:王若龙

1、实验项目名称:数据模型的建立过程与方法 2、实验项目编号:ab0822420305 3、实验性质:必做 4、实验类型:设计 5、实验目的:熟练掌握数据模型的设计、建立的过程与方法。 6、实验内容: 设计一个数据库,实现列车车次信息和车站信息的基本管理,为列车运行时刻信息的录入、修改、查询与统计等功能提供数据库支撑。 要求: (1)设计该数据库E-R图 (2)将E-R模型转换为关系模型,并规范化 (3)用SQL语句定义并建立数据库表结构 (4)提供以下SQL语句,并加以说明。 查询某车站火车到站出站信息。 查询某列火车沿途经过站点信息 查询从某站点上车,到达某站点,共有哪些列车可供乘坐。 统计某段时间经过某站点的列车共有多少。

(1)设计E-R 图 (2)将E-R 模型转换为关系模型,并规范化 车站信息(车站号,车站名) 列车信息(车次,始发站,终点站,出发时间,到达时间) 乘务人员(车次,姓名,职务) 经由信息(车次,车站名,到站时间,出站时间) (3)用SQL 语句定义并建立数据库表结构 车站信息表(station ),采用命令行创建方式。 字段名 代码 类型 约束 车站号 sno char (5) 主键 车站名 sname char (20) 列车信息表(train ),采用命令行创建方式。 字段名 代码 类型 约束 车次 tno char (5) 主键 始发站 sf char(20) Not null 终点站 zd char(20) Not null 出发时间 cf time 到达时间 dd time

数据库课程设计方案图书管理系统(5)

成绩:___________ 《数据库原理及应用》 课程设计 课题图书管理系统_________ 班级计算机06-7班________ 组长________ 李强_______________ 组员李强_______________

图书管理系统 1绪论 随着学校规模地不断扩大,图书数量地急剧增加,有关图书地信息量也在不断成倍增长?面对庞大地信息量,就需要有图书管理系统来提高图书管理工作地效率?通过这样地系统,我们可以做到信息地规范管理和快速查询,从而减少了管理方面地工作量.传统手工地图书管理,管理过程繁琐而复杂,执行效率低,并且易于出错. 通过这样地系统,我们可以做到信息地规范管理和快速查询,实现了图书管理地系统化、规范化和自动化,这样不仅减少了管理工作量,还提高了管理效率,降低了管理成本.随着科技地飞跃进步,对信息地管理也是越来越规范,越来越精确.不仅让信息合理规范地管理,同时也方便管理者方便地快速查询,提高了管理地效率.对图书信息进行图书入库、借阅登记、借阅查询、过期提示等这些日常业务地需要?高效性地通过系统地实用,能够改变旧地图书管理模式,使对图书地管理、借阅、查询更加方便有效.b5E2RGbCAP 2需求说明 2.2需求分析 随着学校规模地不断扩大,图书数量地急剧增加,有关图书地信息量也在不断成倍增长?面对庞大地信息量,就需要有图书管理系统来提高图书管理工作地效率通过这样地系统,我们可以做到信息地规范管理和快速查询,从而减少了管理方面地工作量.plEanqFDPw 传统手工地图书管理,管理过程繁琐而复杂,执行效率低,并且易于出错.通过这样地系统,我们可以做到信息地规范管理和快速查询,实现了图书管理地系统化、规范化和自动化,这样不仅减少了管理工作量,还提高了管理效率,降低了管理成本.DXDiTa9E3d 2.3功能需求 2.3.1功能划分

Sql_server数据库课程设计_图书馆管理系统

序言 (1) 一、图书馆管理系统E-R 图 (2) 二、图书馆管理系统功能实现示意图 (3) 三、图书馆管理系统功能图例 (4) 3.1 读者借阅图书 (4) 3.2 读者归还图书 (4) 3.3 读者续借图书 (5) 3.4 读者查询借阅图书情况 (5) 3.5 读者检索图书信息 (6) 四、图书馆管理系统附加功能 (7) 4.1 往学生表中插入列"系部",其值等于学号中代表系部的位的 值,再插入列"专业号",其值等于学号中代表专业的位的值 . 7 4.2 查询每个学生对书本的借阅数量 (9) 4.3 查询各个专业的学生借阅书本的数量 (11) 五、图书馆管理系统数据库、数据表源代码......... 错误!未定义书签。 5.1 图书馆管理系统"数据库"源代码 ................ 错误!未定义书签。 5.2 图书馆管理系统"数据表"源代码 ................ 错误!未定义书签。 六、图书馆管理系统存储过程源代码..................... 错误!未定义书签。 6.1 读者借阅图书存储过程................................ 错误!未定义书签。 6.2 读者还书存储过程........................................ 错误!未定义书签。 6.3读者续借图书存储过程................................. 错误!未定义书签。 6.4 读者查询借阅图书情况存储过程................ 错误!未定义书签。 6.5 读者检索的图书信息存储过程.................... 错误!未定义书签。 七、图书馆管理系统触发器源代码......................... 错误!未定义书签。 7.1 借书要求(书本没有库存,则无法进行借书操作)错误!未定 义书签。 7.2 借书要求(读者最多借阅量).................... 错误!未定义书签。 7.3 续借次数要求................................................ 错误!未定义书签。 7.4 读者还书信息插入RDeleted表................... 错误!未定义书签。

数据库课程设计详细计划

数据库应用实训 1.1教务信息管理需求分析 与教室管理相关的学校的组织机构有:学生、教师和教室。学校的所有日常工作都是围绕着这三大部分进行的。 一个学校下设若干学院,如信息学院、经济学院、法学院、财政金融学院等;一个学院下设若干专业,如信息学院下设三个专业:信息管理与信息系统、计算机科学与技术和数学与应用数学;一个专业有若干班级,如信息学院的2005级信息管理与信息系统专业下设两个班级:信管1班、信管2班;一个班级有若干同学,如信管1班有姜杉、刘天营、张蓝方、张娜、周潇等。 一个学校下设若干学院,如信息学院、经济学院、法学院、财政金融学院等;一个学院下设若干专业,如信息学院下设三个专业:信息管理与信息系统、计算机科学与技术和数学与应用数学;一个专业有若干教师,如信息学院信息管理与信息系统专业有陈禹、左美云。 一个学校下设若干学院,如信息学院、经济学院、法学院、财政金融学院等;一个学院下设若干专业,如信息学院下设三个专业:信息管理与信息系统、计算机科学与技术和数学与应用数学;一个专业开设有若干课程,如信息学院信息管理与信息系统专业开设有数据库系统概论、计算机网络等课程。 一个学校有若干教学楼,如求是楼、教学一楼、教学二楼、教学三楼等;一个教学楼有若干楼层,如教学一楼有一层、二层、三层、四层、五层、六层;一个楼层有若干教室,如一层有1101,1102,1103,1104等教室。 一个教师可以开设若干门课程,一门课程可以由多个老师来教授。一个教室在不同的时段可以上不同的课程。 1.2 实训内容 根据以上给出的相关需求分析完成以下操作: 1.2.1数据库概念设计 1.自行阅读相关资料,查找信息系统的需求分析、逻辑设计和物理设计这三个阶段主要完成的任务,如何完成(需要做哪些工作)。 2.查找ER图的概念,如何画ER图 3.画出相关分ER图 (1)画出学生和教师实体集ER图(参照数据表结构) (2)画出教师、院系和学生实体集ER图 (3)画出学生、教室和教师实体集ER图 4.画出教室管理系统的整体ER图(实体集之间关系参照给定的需求分析)

完整word版,数据库课程设计总结,推荐文档

数据库课程设计总结 数据库课程设计个人总结 姓名:邢王秀学号:201624101215 班级:09计本班 一个月的时间非常快就过去了,这一个月我不敢说自 己有多大的进步,获得了多少知识,但起码是了解了项目开 发的部分过程。虽说上过数据库相关的课程,但是没有亲身 经历过相关的设计工作细节。这次课程设计给我提供了一个 很好的机会。 通过这次课程设计发现这其中需要的很多知识我们没 有接触过,上网查找资料的时候发现我们以前所学到的仅仅 是皮毛,还有很多需要我们掌握的东西我们根本不知道。同 时也发现有很多已经学过的东西我们没有理解到位,不能灵 活运用于实际,不能很好的用来解决问题,这就需要自己不 断的大量的实践,通过不断的自学,不断地发现问题,思考 问题,进而解决问题。在这个过程中我们将深刻理解所学知 识,同时也可以学到不少很实用的东西。 这次的数据库课程设计,我们组负责的企业信息文档 管理系统的设计。这课题是自拟的。我们组实行的分工合作。我主要是负责数据库功能模块设计这部分。 从各种文档的阅读到需求分析、概要设计、数据库总 体设计、代码编写与调试,我们都准备了好长时间。组内分

工合作的整个过程,我亲身体验了一回系统的设计开发过 程,分工合作的好处。很多东西书上写的很清楚,貌似看着 也很简单,思路非常清晰。但真正需要自己想办法去设计一 个系统的时候才发现其中的难度。经常做到后面突 然就发现自己一开始的设计有问题,然后又回去翻工, 在各种反复中不断完善自己的想法。 我想有这样的问题不止我一个,事后想想是一开始着 手做的时候下手过于轻快,或者说是根本不了解自己要做的 这个系统是给谁用的。因为没有事先做过仔细的用户调查, 不知道整个业务的流程,也不知道用户需要什么功能就忙着 开发,这是作为设计开发人员需要特别警惕避免的,不然会 给后来的工作带来很大的麻烦,甚至可能会需要全盘推倒重 来。所以以后的课程设计要特别注意这一块的设计。 经过组内讨论,我们确定的课题是企业信息文档管理 系统。说实话,我对这个系统不是很了解。通过上网查找资 料、相关文献的阅读,我对该系统有了大体的了解。 在需求分析过程中,我们通过上网查资料,去图书馆 查阅相关资料,结合我们的生活经验,根据可行性研究的结 果和用户的需要,分析现有情况及问题。在一个月的时间里,不断地对程序及各模块进行修改、编译、调试、运行,其间 遇到很多问题,经过组内讨论。最终把它解决了。通过这次 课程设计,我对数据库的设计更加熟练了。

sql server数据库课程设计论文

宁夏大学物理电气信息学院综合性实验 实验报告 课程名称数据库应用 实验学期 2011 至 2012 学年第二学期学生所在系物理电气信息学院电气系 年级 09级专业班级电子信息工程(1)班 学生姓名学号 任课教师 实验成绩 任课教师制 2012 年 6 月 10 日

实验题目小型超市商品进销存管理系统 一、实验目的 1、掌握计算机管理信息系统设计的一般方法,主要包括系统分析、系统设计的组织和实施。 2、关系型数据库管理系统SQL语言编辑能力,并能独立完成一般小系统的结构设计、调试运行等工作。 3、提高学生实践使用SQL语言的能力,把所学知识运用到具体对象,并能求出解决方案的能力。 二、实验环境 本次实验主要选用数据库软件设计语言SQL Server 2008版本进行该系统设计。 三、实验内容 1、需求分析 本软件对超市的采购、销售、仓库、资金、帐务等实际运作流程均实现了动态的计算管理,使得超市经营者能够迅速的掌控该超市的实际运作状况、合理做出超市的战略决策。软件提供的商品入库流水账、商品销售流水账、商品台账、会计账及各种报表在提高超市工作效率、减少人为的差错、最大限度堵塞漏洞的基础上很好的减轻了采购、销售、仓库、财务等环节工作人员的劳动强度,全面体现了现代小中型企业管理理论所倡导的工作高效、环境轻松的氛围。并且本系统的开发,为超市的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面: 第一,本系统的运行可以代替人工进行许多繁杂的劳动; 第二,本系统的运行可以节省许多资源; 第三,本系统的运行可以大大的提高企业的工作效率; 第四,本系统可以使敏感文档更加安全,等等。 本产品的开发所需的设备在现有条件下,只需要少量的投入资金就可以实现。因此在经济上是可行的。 2、数据库设计 (1)系统要求实现:基本资料、进货管理、销售管理、库存管理、财务管理、自动编制记帐凭证等管理功能。系统总设计图如下所示:

数据库课程设计案例

炼钢厂作业管理子系统数据库设计 目录 1系统目标 (1) 1.1 背景介绍 (1) 1.2系统目标 (2) 2需求分析 (2) 2.1 组织结构分析 (2) 2.2业务流程分析 (3) 2.3数据流程分析 (8) 2.4数据字典 (13) 3概念结构设计 (14) 4 逻辑结构设计 (18) 5 物理结构设计 (18) 1系统目标 1.1背景介绍 钢铁行业是我国国民经济的支柱产业之一,为国民经济的持续发展作出了积极的贡献。近十年来,钢铁企业面临的市场竞争环境发生了巨大的改变,客户对钢材的需求呈现多品种、小批量特点。 这种局面下,钢铁企业对用户需求的预测越来越困难,为了减少库存,节约成本,最有效的运作策略是将传统以预测为主轴的推式系统(Push System)改为以需求计划(Demand Planning)为主轴的拉式系统(Pull System)。企业生产将减少预测性生产,而变成主要按订单生产;生产模式也由过去大批大量生产方式改变成多品种、小批量生产方式[10]。 “以信息化促进工业化”是制造业提高生产经营水平的必然选择。我国钢铁工业在长期的信息化应用过程中,逐步实现了基础自动化和过程自动化;在管理信息化方面也从初期简单的MIS(Manage Information System,管理信息系统)系统向ERP(Enterprise Resource Plan,企业信息资源组织与管理)/电子商务转变,信息化工作取得了一定的成绩。钢铁行业的信息化特点在于: 1)基础自动化和过程自动化基础良好; 2)钢铁行业成产流程长、环节多、工艺复杂,自动化技术应用十分广泛。 进入二十世纪90年代以来,钢铁工业自动化应用范围不断扩大,应用水平不断提高、数字化日趋明显。虽然不同钢铁企业的具体自动化程度有所不同,但从整个行业看,基础自动化、过程自动化在钢铁企业中得到广泛应用,并伴随自动化技术的发展而逐步加深; 同时应当看到,钢铁工业虽已基本实现了基础自动化和过程自动化,但这些自动化系统都是以单元生产设备为核心进行检测与控制的,生产设备之间形成诸多“自动化孤岛” [12]。这种“自动化孤岛”式的单机自动化缺乏信息资源的共享和生产过程的统一管理,难

SQLserver2008数据库课程设计范例——学生成绩管理系统报告

数据库技术与应用 课程设计说明书 题目:学生成绩管理系统 院系: 专业班级: 学号: 学生姓名: 指导教师: 2014年 12 月 22 日 一概述 1.1目的与要求

随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了学校学生成绩管理的工作量。该课程设计要求设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,学科基本信息,以及学生所学课程的考试成绩。要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。 1.2设计环境 ① Microsoft SQL Server 2000 ② Microsoft Visual C++ 6.0 二需求分析 2.1 系统功能要求设计 此系统实现如下系统功能: (1)使得学生的成绩管理工作更加清晰、条理化、自动化。 (2)通过用户名和密码登录系统,查询课程基本资料,学生所选课程成绩,修改用户密码等功能。容易地完成学生信息的查询操作。 (3) 设计人机友好界面,功能安排合理,操作使用方便,并且进一步考虑系统在安全性,完 整性,并发控制,备份和恢复等方面的功能要求。 2.2 系统模块设计 成绩管理系统大体可以分成二大模块如,一是学生的基本信息模块,里面应该包含学生的各方面的基本信息;再者便是课程管理模块,在该模块中应该包含有对学生成绩信息的查询和处理,如平均成绩、最好成绩、最差成绩以及不及格学生的统计等功能模块;再其次还有教师、课程等相关信息的模块;可以得到系统流程图: 登陆失败 用户 验证

数据库课程设计(完整版)

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日

目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7 1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20

引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

数据库课程设计报告案例2015

《数据库原理及应用课程设计》 系统开发报告 学号: 姓名: 题目:医院门诊管理系统 指导教师: 提交时间:2015年12月 计算机工程系

目录 目录 1绪论 (1) 2 医院门诊管理系统概述 (1) 2.1现状分析 (1) 2.2系统目标 (1) 2.3系统特点 (2) 3 医院门诊管理系统数据库设计 (2) 3.1需求分析 (2) 3.2数据库物理结构分析 (2) 3.2.1 设计策略 (3) 3.2.2 系统总体结构图 (3) 图2-1 系统总体结构图 (4) 3.2.3系统详细设计说明 (4) 3.3数据库概念结构设计 (5) 3.4数据库逻辑结构设计 (6) 3.4.1 实体 (6) 3.4.2 完整性约束................................................................................... 错误!未定义书签。 4 医院门诊管理系统数据库功能模块的创建 (7) 4.1 建立病人表,医生表,科室表 (7) 4.2 数据库的连接 (9) 4.3系统功能模块设置 (10) 5 总结 (11)

1绪论 在现代信息技术的基础上,随着人类对各种工程研究成果的逐步推广应用,不久的将来,医疗卫生领域对信息技术的依赖程度将远远超过目前电信、银行、航空业。医院信息化必将得到充分的重视和发展,而医院门诊收费系统就是医院信息化中的重要的一部分。随着计算机性能不断提高,价格不断下降,计算机已在医院医疗、教学、科研、管理等方面得到越来越广泛的应用。计算机化的医院信息系统已成为现代化医院运营过程中必不可少的基础设施与技术支撑环境。 计算机信息管理技术的应用,除了能在相当大的程度上代替人工作业,从而减少人员工作量,减轻工作负担,减少工作中因人为原因而产生的错误从而避免不必要的损失外,更重要的是能建立准确畅通、简便的信息流通渠道,为工作提供所需要的准确、及时的信息以帮助做出正确而及时的选择与决定,从而给采用这门技术的单位带来了巨大的可见或不可见的利益与效益。 2 医院门诊管理系统概述 2.1现状分析 医院的门诊每天都会接待大量的患者,使用医院门诊收费系统可以大大地提高工作效率,减少工作中可能出现的错误,是提高医院办公自动化水平的重要手段之一。其开发主要包括后台数据库的建立和维护以及前端应用程序界面开发两个方面。对于后台数据库的建立和维护要求建立起数据的一致性和完整性强、数据安全性好、符合3NF范式库。而前端应用程序的开发则要求应用程序能提供强大的数据操纵功能,界面友好、使 用简单方便等特点。在中国软件行业日益进步的今天,如何利用这些资源来帮助减轻医生和病人的负担,让医生们利用更多的时间去从事其他的事情。因而设计一个好的门诊收费信息系统,能提高医院的社会效益与经济效益。论文旨在论述医院门诊收费系统的设计与开发。 2.2系统目标 通过医院门诊收费系统的设计,熟练掌握Visual C++、SQL Server 2000等工具软件,系统地掌握需求分析、数据库设计、编码实现、测试等软件开发的流程,提高自身分析问题、解决问题的能力。

数据库课程设计 教务管理系统

洛阳理工学院 课程设计报告 课程名称数据库课程设计 设计题目教务管理系统 专业计算机科学与技术 班级B120505 学号 姓名 完成日期2015-1-4

课程设计任务书 设计题目:教务管理系统 设计内容与要求: 设计教务管理系统,类似于我校教务管理系统,有四类用户:教务员、学生、教师、管理员教务员可以输入学生、教师、班级、课程信息。一个班级只属于一个专业,一个学生只属于一个班级。教务员负责输入每个专业、每个班级需要学习哪些课程,指定课程的任课教师。教师可以查看学习该课程的学生名单。课程结束后,教师可以录入课程成绩。一个教师可以教授多个班的多门课程,每门课由多位老师讲授。课程分两类,必修课和选修课。系统要记录每个学生学习各门必修课的成绩,还要记录学生选修了哪些选修课以及课程成绩。学生可以查看自己各门课程的成绩。学生还可以进行评教,给老师打分。管理员可以输入教室信息,并结合班级、课程、教室信息实现自动排课。 要求: 1.完成本系统的需求分析,写出功能需求和数据需求描述; 2.完成数据库的概念结构设计、逻辑结构设计、物理结构设计; 3.完成本系统的部分功能模块的程序界面设计。 指导教师:高春玲 2014 年12 月28 日 课程设计评语 成绩: 指导教师:_______________ 年月日

目录 一、概述 2 1.1、本设计的目的与意义 2 1.2、数据库开发工具和应用程序开发工具 2 二、需求分析 2 2.1功能需求 2 2.2数据需求 2 三、概念结构设计 2 3.1、E-R模型设计 2 3.2、总体E-R图描述 4 四、逻辑结构设计 4 4.1、关系模型 4 4.2、关系模式的优化与说明 4 五、物理结构设计 5 5.1建立数据库 5 5.2表与表结构 5 六、应用程序设计 6 6.1、系统总体结构 6 6.2、系统界面与源代码7 6.2.1、界面7 6.2.2、功能描述9 6.2.3、程序源代码9 七、设计总结23 八、体会与收获24 九、参考文献24

大工秋《SQL数据库课程设计》答案

网络教育学院《SQL数据库课程设计》 题目:学生信息管理系统的设计与实现学习中心:奥鹏学习中心 专业: 年级:年 /秋季 学号: 学生: 指导教师:龙珠

1 项目概况 1.1 SQL 数据库简介 Microsoft SQL Server 2000 是Microsoft 公司继SQL Server 6.5和SQL Server 7.0以后,在新千年推出的又一改进的新版关系型数据管理系统。它能使用户快捷地管理数据库和开发应用程序。SQL Server 2000 使用了了先进的数据库结构,与Windows DNA紧密集成,具有强大的Web 功能,它可以利用高端硬件平台以及最新网络和存储技术,可以为最大的Web站点和企业应用提供优良的扩展性和可靠性,使用户能够在Internet 领域快速建立服务系统,为占领市场赢得宝贵的时间。同时,SQL Server 2000 还为用户提供了重要的安全性功能的增强,为用户的数据安全提供了可靠的保证。另外,SQL Server 2000还为用户提供了重要的安全性功能的增强,为用户的数据安全提供了可靠的保证。另外,SQL Server 2000 在数据库服务器自动管理技术方面处于数据库领域的领先地位,它可以使用户免去繁琐复杂的工作量,从而有精力处理更重要的问题,使用系统在商业战略上占得先机。 SQL Server 2000 的特性Microsoft® SQL Server? 2000 的特性包括: 1、Internet 集成。SQL Server 2000 数据库引擎提供完整的XML 支持。它还具有构成最大的Web 站点的数据存储组件所需的可用性、可伸缩性和安全功能。 2、可伸缩性和可用性。同一个数据库引擎可以在不同的平台上使用,从运行 Microsoft Windows® 98 的便携式电脑到运行 Microsoft Windows 2000 数据中心版的大型多处理器服务器。 3、业级数据库功能。SQL Server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上

数据库课程设计报告户籍管理系统完整版

. 中北大学 数据库课程设计 说明书 班 级: 学号: 姓 名: 学 专 方 向: 指导教师: 企业信息化软件开发与应用

成绩: 2014 年 6 月 1.需求分析 随着城市人口规模的扩大和公安部门对城市及农村人口管理工作规性的逐渐增强,户籍管理工作的业务量急剧增大。传统的手工方法,存在效率低、易出错等缺点,已经难以满足当前户籍管理工作的要求。 因此,结合当前日益成熟的计算机相关技术,开发一个专门针对户籍管理的系统已经非常必要了。户籍管理信息系统是公安部门不可缺少的一部分,更是适应现代户籍制度并推动户籍管理走向科学化、规化、自动化的必要条件。该管理系统能够为用户提供充足的信息和快捷的查询手段,以帮助用户了解户籍工作的情况。它大大改善了公安部门管理、查询户籍的基础工作环境,在一定程度上反映出户籍管理的现代化管理模式。因此人口户籍管理信息系统的开发迫在眉睫。 该课程设计就户籍的迁入、迁出、注销,身份证的办理、领取做了简单地设计。 1.1项目开发背景 近年来,随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,随着人口的不断增长,户籍管理部门也应得到良好的发展,利用现代化管理工具使其变成半自动化必定会提高其工作效率。 1.2项目开发目的 户籍管理系统是针对户籍管理部门而开发的,为其改变人口信息仍需要手动处理和查询,个人的信息在处理中丢失或者不明确等现象而设计的。通过这个户籍管理系统,可以让

户籍管理部门提高工作质量和效率,从而达到更快捷、更准确、更方便的目的。 1.3需求分析阶段的目标与任务 1.3.1划分功能模块 在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求化分系统功能模块,这样就把一个大的系统分解为几个小的系统。经过调查分析,户籍信息管理系统应具有以下功能: (1)对户籍的变动进行处理。任何管理部门的户籍信息不会是一成不变的,总是在不断的变化:有迁出、有迁入、户口合并,也有因故注销。因此,设计系统时应考虑到这些情况,实现户籍的日常管理工作。 (2)对所管辖户籍所分离出的个人信息的计算、统计。找到符合条件的个人,进行核对无误后,生成档案文件进行转存,保证数据的安全完整,以此来实现身份证的办理与领取。 (3)查询统计功能。要求即可以单项查询,比如查看某个人工的户口情况等;也可以多项查询,比如同一户口特征的户口浏览,并按照所需的要求进行数据的转存。 1.3.2处理对象 户籍信息:户籍号,户主姓名 户籍成员信息:姓名,户主关系,性别,民族,籍贯,住址,身份证号,文化程度,职业,户籍号,迁入时间,迁出时间,迁入地,迁出地 身份证:姓名,身份证号,性别,民族,地址

数据库课程设计(学生宿舍管理系统设计方案)

攀枝花学院 学生课程设计(论文) 题目:学生宿舍管理系统 学生姓名: 学号: 所在院(系): 专业:计算机科学与技术 班级: 指导教师:职称: 2014年 6月19日 攀枝花学院教务处制

攀枝花学院本科学生课程设计任务书

注:任务书由指导教师填写。

学生宿舍管理系统 目录 摘要 (1) 1.学生宿舍管理系统概述 (2) 1.1系统的任务 (2) 1.2系统的目标 (2) 2.系统需求分析 (3) 2.1需求分析阶段的目标 (3) 2.2需求分析阶段的任务 (3) 2.3系统功能图 (4) 3.数据库分析设计 (5) 3.1系统E-R图 (5) 3.2数据字典 (6) 3.3将E-R图转化为关系模型 (6) 3.4数据库建立和结构 (7) 4.功能模块设计 (11) 4.1用户帐号模块 (11) 4.2宿舍管理模块 (12) 4.3信息查询模块 (13) 4.4数据统计 (14) 5.I/O和交互界面设计 (15) 5.1登陆界面 (15) 5.2主页面 (16) 5.3入住管理 (16) 5.4登记管理 (17) 5.5状态查询 (18) 5.6信息查询 (19) 5.7贵重物品 (20) 6.编码方案 (21) 7.总结 (21)

摘要 管理信息系统在现代社会已深入到各行各业,由于计算机技术的迅速发展和普及,信息管理系统MIS事实上已成为计算机管理信息系统, 大学生宿舍管理系统就是一个典型的管理 信息系统,它可以让宿舍管理工作变的更轻松。本毕业设计的任务就是设计一个大学生宿舍管理系统。其开发过程主要包括前端应用程序的开发和后台数据库的建立和维护两个方面。主要任务就是建立基本数据,后台程序主要负责的都是管理上的功能。 经过分析,本系统运用了Microsoft SQL Server2008为后台数据库,以Visual https://www.360docs.net/doc/8314393241.html, 2010 为前端开发工具,系统实现了系统维护、宿舍管理、学生管理、宿舍分配、信息查询等必需的功能,其操作简单,界面友好,运行比较稳定,适用于大学院校大学生宿舍管理。 关键字:Visual Studio C# 2010;SQL Server 2008;宿舍管理;系统登录;系统管理

相关文档
最新文档