设计和创建学生成绩管理系统数据库

Download Report

Transcript 设计和创建学生成绩管理系统数据库

《网络数据库技术》
—— 省级精品课程
http://www1.qzct.net/yjj
学习情境2
设计和创建学生成绩管理系统数据库
主讲:余建军
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
技能目标:

能够使用SQL SERVER创建数据库
知识目标:

了解数据库的概念
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
课程任务:创建学生成绩管理系统
(1)教师:成绩录入---教师录入之前要求输入教师号
和口令;教师只能录入自己所上课程的成绩;录
入某课程成绩之前要输入课程号及课程口令;录
入期间可在未完成时先保存,之后再录入,但一
旦提交就不能修改,只能浏览;成绩录入要提供正
确性验证(百分制:0-100;等级制:A、B、C 、
D 、 E)。
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
学生成绩管理系统
(2)学生:在输入学号和口令后,能且仅能查询自己成绩。
(3)教学秘书:身份验证后,能查询本二级学院所有班级所有
学生的成绩;当教师成绩录入完成后,打印成绩单给老师
(含班级平均分、最好分、最低分、及格率);可以以学
期为单位打印学生成绩单;以班为单位输出学生成绩总评
及排名;《不能修改成绩》
(4)管理员:身份验证后,修改成绩(教师申请—主管教学副
院长签字---管理员修改)
安全性、完整性、反应足够快
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
任务1:创建学生成绩管理系统的数据库
(Student)
1. 使用SQL-EM(企业管理器)
2. 使用SQL语句
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
使用SQL-EM
SQL-EM→数据库→右键→新建数据库
创建“学生成绩管理系统”数据库student
数据文件:存放数据,.mdf。
事务日志文件:存放对数据库的操作,.ldf。
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
使用SQL语句
CREATE DATABASE student
ON PRIMARY
(NAME=student,
FILENAME='d:\example\student.mdf ',
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=2MB)
LOG ON
(NAME=student_log,
FILENAME='d:\example\student_log.ldf ',
SIZE=5MB,
MAXSIZE=30MB,
FILEGROWTH=1MB)
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【相关知识1.1】结构化查询语言
SQL(结构化查询语言),RDBMS的国际标准语言。
在SQL Server中即为Transact–SQL,简称T–SQL,包含:
数据控制(DCL):安全管理。GRANY、DENY、ROVOKE
数据定义(DDL):创建数据库及对象。CREATE、ALTER、DROP
数据操纵(DML):操作数据库中的对象。
SELECT、INSERT、DELETE、UPDATE
附加语言元素:变量、运算符、函数、流程控制等。
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【相关知识1.2】语句格式:
CREATE DATABASE database_name
[ ON
[ < filespec > [ ,...n ] ]
[ , < filegroup > [ ,...n ] ]
]
[ LOG ON { < filespec > [ ,...n ] } ]
[ COLLATE collation_name ]
[ FOR LOAD | FOR ATTACH ]
< filespec > ::=
[ PRIMARY ]
( [ NAME = logical_file_name , ]
FILENAME = 'os_file_name'
[ , SIZE = size ]
[ , MAXSIZE = { max_size | UNLIMITED } ]
[ , FILEGROWTH = growth_increment ] ) [ ,...n ]
< filegroup > ::=
FILEGROUP filegroup_name < filespec > [ ,...n ]
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展1】修改数据库
1. 数据库管理员要随时监控数据库空间使用情况,并做
好相应处理。如剩余空间不多,数据库占用空间过大
(一个运行周期后,如学生成绩管理系统—三年)
2.工具:sp_spaceused / SP_helpdb student/企业管理器
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展1】修改数据库
1. 使用SQL-EM
2. 使用SQL语句
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展1】修改数据库-使用SQL-EM
SQL-EM→数据库→右键→属性
实例 修改数据库student
注意
数据库名、数据文件名、事务日志文件名不能修改
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展1】修改数据库-使用SQL语句
增加一个次数据文件student_1.ndf。
ALTER DATABASE student
ADD FILE
(NAME=student_1,
FILENAME=‘e:\example\student_1.ndf ',
SIZE=5MB,
MAXSIZE=20MB,
FILEGROWTH=20%)
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展1】修改数据库-使用SQL语句
数据库student的主数据文件大小调整为6MB。
ALTER DATABASE student
MODIFY FILE
(NAME=student,
SIZE=6MB)
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展1】修改数据库语句格式
ALTER DATABASE database
{ ADD FILE < filespec > [ ,...n ] [ TO FILEGROUP filegroup_name ]
| ADD LOG FILE < filespec > [ ,...n ]
| REMOVE FILE logical_file_name
| ADD FILEGROUP filegroup_name
| REMOVE FILEGROUP filegroup_name
| MODIFY FILE < filespec >
| MODIFY NAME = new_dbname
| MODIFY FILEGROUP filegroup_name {filegroup_property |
NAME = new_filegroup_name }
}
< filespec > ::=
( NAME = logical_file_name
[ , NEWNAME = new_logical_name ]
[ , FILENAME = 'os_file_name' ]
[ , SIZE = size ]
[ , MAXSIZE = { max_size | UNLIMITED } ]
[ , FILEGROWTH = growth_increment ] )
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展2】删除数据库
1. 使用SQL-EM
2. 使用SQL语句
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展2】删除数据库-使用SQL-EM
SQL-EM→数据库→右键→删除
注意
除非备份,否则删除不能恢复
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展2】删除数据库-使用SQL语句
语句格式
DROP DATABASE <数据库名>[,…n]
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展3】重新命名数据库
语句格式:
sp_renamedb '<旧数据库名>', '<新数据库名>'
企业管理器:改名及修改属性
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【技能拓展4】生成数据库脚本文件
数据库脚本文件:以文件方式保存的数据库结构的
SQL语句,扩展名.sql。
SQL-EM→数据库→右键→所有任务→生成SQL脚本
实例 生成数据库student对应脚本文件
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【相关知识1.3】数据库构成
SQL Server 2000的核心:数据库
SQL Server 2000安装,包含有数据库
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【相关知识1.4】 数据库类型
master: 系统级信息,最重要
系统数据库
数据库
model: 用户数据库的模板
msdb:
调度数据库,主要用于计划警报和作业
tempdb: 临时信息
用户数据库: 自动复制model
样本数据库:pubs ,Northwind
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【相关知识1.5】数据库对象
表(Table): 存放数据
关系图(Diagram):
表间关系
视图(View): 虚拟表,只有结构没有数据
数据库对象
索引(Index): 数据排序,提高查询速度
存储过程(Stored Procedure): 程序,减轻网络流量
触发器(Trigger): 以表动作为前提的程序
衢州职业技术学院
网络数据库技术
http://172.16.38.204/index.asp
【相关知识1.6】 数据库文件和文件组
主数据文件: .mdf 1个
数据文件
数据库文件
次数据文件: .ndf
事务日志文件: .ldf
0~n个
1~n个
文件组:实现数据库文件的分组管理(容量与读写效率)。
主文件组(Primary)(含主数据文件)、用户自定义文件组、默认文件组
衢州职业技术学院