一:什么是DBMS?
DBMS是(Database Management System)首字母缩写汉语意思指数据库管理系统
二:实际问题
1、创建数据库
(1)创建一个学生课程数据库,数据库名Student_DB,包含主数据文件,日志文件和辅助数据文件Student_DB1,所有文件路径均存放在F:\My_database\ 下。其中,数据库主数据文件初始大小为5MB,最大大小为30MB,数据库自动增长,增长方式是按5%比例增长。日志文件初始为3MB,最大可增长到10MB,按2MB增长。辅助数据文件Student_DB1,初始大小为3MB,按2MB自动增长,不限制最大值。
(2)在Student_DB数据库中,用SSMS方式修改辅助数据文件Student_DB1的增长方式为1%,最大增长到10MB。
2、数据表的设计
用SSMS方式为数据库Student_DB添加如下3个表(即是教材P79页的图3.2中对应的表):
△学生表:Student(Sno, Sname, Ssex, Sage, Sdept)。
△课程表:Course(Cno, Cname, Cpno, Ccredit);
△ 学生选课表:SC(Sno, Cno, Grade)
学生表的逻辑设计:
课程表的逻辑设计:
选课表的逻辑设计:
说明:选课表的主码:(Sno, Cno)
3、用SSMS方式进行数据表记录的“增删改”操作
参照教材P79页的图3.2为各个表添加相应的元组。并做如下的操作:
(1) 删除选修1号课程的学生选修课的记录。
(2) 修改刘晨的信息系统课程分数为89。
(3) 增加王敏同学选修数据库课程的信息,得分为90分。
(4) 为Student表增加列Sbirthday,数据类型为datetime型,初始为NULL。
(5) 修改SC表的成绩列,将其数据类型改为INT。
4、数据库备份
磁盘备份:直接将Student_DB数据库备份到F盘backup下,备份数据库名为Student_DB.bak。
5、数据库的删除
将数据库Student_DB用SSMS方式或T-SQL方式进行删除。
6、还原数据库
用所得到的备份数据库对数据库进行还原。
7、分离附加数据库
对Student_DB进行分离并附加到当前的SQL Server服务器中。
三:以上问题详细解答
1、创建数据库
(1)创建一个学生课程数据库,数据库名Student_DB,包含主数据文件,日志文件和辅助数据文件Student_DB1,所有文件路径均存放在F:\My_database\ 下。其中,数据库主数据文件初始大小为5MB,最大大小为30MB,数据库自动增长,增长方式是按5%比例增长。日志文件初始为3MB,最大可增长到10MB,按2MB增长。辅助数据文件Student_DB1,初始大小为3MB,按2MB自动增长,不限制最大值。
解答:
①先在自己电脑硬盘F分区新建以下文件夹My_database,backup分别用来存放数据文件以及后续用到的备份文件。
②启动sql server2008并连接进入主界面.在这里我们分别介绍两种建库方法分别为SSMS方式和T—SQL方式。
2.1、SSMS方式
右击数据库弹出新建数据库选项卡在数据库名称中写入:Student_DB,根据题目要求添加主文件,日志文件并进行相关设置。进行完以上操作点击确定,在右击数据库刷新,展开数据库则会发现多了一个Student_DB数据库,建库成功。
2.2T—SQL方式
点击新建查询,输入以下代码,选中运行(F5)即可,在右击数据库刷新,展开数据库则会发现多了一个Student_DB数据库,建库成功。
参考代码:
CREATE DATABASE Student_DB
ON
( NAME='Student_DB_DATA',--定义主数据文件名字
FILENAME='F:\My_database\Student_DB_DATA.mdf',--文件存放位置路径,注意:此路径一定要事先存在
SIZE=5mb,--定义主数据文件的初始大小
MAXSIZE=30mb,--定义住数据文件最大容量
FILEGROWTH=5%--增长方式5%增长
)
,(
NAME='Student_DB1',
FILENAME='F:\My_database\SStudent_DB1.ndf',
SIZE=3mb,
FILEGROWTH=2mb
)
LOG ON
( NAME='Student_DB_LOG',
FILENAME='F:\My_database\Student_DB_LOG.ldf',
SIZE=3mb,
MAXSIZE=10mb,
FILEGROWTH=2mb
)
(2)在Student_DB数据库中,用SSMS方式修改辅助数据文件Student_DB1的增长方式为1%,最大增长到10MB。
解答:
右击Student_DB数据库,点击属性,系统将自动弹出数据库属性页面,点击文件进行增长方式以及最大值配置,点击确定即可。
2、数据表的设计
2.1用SSMS方式为数据库Student_DB添加如下3个表,(即是教材P79页的图3.2中对应的表):
解答:
△学生表:Student(Sno, Sname, Ssex, Sage, Sdept)。
△课程表:Course(Cno, Cname, Cpno, Ccredit);
课程表Cpno为外键参考表为Course表参照列为Cno
△ 学生选课表:SC(Sno, Cno, Grade)
选课表Sno,为外键,被参照表为Student,Cno为外键被参照表为Course.
2.2用T-SQL方式为数据库Student_DB添加如下3个表,(即是教材P79页的图3.2中对应的表):
△学生表:Student(Sno, Sname, Ssex, Sage, Sdept)。
Create TABLE Student(
Sno CHAR(9) PRIMARY KEY NOT NULL,
Sname CHAR(20)UNIQUE NOT NULL,
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20)
)
△课程表:Course(Cno, Cname, Cpno, Ccredit);
create table Course(
Cno CHAR(4) PRIMARY KEY NOT UNLL,
Cname char(40) NOT NULL,
Cpno CHAR(4),
Ccredit SMALLINT
)
△ 学生选课表:SC(Sno, Cno, Grade)
CREATE TABLE SC(
Sno CHAR(10) NOT NULL,
Cno CHAR(4) NOT NULL,
Grade SMALLINT
)
3、用SSMS方式进行数据表记录的“增删改”操作
参照教材P79页的图3.2为各个表添加相应的元组。并做如下的操作:
解答:
3.1 SSMS方式添加元组
3.2 T-SQL方式添加元组
向学生表添加信息
insert into Student(Sno,Sname,Ssex,Sage,Sdept)values('201215121','李勇','男',20,'CS');
insert into Student(Sno,Sname,Ssex,Sage,Sdept)values('201215122','刘敏','女',19,'CS');
insert into Student(Sno,Sname,Ssex,Sage,Sdept)values('201215123','王敏','女',18,'MA');
insert into Student(Sno,Sname,Ssex,Sage,Sdept)values('201215125','张立','男',19,'IS');
向课程表添加信息
INSERT INTO Course(Cno,Cname,Cpno,Ccredit)values(1,'数据库',5,4);
INSERT INTO Course(Cno,Cname,Cpno,Ccredit)values(2,'数学', null,2);
INSERT INTO Course(Cno,Cname,Cpno,Ccredit)values(3,'信息系统',1 ,4);
INSERT INTO Course(Cno,Cname,Cpno,Ccredit)values(4,'操作系统',6 ,3);
INSERT INTO Course(Cno,Cname,Cpno,Ccredit)values(5,'数据结构 ',7 ,4);
INSERT INTO Course(Cno,Cname,Cpno,Ccredit)values(6,'数据处理 ',null ,2);
INSERT INTO Course(Cno,Cname,Cpno,Ccredit)values(7,'PASCAL语言 ',6 ,4);
向选课表添加信息
自己照着上面的例子自己脑补吧
(1) 删除选修1号课程的学生选修课的记录。
解答:
(2) 修改刘晨的信息系统课程分数为89。
解答:
(3) 增加王敏同学选修数据库课程的信息,得分为90分。
解答:
(4) 为Student表增加列Sbirthday,数据类型为datetime型,初始为NULL。
解答:
(5) 修改SC表的成绩列,将其数据类型改为INT。
解答:
4、数据库备份
磁盘备份:直接将Student_DB数据库备份到F盘backup下,备份数据库名为Student_DB.bak。
解答:
5、数据库的删除
将数据库Student_DB用SSMS方式或T-SQL方式进行删除。
解答:
6、还原数据库
用所得到的备份数据库对数据库进行还原。
解答:
7、分离附加数据库
对Student_DB进行分离并附加到当前的SQL Server服务器中。
解答:
时间紧促,部分地方不严谨,进攻学习参考,不足之处还望指出,共同努力共同加油。
Nothing is impossible!!!