资源描述
第3章 SQL Server数据库管理
课题: SQL Server数据库管理
目的要求:
掌握SQL Server2005数据库的SQL命令创建方法
掌握SQL Server2005数据库的SQL命令管理方法
掌握SQL Server2005数据库的基本组成
重点难点:
用SQL命令建立SQL Server2005数据库
课外作业布置:
复习本节课内容,完成本章习题
第5教案 数据库管理
复习提问
1.说出SQL Server2005的6个系统数据库。
2. SQL Server2005有哪几个常见版本?对于Windows XP操作系统,只能安装哪种版本?
3.用一句话说明关系(表)规范化处理的过程。
4.系统表sysdatabases存贮了什么信息?
5.企业管理器有什么功能?
6.说出SQL Server2005 中的4种数据类型。
7.说明数据库与表的关系。
3.1 SQL Server数据库简介
一、SQL Server数据库
SQL Server 2005数据库由包含数据的表集合和其它对象组成,目的是为了执行与数据有关的操作提供支持。
SQL Server 2005能够支持多个数据库。每个数据库可以存储来自其它数据库的相关或不相关数据。
在创建数据库之前,需要理解数据库的各组成部分及其设计方法,以确保实现数据库建成之后,数据库能够很好地运行。
二、设计SQL Server数据库
设计出较好的数据库,需要考虑以下几种情况:
n 数据库的应用功能,这些功能会影响设计。
n 数据库规范化规则,防止数据库设计中出现错误。
n 对数据完整性的保护。
n 数据库和用户权限的安全要求。
三、数据库中的对象
n 表(Table)
n 用户(User)
n 视图(View)
n 默认值(Default)
n 用户自定义的数据类型
n 约束规则(Constraints)
n 存储过程(Store Procedure)
n 角色(Role)
四、文件和文件组
1、逻辑结构和物理结构
数据库的逻辑结构从软件中看到的数据库信息,指的是数据库是由哪些性质的信息(字段、表、相互关系)所组成,SQL Server的数据库不仅仅只是数据的存储,所有与数据处理操作相关的信息都存储在数据库中。
数据库的物理存储结构则是讨论数据库文件是如何在磁盘上存储的,数据库在磁盘上是以文件为单位存储的,由数据库文件和事务日志文件组成,一个数据库至少应该包含一个数据库文件和一个事务日志文件。
主数据库文件(Primary Database File):.mdf,为主的数据库文件,存贮数据库的启动信息或全部数据,有且只有一个。
辅助数据库文件(Secondary Database File):.ndf,除主库文件外的其它文件,保存主库中没有存贮的数据,可以有多个。
事务日志文件:.ldf,记录数据库更新情况。例如使用INSERT、UPDATE、DELETE 等对数据库进行更改的操作,都会记录在此文件中。事务日志中再写入数据库,其具体操作是系统先将更改操作写入事务日志中,再更改存储在计算机缓存中的数据。
2、数据库文件组
为了便于分配和管理,SQL Server允许将多个文件归纳为同一组,并赋予此组一个名称,这就是文件组。
与数据库文件一样,文件组也分为主文件组(Primary File Group)和次文件组(Secondary File Group)。
3.2 创建数据库
若要创建数据库,必须先确定数据库的名称、所有者(创建数据库的用户)、大小,以及用于存储该数据库的文件和文件组。要考虑以下问题:
权限问题:在一般的情况下,只有系统管理员(sa)可以创建数据库,但是系统管理员可以授权其他用户创建数据库;
所有者:创建数据库的用户将成为该数据库的所有者(DBO);
大小变化规则:数据库的大小可以被扩展或者收缩;
名称:数据库名称必须遵循标识符规则(128个字符)。
一、使用Transact-SQL创建数据库
基本语法如下:
CREATE DATABASE <database_name>
[ON [PRIMARY] [<filespec> [,…n] [,<filegroupspec> [,…n]] ]
[LOG ON {<filespec> [,…n]}]
<filespec>::=([NAME=logical_file_name,]
FILENAME=‘os_file_name’
[,SIZE=size]
[,MAXSIZE={max_size|UNLIMITED}]
[,FILEGROWTH=growth_increment] ) [,…n]
参数说明
n database_name:数据库的名称,最长128字符。
n PRIMARY:是一个关键字,指定主文件组中的文件。若缺少本项,默认第1个文件为主文件。
n LOG ON:指明事务日志文件的明确定义,文件名同主文件名,容量是主文件的1/4。
n NAME:指定数据库的逻辑名称,这是在SQL Server系统中使用的名称,是数据库在SQL Server中的标识符。
n FILENAME:指定数据库所在文件的操作系统文件名称和路径,该操作系统文件名和NAME的逻辑名称一一对应。
n SIZE:指定数据库的初始容量大小,最小为512K,默认为1M,只能为整数,可以是KB、MB(默认)、GB、TB。
n MAXSIZE:指定操作系统文件可以增长到的最大容量,默认为直到磁盘满。
n 建库实例
【例3-1】建立一个数据库文件,其逻辑文件名为“STUDENT”,物理文件名为“student_data.MDF”,初始容量为1MB,最大容量为10MB;建立逻辑文件名称为“student_log.LDF”,初始容量为1MB,最大容量为5MB,要求文件存贮在D:\mydb中。
在查询窗口中输入SQL语句:
create database student
on
( name='student_data',
filename='d:\mydb\student_data.mdf',
size=1MB,
maxsize=10MB
)
log on
( name='student_log',
filename='d:\mydb\student_log.Ldf',
size=1MB,
maxsize=5MB
)
3.3 修改数据库
1、修改用户数据库的完整语法:
ALTER DATABASE <数据库名>
{ ADD FILE <文件标识 > [ ,…n ] [ TO FILEGROUP <组标识 >]
| ADD LOG FILE < 文件标识 > [ ,…n ]
| remove file 逻辑文件名 [with delete]
| modify file < 文件标识 >
| modify name=新数据库文件名
}
2、参数说明
n database:要更改的数据库的名称。
n ADD FILE:指定要添加文件。
n ADD LOG FILE:指定要将日志文件添加到指定的数据库。
n remove file 逻辑文件名 [with delete]:移走(删除)文件
n modify file < filespec > :修改库文件
n modify name:给数据库文件改名
3、使用ALTER DATABASE修改数据库
【例3-2】对于例3-1中建立的数据库,将数据库文件的最大容量修改为20 MB;数据库文件修改为每次以10 MB的空间增长;日志文件修改为每次以10%的空间增长。
alter database student
modify file
(name='student_data',
maxsize=20MB,
filegrowth=10MB )
alter database student --此行不能省略
modify file --此行也不能省略
( name='student_log',
maxsize=10,
filegrowth=10%)
3.4 删除数据库
1、修改用户数据库的完整语法
DROP DATABASE <database_name> [ ,…n ]
2、参数说明
database_name:指定要删除的数据库名称。
3、查看数据库的方法:在查询分析中执行系统存储过程sp_helpdb
【例3-3】删除上面建立的student数据库。
DROP DATABASE student
3.5 查看与设置数据库参数
1、使用sp_helpdb语句的完整语法
sp_helpdb [ [ @dbname= ] 'name' ]
2、参数说明
[@dbname=] ‘name’:数据库名称。如果没有指定name,则sp_helpdb报告所有数据库的属性。
【例3-4】使用sp_helpdb语句查看pubs数据库。
命令: exec sp_helpdb pubs
或 sp_helpdb pubs
或 sp_helpdb ‘pubs’
或 exec sp_helpdb ‘pubs’
第6教案实训3:用SQL命令创建数据库
实训3:用SQL命令创建数据库
(一)、实训目的
掌握利用查询分析器通过SQL命令建立数据库的方法。
掌握用企业管理器查询数据库的方法。
掌握通过SQL命令管理数据库的方法。
(二)、实训内容
1、在企业管理器中注册SQL Server 。
2、打开查询分析器,观察分析查询分析器中的主要工具和窗口组成。
3、创建数据库
基本语法格式:
CREATE DATABASE <数据库名>
[ON [PRIMARY] [<文件标识> [,…n] [,<文件组标识> [,…n]] ]
[LOG ON {<日志文件标识> [,…n]}]
<文件标识>::=([NAME=数据库逻辑名,]
FILENAME=‘磁盘文件名’
[,SIZE=初始容量]
[,MAXSIZE={最大容量|UNLIMITED}]
[,FILEGROWTH=增长速度] ) [,…n]
建立一个库company,主文件逻辑名为company_data,磁盘文件为company.mdf,初始大小为20M,最大不限,增加速度15%,日志文件逻辑名为company_log,物理文件为company.ldf,初始大小为2M,最大10M,增加速度为1M。
命令:
create database company
on primary
(name=company_data,
Filename=‘d:\mydb\company.mdf’,
size=20,
maxsize=unlimited,
filegrowth=15%)
log on
(name=company_log,
filename=‘d:\mydb\company.ldf’,
Size=2MB,
filegrowth=1,
Maxsize=10)
4、修改数据库
例:将数据库company改名为comp
alter database company
modify name=comp
例:向comp数据库中增加一个库文件corporation,初始大小为5M,增长率为8%,最大20M,存贮在d:\mydb,文件名为corporation.ndf。
alter database comp
add file
(name=corpration,
filename=‘d:\mydb\corporation.ndf’,
Size=5MB,maxsize=20MB,filegrowth=8%)
5、管理数据库
(1)用企业管理器对刚刚建立的数据库进行修改;
(2)用企业管理器对数据库进行查看、删除操作;
(3)用查询分析器对数据库进行查看、修改和删除操作。
展开阅读全文