实验1《数据库与表的基本操作》

时间:2022-09-12 21:08:47

实验学时:    2       

每组人数:    1       

实验类型:    1       (1:基础性  2:综合性    3:设计性  4:研究性)

实验要求:    1       (1:必修    2:选修      3:其它)

实验类别:    3       (1:基础    2:专业基础  3:专业    4:其它)

一、实验目的

1.熟练掌握SQL Server的使用方法。

2. 熟练掌握使用SQL Server 200X的对象资源管理器以及SQL 的DDL完成数据库的创建、删除和连接方法;数据表的建立、删除;表结构的修改。

3. 加深对表的实体完整性、参照完整性和用户自定义完整性的理解。

二、实验内容

在以下实验中,使用学生-课程数据库,它描述了学生的基本信息、课程的基本信息及学生选修课程的信息。用对象资源管理器(企业管理器)与SQL语句分别完成。

(1)  创建学生-课程数据库,数据文件名为student_data、大小10M,日志文件名为student_log、大小5M的新数据库,该数据库名为student_xxxx。xxxx表示班级学号。1班12号,数据库名为student_0112。

 EG:

T-SQL建立数据库:

CREATE DATABASE csu_tcg 

ON  PRIMARY 

( NAME = '123', 

FILENAME ='e:\MSSQL\DATA\123.mdf' , --文件夹要先建好

SIZE = 3072KB , --单位可以MK

FILEGROWTH = 1024KB )

 LOG ON 

( NAME = N'123_log', 

FILENAME = N'c:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\123_log.ldf' ,

 SIZE = 1MB , 

FILEGROWTH = 10%)

GO                 /*go为事务提交一段SQL脚本(是隐形事务)的结束标志符。SQL   Server   应用程序可将多条   Transact-SQL   语句作为一个批处理发给   SQL   Server去执行。在此批处理中的语句编译成一个执行计划。程序员在SQL   Server 实用工具中执行特定语句,或生成Transact-SQL 语句脚本在   SQL   Server   实用工具中运行,用   GO   来标识批处理的结束*/


(2)  创建学生关系表S :

学号

姓名

性别

年龄

所在系

Sno

Sname

Ssex

Sage

sdept

create table S

(Sno nchar(10) not null,

 Sname nchar(10) not null,

 Ssex nchar(10) not null,

 Sage nchar(10) not null,

 sdept nchar(10) not null

)


(3)  创建课程关系表C :

 课程号

课程名

先行课

学分

Cno

Cname

Cpno

ccredit

(4)  创建学生-课程表SC :

学号

课程号

成绩

Sno

Cno

grade

(5)  将以上创建表S、C、SC的SQL命令以 .SQL文件的形式保存在磁盘上。在表中加入至少4个元组,第一个为本人信息。

insert into S values(‘姓名’,‘学号’',‘性别’,‘');

insert into S values('');   这里同上

insert into S values('');  同上

insert into S values('');  同上

insert into S values(''); 同上

insert into C values('01','编译原理','离散数学','3');

insert into C values('02','毛概','马克思','5');

insert into C values('03','数据库系统','汇编语言','3');

insert into C values('04','概率论','微积分','4');

insert into SC values('3','01','90');

insert into SC values('3','02','95');

insert into SC values('3','03','80');

insert into SC values('3','04','85');

insert into SC values('9','01','80');

insert into SC values('09','02','60');

insert into SC values('09','03','70');

insert into SC values('09','04','100');

insert into SC values('17','01','80');

insert into SC values('17','02','78');

insert into SC values('17','03','50');

insert into SC values('17','04','98');

insert into SC values('10','01','55');

insert into SC values(10','02','88');

insert into SC values('10','03','99');

insert into SC values('10','04','80');

insert into SC values('00','01','99');

insert into SC values('00','02','88');

insert into SC values('00','03','45');

insert into SC values('00','04','77');


(6)  在表S上增加“出生日期”属性列。

(7)  删除表S的“年龄” 属性列。

(10) 删除表SC,利用磁盘上保存的.SQL文件重新创建表SC。

use student alter table S drop column Sage;


(11)备份数据库,再还原。

backup database "student"

to disk = 'C:\Users\backupDB.db' with init


use master

restore database "student_0101" from disk = 'C:\Users\\backupDB.db' 

with replace 


三、实验要求:

1.预习数据库与表的建立方法; 

2.预习备份数据库,还原数据库的方法;

3. 预习表结构的修改方法。

四、实验步骤

1.熟悉有关SQL SERVER的图形界面工作环境(参见后附录2 SQL Server 2005的使用)。

2.创建数据库或连接已建立的数据库。

3.在当前数据库上建立新表。

4.定义表的结构。

(1)用SQL命令形式

(2)用SQL SERVER提供的对象资源管理器(企业管理器)以交互方式进行

5. 将以上表的定义以 .SQL文件的形式保存在磁盘上。

6. 修改表的结构。

7. 删除表的定义。

五、实验报告

1.完成本项目实验后,学生应提交实验报告。

2.实验报告格式与要求见附录1。