文章目录
- 2.2.1数据库的结构
- 2.2.2系统数据库
- 2.2.3创建数据库
- 2.2.4查看数据库信息
- 2.2.5修改数据库
- 2.2.6删除数据库
2.2.1数据库的结构
数据库存储方式:文件和文件组
文件类型:
- 主数据库文件
- 次要数据库文件
- 事务日志文件
默认存储路径:“X"\program Files\Microsoft SQL Serve\MSSQL.1\MSSQL\Data"
主数据库文件(PrimaryDatabase File):
数据库的关键文件,每个数据库都有且只有一个主数据文件。
-
作用:
- 存储数据库的启动信息;
- 存储部分或全部数据;
- 包含指向数据库中其他文件的指针。
-
推荐的文件扩展名:mdf
次要数据库文件(Secondary Database File,也称为辅助文件):可以没有,也可以有多个次要数据文件。
- 作用:存储主数据文件中未存储的剩余数据和数据库对象。
- 推荐的文件扩展名:.ndf
事务日志文件(Log Data File):每个数据库必须有一个或多个日志文件。
- 作用:存储用来恢复数据库所需的事务日志信息。
- 推荐的文件扩展名:.ldf
文件组
- 定义:命名的文件集合。
- 作用:方便用户进行数据的管理、分配/放置。
- 类型:
- ※主文件组(有且只有一个)包含主数据文件,以及没有分配给其他文件组的次要数据文件。
- 用户定义文件组(可以没有,也可以有多个):只能包含次要数据文件。
- 使用规则:
(1)一个文件和文件组只能被一个数据库使用;
(2)一个文件只能属于一个文件组;
(3)日志文件不能属于文件组。
使用文件组管理分配数据的好处:
- 使数据库结构清晰
- 方便用户管理
- 提升效率
数据库对象
- 类型:
- 表(Table)
- 视图(View)
- 存储过程(Stored Procedures)
- 触发器(Triggers)
- 用户定义数据类型(User-defined Data Types)
- 用户自定义函数(User-defined Functions)
- 索引(Indexes)
- 约束
- 表示方法:
服务器名.数据库名.所有者名.对象名
serve.database.owner.object
2.2.2系统数据库
SQL Server 2005 的系统数据库分别是:
-
master数据库
-
model数据库
-
msdb数据库
-
tempdb数据库
-
master数据库
- 作用:记录SQL Server的所有系统级信息,如果master数据库不可用,SQL Server无法启动。
-
model数据库
- 作用:所有数据库的模板。可以向model数据库中增加其他数据库对象,这些对象都能被以后创建的数据库所继承。
-
msdb数据库
- 作用:由SQL Server Agent(SQL Server代理)来计划警报和作业。
-
tempdb数据库
- 作用:是连接到SQL Server 实例的 所有用户都可用的全局资源,它保存了所有临时表和临时存储过程。
2.2.3创建数据库
方法:
- 使用SQL Server Management Studio
- 使用SQL语句
创建“完整”数据库的操作顺序:
1.给数据库命名并设定数据库的所有者。
2.定义文件组。
3.为文件组分配数据文件
4.创建表并设置表的相关选项、约束规则
5.将表放入到文件组中
6.创建其他数据库对象
一、使用SQL Server Management Studio
1. 步骤
(1)给数据库命名
(2)定义文件组
- “文件组”选项卡 → “添加”
- “常规”选项卡 → “文件组” → “新文件组”
(3)为文件组分配数据文件
- 数据库文件的配置:
- 文件名(逻辑名称)
- 文件类型
- 文件组
- 初始大小
- 自动增长
- 路径
2.“选项”选项卡的设置
- 恢复模式:
- 简单
- 完整
- 大容量日志
- 兼容级别:SQL Server7.0、2000、2005
- 自动关闭:指定在上一个用户退出后,数据库是否完全关闭并释放资源。选择后,数据库文件可以像普通文件一样处理(如复制)。
- 限制访问:指定那些用户可以访问该数据库。可能拥有的值有:
- Multiple:数据库的正常状态,允许多个用户同时访问该数据库。
- Single:用于维护操作,一次只允许一个用户访问该数据库。
- Restricted:只有db_owner、dbcreate或sys admin角色的成员才能使用该数据库。
3.查看数据库信息
二、使用SQL语句
1.SQL简介:SQL是1974年由Boyce和Chamberlin提出的,是关系数据库中的标准语言。
-
SQL特点:
- 功能全面,可以完成数据库中的全部工作。
- 用户只需提出“做什么”,而不必指明怎么做。SQL语言将用户的要求提交给系统,自动完成全部工作。
- SQL语言非常简洁、简单,很接近英语自然语言。
- SQL语言可以直接以命令方式交互使用,也可以嵌入到程序设计语言中以程序方式使用。
- 尽管在不同环境下SQL的使用方式不同,但SQL语言的语法基本是一致的。
-
SQL主要功能:
2.创建数据库
- 语法:
create database database_name
[on
[[primary]<filespec>[,...n]
[,<filegroup>[,...n]]]
[log on {<filespec>[,...n]}]
[collate<collation_name>]
[for attach]
<filespec>::=
(name='逻辑文件名',
filename = '存放数据库的物理路径和文件名'
[,size = 数据文件的初始大小]
[,maxsize = 指定文件的最大大小]
[,filegrowth = 指出文件每次的增量])
<filegroup>::=
{
filegroup filegroup_name[default]
<filespec>[,...n]
}
对应的结构与代码的一一对应:
2.2.4查看数据库信息
1
1
1
1
1.sp_helpdb[数据库名]
- 功能:
- 不指定数据库参数,将显示服务器中所有数据库的信息。
- 指定具体数据库参数,将显示指定数据库的信息。
2.sp_databases
- 功能:
- 显示服务器中所有可以使用的数据库的信息。
3.sp_helpfile[逻辑文件名]
- 功能:查看当前数据库中文件的信息
- 不指定文件名参数,将显示当前数据库中所有文件的信息。
- 指定具体文件名参数,将显示数据库中指定文件的信息。
4.sp_helpfilegroup[文件组名]
- 功能:
- 不指定文件组名参数,将显示数据库中所有文件组的信息。
- 指定具体文件组名参数,将显示数据库中指定文件组的信息。
2.2.5修改数据库
方法:
- 使用SQL Server Management Studio
- 使用SQL语句
修改内容:
- 数据库组成
- 数据库选项
※使用SQL语句
- (1)修改数据库组成
语法:
alter database database_name
{add file <filespec>[,...n]
[to filefoup filegroup_name]
| add log file <filespec>[,...n]
| remove file logical_file_name
| add filegroup filegroup_name
| remove filegroup filegroup_name
| modify file <filespec>[,...n]
| modify name = new_dbname
- (2)修改数据库选项
方法一:
alter database database_name
set database_options[value]
‘value’:选项值,可以为true、false、on、off。
2.2.6删除数据库
方法:
- 使用SQL Server Management Studio
- 使用SQL语句
语法:drop database database_name[,...n]