《数据库原理》实验1

  • 格式:docx
  • 大小:146.59 KB
  • 文档页数:11

《数据库原理》实验1

实验一:管理SQL Server数据库

一、实验目的

1.了解数据库常用对象及组成;

2.熟悉SQL的基本概念和特点;

3.熟练掌握T-SQL 语句中的数据库定义的使用方法;

4.熟悉在SQL Server 2008中创建及编辑数据库;

5.熟练掌握SQL的数据定义子句的使用方法。

二、实验环境

已安装SQL Server 2008企业版的计算机;

具有局域网网络环境,有固定ip地址;

三、实验学时

2学时

四、实验要求

1.熟练使用Management Stuio界面方式创建及编辑数据库;

2.熟练使用T-SQL 语句创建及编辑数据库;

3.完成实验报告。

五、实验准备知识(也可参考SQL Server联机丛书)

1.数据库相关属性

1)逻辑名称:数据文件和日志文件名称

2)文件类型:数据文件及日志文件

3)文件组:各个数据文件所属的文件组名称

4)初始大小:文件的最原始大小

5)自动增长:文件按指定的大小增长,也可限制到最大容量。

6)路径:存放文件的物理目录

7)文件名:显示数据文件和日志文件的物理名称

2.默认数据库属性

1)主数据文件为xx.mdf ,日志文件为xx_log.ldf;

2)只有一个文件组Primary; 3)主数据文件初始大小为3MB,增量为1MB;

4)日志文件初始大小为1MB,增量为10%;

5)主数据文件和日志文件都存放在C:\Program Files\Microsoft

SQL

Server\MSSQL.2\MSSQL\DATA目录下,文件分别为xx.mdf 和xx_log.ldf 。

3.使用界面创建数据库步骤

【SQL Server Management Studio】→【对象资源管理器】→【数据库】→【新建数据库】→设置数据库相关属性(名称、大小、位置)

4.启动SQL Server 2005查询分析器

【SQL Server Management Studio】→【新建查询】

5.命令方式下创建数据库

CREATE DATABASE database_name

[ON [PRIMARY] [ [,…n]] [, [,…n]] ] [LOG ON { [,…n]}]

[FOR LOAD|FOR ATTACH]

::=([NAME=logical_file_name,]

FILENAME=‘os_file_name’

[,SIZE=size]

[,MAXSIZE={max_size|UNLIMITED}]

[,FILEGROWTH=growth_increment] ) [,…n]

例如:

CREATE DATABASE STUDENT2

ON PRIMARY

(NAME = 'STUDENT2_DATA', /*数据文件逻辑文件名

FILENAME = ‘e:\ DATA\STUDENT2_DATA.MDF' , /*数据文件物理文件名SIZE = 5MB, /*初始大小

MAXSIZE = 20MB, /*最大值

FILEGROWTH = 20%)/*文件增长百分比

LOG ON /*日志文件 (NAME ='STUDENT2_LOG', /*日志文件逻辑文件名

FILENAME = ‘e:\DATA\ STUDENT2_LOG. LDF', /*日志文件逻辑文件名

SIZE = 5MB, /*以下为日志文件属性

MAXSIZE = 10MB,

FILEGROWTH = 2MB)

六、实验内容及步骤

1、假设SQL Server服务已启动,并以Administrator身份登录计算机(文件名称自定);请分别使用Management界面方式和T-SQL语句实现以下操作:

1)在本地磁盘D上以学号为名字建立一文件夹。

2)要求在本地磁盘D创建一个学生-课程数据库(名称为student),只有

一个数据文件和日志文件,文件名称分别为stu和stu_log,物理名称

为stu_data.mdf 和stu_log.ldf,初始大小都为3MB,增长方式分别为

10%和1MB,数据文件最大为500MB,日志文件大小不受限制。

3)创建一个SPJ数据库,该数据库的主数据文件逻辑名称为SPJ_data,物

理文件为SPJ.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为

10%;数据库的日志文件逻辑名称为SPJ_log,物理文件名为SPJ.ldf,

初始大小为1MB,最大尺寸为50MB,增长速度为1MB。

2、在student数据库中建立课本第三章中的三个表student、course、sc,输入 3、在SPJ数据库中建立课本第二章习题5中的四个表,并输入数据。

七、出现问题及解决办法

如某些操作无法执行,如何解决?

create database student

on (NAME='stu',

filename='D:\201400810009\stu_data.mdf',

SIZE=5MB,

maxsize=500MB,

filegrowth=10%)

LOG ON

(name='stu_log',

filename='D:\201400810009\stu_log.ldf',

size=5MB,

filegrowth=1MB)

CREATE TABLE Student

(Sno CHAR(9)PRIMARY KEY,

Sname CHAR(20)UNIQUE,

Ssex char(2), Sage SMALLINT, Sdept CHAR(20)

);

create table Course

(Cno char(4)primary key,

Cname char(40),

Cpno char(4),

Ccredit smallint,

foreign key (Cpno)REFERENCES Course(Cno)

);

create table SC

(Sno char(9),

Cno char(4),

Grade smallint,

primary key (Sno,Cno),

foreign key (Sno)REFERENCES Student(Sno), foreign key

(Cno)references Course(Cno)

);

--向student表插入信息

insert

into student

values('200515001','赵菁菁','女',23,'CS');

insert

into student

values('201515002','李勇','男',20,'CS');

insert

into student

values('200515003','张力','男',19,'CS');

insert

into student

values('200515004','张衡','男',18,'IS'); insert

into student

values('200515005','张向东','男',20,'IS');

insert

into student

values('200515006','张向丽','女',20,'IS');

insert

into student

values('200515007','王芳','女',20,'CS');

insert

into student

values('200515008','王民生','男',25,'MA'); insert

into student

values('200515009','王小民','女',18,'MA'); insert

into student

values('200515010','李晨','女',22,'MA'); insert

into student

values('200515011','张毅','男',20,'WM'); insert

into student

values('200515012','杨磊','女',20,'EN'); insert

into student

values('200515013','李晨1','女',19,'MA'); insert

into student

values('200515014','张丰毅','男',22,'CS'); insert

into student

values('200515015','李蕾','女',21,'EN'); insert

into student

values('200515016','刘社','男',21,'CM'); insert

into student

values('200515017','刘星耀','男',18,'CM'); insert into student

values('200515018','李贵','男',19,'EN'); insert

into student

values('200515019','林自许','男',20,'WM'); insert

into student

values('200515020','马翔','男',21,''); insert

into student

values('200515021','刘峰','男',25,'CS'); insert

into student

values('200515022','刘站强','男',22,'');

insert

into student

values('200515023','李婷婷','女',18,''); insert

into student

values('200515024','严丽','女',20,''); insert

into student

values('200515025','朱小鸥','女',30,'WM');

--向course插入信息

insert

into Course

values('1','数据库','5',4);

insert

into Course

values('2','数学','',2);

insert

into Course

values('3','信息系统','1',4);

insert

into Course

values('4','操作系统','6',3);