数据库技术实验

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验

课程:数据库技术

实验一建立数据库

实验名称:建立数据库

实验内容:在SQL Server环境下建立数据库和维护数据库。

实验目的:理解SQL Server数据库的存储结构,掌握SQL Server数据库的建立方法和维护方法。

实验方法:在SQL Server环境下用CREATE DATABASE命令建立数据库(注意:需要是系统管理员用户,或者被指定dbcreator固定服务器角色的成员,或者被显式地授予CREATE DATABASE权限,有关权限的内容请课文5.2节)

实验要求:

1、根据上体要求创建如下3个数据库:

a)创建数据库test1(使用一个数据文件和一个日志文件),要求指定一个数据文件、

一个事务日志文件,并把它们安排在不同的硬盘上。

b)创建数据库test2(使用多个数据文件和多个日志文件),要求使用3个数据文件和

两个事务日志文件,主数据文件是列表中的第一个文件或者用关键字PRIMARY指

定(文件扩展名:主数据文件使用.mdf,次数据文件使用.ndf,事务日志文件使

用.ldf)。

c)创建数据库test3(使用文件组),要求使用3个文件组(含主文件组,默认的文件

组),每个文件组包含两个数据文件,并且每个文件组要安排在不同的硬盘上。

2、修改建立的test1数据库,为之添加一个5MB大小的新数据文件。

3、修改建立的test2数据库,将其中的主数据文件增加5MB的存储空间。

4、删除建立的数据库test1。

相关命令

建立数据库的命令是CREATE DATABASE,其常用格式是(命令解释参见课文2.4.2节):CREATE DATABASE database_name

ON

[,,…]

[,FILEGROUP filegroup_name [, ,…]]

[LOG ON [,,…]]

修改数据库的命令是ALTER DATABASE,其常用格式是(命令解释参见SQL Server联机帮助):ALTER DATABASE database

{ADD FILE

| ADD LOG FILE

| MODIFY FILE

| MODIFY NAME = new_dbname

}

删除数据库的命令是DROP DATABASE,其格式是:

DROP DATABASE database_name

实验二 建立表和定义完整性约束

实验名称:建立模式、表和定义完整性约束

实验内容:在实验一建立的数据库的基础上,参照下图和下表建立表并定义完整性约束。

图1 订货数据库

供应商

实验目的:熟练掌握表的建立和数据完整性速描定义方法,实践DBMS提供的数据完整性功能,加深对数据完整性的理解。

实验方法:在实验一建立数据库的基础上用CREATE SCHEMA命令建立模式,用CREATE TABLE 命令建立表并定义数据完整性约束(注意:需要有CREATE SCHEMA和CREATE TABLE的权限,或者其他具有相应权限的身份,有关权限的内容请参见课文5.2节),用ALTER TABLE命令修改表结构。

实验要求:

1、用CREATE SCHEMA命令建立模式(自己命名模式名称)。

2、在定义的模式下参照图1和表1使用CREATE TABLE命令建立表并定义完整性约束。

3、使用ALTER TABLE命令按如下要求修改表结构:

a)为订购单增加一个新的字段“完成日期”,类型为日期时间型,默认是空值。

b)为订单明细表的“数量”字段重新定义约束:大于0、小于等于1000的正整数,

不允许为空值。

c)将供应商表的供应商名字段的类型修改为varchar(30)。

相关命令

CREATE SCHEMA命令的基本格式是(详细解释参见课文第3.3.1节):

CREATE SCHEMA schema_name

CREATE TABLE命令的基本格式是(详细解释参见课文第3.3.2节):

CREATE TABLE [schema_name].table_name

( { | }

[ ] [ ,...n ] )

其中列定义(column_definition)的基本格式是:

Column_name [NULL|NOT NULL]

[ CONSTRAINT constraint_name ]

{ { PRIMARY KEY | UNIQUE } | FOREIGN KEY ( column [ ,...n ] )

REFERENCES referenced_table_name [ ( ref_column [ ,...n ] ) ]

[ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]

[ ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]

| CHECK ( logical_expression )

}

如果需要还可以定义计算列(computed_column_definition)和表级约束(table_constraint)。ALTER TABLE命令的基本格式是(详细解释参见课文3.3.2节):

ALTER TABLE [schema_name.]table_name

{ ALTER COLUMN column_name [ NULL | NOT NULL ]

| ADD | |

| DROP [ CONSTRAINT ] constraint_name | COLUMN column_name }

实验三数据操作和完整性约束的作用

实验名称:数据操作笔完整性约束的作用

实验内容:在实验二的基础上完成数据的插入操作,然后进行部分修改和删除操作,在这些操作中体会数据完整性约束的作用。

相关文档
最新文档