当前位置:文档之家› 数据库实验四(含答案)

数据库实验四(含答案)

实验四使用SQL语句创建和删除数据库、表
一. 实验目的:
1、了解SQL Server 2005数据库的逻辑结构和物理结构。

2、掌握使用SQL 语句创建和删除数据库。

3、学会使用T-SQL语句创建表。

二. 实验准备
1.明确能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。

2.了解用SQL语句创建和删除数据库的基本语法。

3.是用查询分析器,完成用SQL语句创建和删除基本表。

三. 实验要求
1、熟练使用查询分析器进行数据库的创建和删除操作。

2、用查询分析器,完成用SQL语句创建和删除基本表。

3、完成实验报告。

四. 实验内容
一、数据库
1.以下是创建数据库userdb1的SQL语句,
create database userdb1
on
(name=userdb4_data,--数据文件的逻辑名称,注意不能与日志逻辑同名
filename='g:\xygl\userdb4.mdf' ,--物理名称,注意路径必须存在
size=5,--数据初始长度为5M
maxsize=10,--最大长度为10M
filegrowth=1)--数据文件每次增长1M
log on
( name=userdb4_log,
filename='g:\xygl\userdb4.ldf ' ,
size=2 ,
maxsize=5 ,
filegrowth=1)
运行上诉语句建立数据库userdb1
2.根据步骤1的sql语句,写出创建实验二中“学生信息”数据库的sql语句,并建立“学生信息”数据库.(.mdf的名字可以修改)
3.数据库的修改(alter database 数据库名add file),将一个大小为10MB 的数据文件mrkj添加到userdb1的数据库中,该数据文件的大小为10MB,最大的文件大小为100MB,增长速度为2MB,物理地址与原有的mdf,ldf文件放在一起。

alter database 数据库名 add file()
注括号内格式同下:
( name=userdb4_log,
filename='g:\xygl\userdb4.ldf ' ,
size=2 ,
maxsize=5 ,
filegrowth=1)
4.修改文件alter database数据库名modify file()
注括号内表示修改后的属性信息,格式同下:
( name=userdb4_log,
filename='g:\xygl\userdb4.ldf ' ,
size=2 ,
maxsize=5 ,
filegrowth=1)
5.删除文件mrkj(alter database数据库名remove file+文件名)
6.用SQL语句删除步骤一建立的数据库userdb1。

二、表:
1.在步骤二建立的数据库“学生信息”中,用SQL语言添加实验二中的表,包括约束的创建。

默认约束:default ‘男’
2.添加实验二中表的具体信息(注:实验二内容四种的表格的具体内容可不全写,添加其中的几行即可).
3.用sql语言完成实验二中关于表的相关操作。

附:用SQL语句创建表的某个例子,请参照完成
在SQL Server 2005 的查询分析器中,用sql语句创建student表。

use userdb1 表示在userdb1 %数据库中创建student的表%
CREATE TABLE student
(
sno char(8) PRIMARY KEY, --学号(主键)
sname char (8) NOT NULL, --姓名
sex char(2), --性别
native char(20), --籍贯
birthday smalldatetime, --出生日期
dno char(6), --所在院系
spno char(8), --专业代码(外键)
classno char(4), --班级号
entime smalldatetime, --入校时间
home varchar (40), --家庭住址
tel varchar (40) --联系电话
)
附其他操作参考:
1.单击“新建查询”打开查询设计器窗口,在查询设计器窗口中使用Transact-SQL语句CREATE DATABASE创建studb 数据库。

然后通过系统存储过程sp_helpdb查看系统中的数据库信息。

CREATE DATABASE studb
ON
( NAME=studb_dat,
FILENAME='C:\DataBase\studb.mdf')
EXEC sp_helpdb
2.在查询设计器中使用Transact-SQL语句ALTER DATABASE修改studb数据库的设置,指定数据文件大小为5MB,最大文件大小为20MB,自动递增大小为1MB。

ALTER DATABASE studb
MODIFY FILE (NAME=studb_data, SIZE = 5MB, MAXSIZE = 20MB, FILEGROWTH = 1MB)
3.在查询设计器中为studb数据库增加一个日志文件,命名为studb_Log2,大小为5MB,最大文件大小为10MB。

ALTER DATABASE studb
ADD LOG FILE(NAME = studb_log2, FILENAME=studb_log2.ldf, SIZE = 5MB, MAXSIZE = 10MB)
4.使用Transact-SQL语句DROP DATABASE删除student_db数据库。

DROP DATABASE student_db
5.使用Transact-SQL语句CREATE TABLE在studentsdb
数据库中创建grade表。

CREATE TABLE grade (
[学号] [char] (4) NULL,
[课程编号] [char] (4) NULL ,
[分数] [char] (5) NULL
) ON [PRIMARY]
6.使用Transact-SQL语句INSERT INTO...V ALUES向studentsdb数据库的grade表插入数据:学号为0004,课程编号为0001,分数为80。

INSERT grade V ALUES ('0004','0001', '80')
7.使用Transact-SQL语句ALTER TABLE修改curriculum 表的“课程编号”列,使之为非空。

ALTER TABLE curriculum
ALTER COLUMN课程编号NOT NULL
8.使用Transact-SQL语句ALTER TABLE修改grade表
的“分数”列,使其数据类型为real。

ALTER TABLE grade
ALTER COLUMN分数real
9.使用Transact-SQL语句ALTER TABLE修改student_info表的“姓名”列,使其列名为“学生姓名”,数据类型为vachar(10),非空。

alter table student_info add 学生姓名varchar(10) NOT NULL;
update student_info set 学生姓名=姓名;
alter table student_info drop column 姓名;
10.分别使用SQL Server管理平台和Transact-SQL语句DELETE删除studentsdb数据库的grade表中学号为0004的成绩记录。

DELETE grade WHERE 学号='0004'
11.使用Transact-SQL语句UPDATE修改studentsdb数
据库的grade表中学号为0003、课程编号为0005、分数为90的成绩记录。

UPDATE grade SET 分数= 90
WHERE 学号='0003' and 课程编号='0005'
12.使用Transact-SQL语句ALTER...ADD为studentsdb 数据库的grade表添加一个名为“备注”的数据列,其数据类型为V ARCHAR(20)。

ALTER TABLE grade ADD 备注V ARCHAR(20) NULL
13.分别使用SQL Server管理平台和Transact-SQL语句DROP TABLE删除studentsdb数据库中grade表。

DROP TABLE studentsdb.dbo.grade
14熟悉课堂上关于加说明和别名的用法。

相关主题