数据库的创建与使用-文档资料
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据的存储方式
数据库
即,数据库是这样的数 据结构:一个数据库是 由若干文件组成,一个 文件由若干盘区组成, 一个盘区有8个页面。
数据(文件)
.mdf 或 .ndf
日志(文件)
.ldf
表,索引
扩展盘区 ( 8 个连续页, 每页 8 KB) 数据页 (8 KB) 行的最大容量 = 8060 字节
SQL Server的数据库结构小结
如:可以将数据文件data1.mdf、data2.ndf和 data3.ndf分别创建在三个盘上,这三个文件组成 文件组fgroup1,在创建表的时候,就可以指定 一个表创建在文件组fgroup1上。这样该表的数 据就可以分布在三个盘上,在对该表执行查询时, 可以并行操作,大大提高了查询效率。
5.1.2 数据库存储结构
--逻辑对象与物理存储的关系
• 数据库中的物理存储单位是页面和盘区,可用于估 算数据所占用的空间。 • 页面:是数据库中使用的最小数据单元,占8K字节, 用于存储数据,如数据表的一行或若干行,一行不 允许跨页面。 • 盘区:是SQL Server创建数据逻辑对象时使用的分 配单位,有8个页面64K,若新建一个数据库中创建 了一个表、两个索引,在表中有一条记录,则总共 占用3X64K=192K的空间。
• 逻辑存储结构(数据库对象)指的是数据库 是由哪些性质的信息所组成,SQL Server的 数据库不仅仅只是数据的存储,所有与数据 处理操作相关的信息都存储在数据库中。数 据库对象如表,索引,视图,触发器,存储 过程,约束,用户,图表等. • 物理存储结构(数据库文件)则是讨论数据 库文件是如何在磁盘上存储的,数据库在磁 盘上是以文件为单位存储的,由数据库文件 和事务日志文件组成,一个数据库至少应该 包含一个数据库文件和一个事务日志文件。
用户
存储过程 触发器
该数据库中所有能使用的用户信息
存放于服务器的预先编译好的一组T-SQL语句 特殊的存储过程,当数据改变时,该存储过程被自动执行
2.物理数据库(数据库文件)
• 主数据文件(Primary Database File):扩展名 为.mdf,是数据库的起点,并指向其他文件,每 个数据库只有一个主文件。 • 次文件(Secondary Database File): .ndf,是主文 件的辅助文件,可以在不同的磁盘上创建数据库 文件,以提高处理效率, 当主文件的大小超过操作 系统的限制时, 必须使用次文件。 • 事务日志文件(Log):.ldf,用于存储数据库的更 新情况等事务日志信息。如insert, delete, update 操作都会记录在案。 通常, 这三个文件都在SQL的Data文件夹中
1 应用程序发送更改请求 3 将更改记录在磁盘上的事务 日志中 磁盘
缓存
2 定位数据页,将其读入缓存中 并进行更改
磁盘
4
检查点进程将已提交 的事务写入数据库
3.数据库文件组
• 为了便于分配和管理,SQL Server允许将多个数据 文件归为一组, 并赋予一个名称,即文件组. 文件组有两种: • 主文件组: 包含主数据文件和任何其他不属于另 一个文件组的文件,系统表都包含在主文件组中. • 用户定义文件组: 在语句中使用关键字filegroup指 定文件组
2. Model数据库是所有用户数据库和Tempdb数据库的 模板数据库,它含有Master数据库所有系统表的子集, 这些系统表是每个用户定义数据库需要的。
3. Msdb数据库是代理服务数据库,为其警报、任 务调度和记录操作员的操作提供存储空间。 4. Tempdb是一个临时数据库,它为所有的临时表、 临时存储过程及其它临时操作提供存储空间。每 次启动SQL Server时都会清空。
存储结构示意图
• 数据库对象:表,索引,视图,触发器, 存储过程,约束,用户,图表
日志文件.ldf 主文件 .mdf C 主文件组 D 多个次文件.ndf 1 D 次文件组 E 2
一个文件只能属于一 个文件组;一个文件 组也只能被一个数据 库使用; 日志文件不 属于任何文件组.
• 文件组的好处:可以改善数据库的查询性能.
Pubs和Northwind数wk.baidu.com库是示例数据库,它们可以
作为SQL Server的学习工具。
Sql server数据表的分类
sys… sys… sysusers sysobjects
系统表 在SQL Server 中,每 个数据库中最多可以 创建200万个表,用户 创建的数据库表中, 最多可以定义1024列 (字段)。
5.1.3 Sql server系统数据库与系统表
Sql server数据库的类型
系统数据库
master model tempdb msdb distribution
pubs
Northwind
User1
用户数据库
1.SQL Server 系统数据库简 介
SQL Server主要有4个系统数据库
1. Master数据库是SQL Server系统最重要的数据库, 它记录了SQL Server系统的所有系统信息。这些系统 信息包括所有的登录信息、系统设置信息、SQL Server的初始化信息和其它系统数据库及用户数据库 的相关信息。
第5章 数据库的创建与使用
5.1 SQL Server数据库的结构
1. 逻辑数据库(数据库对象)
SQL Server数据库是存储数据的容器,是一个存放数据的表和支持这 些数据的存储、检索、安全性和完整性的逻辑成分所组成的集合。
数据库对象 说明 表 数据类型 视图 索引 约束 由行和列构成的集合,用来存储数据 定义列或变量的数据类型,SQL Server提供了系统数据类型, 并允许用户自定义数据类型 由表或其他视图导出的虚拟表 为快速检索提供支持且可以保证数据唯一性的辅助数据结构 用于为表中的列定义完整性的规则
SQL Server事务日志
• SQL Server事务日志存储数据库的更新情况 等事务日志信息 ,当数据库损坏时,管理员 使用事务日志恢复数据库。 • 每一个数据库至少必须拥有一个事务日志文 件,而且允许拥有多个日志文件。 • SQL Server事务日志采用提前写入的方式 。
事务日志的工作方式